慕司板(IAP15F2K61S2)
weifengdq
嵌入式, 系统工程师, 公众号weifengdq
展开
-
慕司前言
我是大一下(2011年)才接触的单片机(简称MCU),当时偶然在图书馆看到一本清华大学出版社出版的什么MCS51xxxxx(记不大清了),2003年出版的,不知为何来了兴趣,借走看了好几个星期,全是汇编,而且是紫外线擦除的单片机(很古老了),仿真器要好几千元,当我看到这些时,瞬间觉得,这么贵的东西,好玩是好玩,但这价钱……后来想想,这么坑爹的书图书馆为什么不把它给清理掉,扔出去烧了也好!!!免得误原创 2014-07-31 21:53:55 · 1367 阅读 · 1 评论 -
例程4. SPI_LCD -- 慕司板IAP
使用本例程时,注意把P19的跳线帽放到下面,开启LCD背光。慕司板板载了2.2寸的LCD,硬件SPI接口,240*320分辨率, LCD驱动芯片为ILI9340.液晶屏后面扩展有SD卡和FLASH芯片接口,慕司板把引脚引到了单片机上,感兴趣的小伙伴可以自己写一下驱动。最基本的是SPI初始化、液晶初始化(由LCD厂家提供)和画点函数,有了画点函数,就能画线,画圆,画矩形,显示文字和图形了。为便于理解,原创 2016-04-03 13:44:25 · 1086 阅读 · 0 评论 -
例程5. ADC -- 慕司板IAP15
慕司板的摇杆和锂电池电压的检测都是通过AD实现的。IAP15有8路10位的AD,速度可达300k 次/s。板子上使用了5路: ADC的初始化和读取函数比较简单(adc.c):#include "adc.h"#include "delay.h"#include <intrins.h>/*----------------------------初始化ADC-------------------原创 2016-04-03 13:47:38 · 996 阅读 · 0 评论 -
例程6. MPU6050工程变量超出data区的解决办法 -- 慕司板IAP15
由于mpu6050.c中定义了大量的float类型的变量,超出了data区128字节,我们可以设置,让编译器把变量挪到xdata区,可以使用诸如:xdata float i;这样的形式,把变量挪到xdata区,当然,这个RAM区空间是比较大的,也有省劲的方法,操作如下: 完整工程参见资源汇总帖.原作于 2014年10月 CSDN发表于2016年4月 weifengdq原创 2016-04-03 13:50:59 · 1006 阅读 · 0 评论 -
例程7. HMC5883工程说明 -- 慕司板IAP15
和MPU6050类似,都是I2C协议,很多人把HMC5883的SDA、SCL引脚挂到MPU6050的XDA、XCL引脚上,可以直接输出数据融合后的信息,但这方面我还不大懂,就把它们分开使用了,占用了4个单片机的引脚。注意使用HMC5883L时,周围不要有强磁场的干扰。单独使用程序问题不大,读出的方向变化线性并不十分好,还需要进一步优化代码或者硬件。下载程序,可在液晶屏上看到direction,可以自原创 2016-04-03 13:54:24 · 1558 阅读 · 0 评论 -
例程8. PCA_PWM -- 慕司板IAP15
STC15系列部分单片机集成了3路可编程计数阵列(CCP/PCA)模块(CCP0、1、2引脚),可用于软件定时器、外部脉冲的捕获、高速脉冲输出以及脉宽调制(PWM)输出。慕司板的PWM应用于蜂鸣器、液晶屏亮度调节、直流电机调速,如下图(注意P19的跳线帽插到上面): 程序中需要把CCP的3个引脚切换到第三通道: 切换的代码在PCA_PWM_Init()函数中,直接用官方例程:// ACC原创 2016-04-03 14:01:42 · 1781 阅读 · 0 评论 -
例程9. NRF24L01工程说明 -- 慕司板IAP15
慕司板板载了一个NRF24L01,引脚定义如下: 与慕司板载的IAP15连接方式如下: 可以使用IAP15的硬件SPI(切换到3通道),但我们把硬件SPI给了2.2寸液晶屏,所以,这里我们使用模拟SPI来操作NRF24L01.CONFIG宏重复定义,原因是hmc5883和mpu6050的头文件的某些宏重复定义了, 改mpu6050.h(还有mpu6050.c对应的MPU6050_Init):原创 2016-04-03 14:07:12 · 968 阅读 · 0 评论 -
演示程序之打游戏 -- 慕司板IAP15
上位机和协议制定我的大学舍友(他的微博:http://weibo.com/lesshst?topnav=1&wvr=5&topsug=1)毕业前百忙之中使用Python花了一个下午完成的,先对他表示谢意。演示视频如下: http://v.youku.com/v_show/id_XODExMjY3ODY0.html下面介绍演示程序的使用步骤: ①把慕司板演示程序下载进“慕司板”中,右边的摇杆拨到上原创 2016-04-03 14:20:28 · 1161 阅读 · 0 评论 -
STC15官方库函数
访问宏晶官网:www.stcmcu.com,可以下载到库函数: STC提供了以下的库函数: 一同下载下来的还有一本使用参考:STC库函数使用参考.pdf。一共16页,看完就会用STC15的各种资源了,上手特别快!即便不使用库函数,参考价值也是相当大!完整工程参见资源汇总帖.原作于 2014年10月 CSDN发表于2016年4月 weifengdq原创 2016-04-03 14:25:34 · 10361 阅读 · 1 评论 -
增量式编码器专题
本章用增量式编码器应用为例,介绍单片机的应用方法。编码器简介编码器(encoder)把角位移或直线位移转换成电信号,前者称为码盘,后者称为码尺。按照工作原理编码器可分为增量式和绝对式两类:①增量式编码器: 将位移转换成周期性的电信号,再把这个电信号转变成计数脉冲,用脉冲的个数表示位移的大小。通常为A相、B相、Z相输出,A相、B相为相互延迟1/4周期的脉冲输出,根据延迟关系可以区别正反转,而且通过取A原创 2016-04-03 14:50:03 · 10908 阅读 · 5 评论 -
慕司名称的由来
慕司”,慕:仰慕;司:控制。当然,第一次接触这个名词是在“歌手少司命吧”。歌手少司命原名楼梦茜,2014年毕业于浙江大学,古风届很有才气又比较豪爽的女子,歌曲多自己作曲,自己演唱,他人作词。古意盎然又出格颇多,在现代社会能让人感受到浓浓的江湖气息。代表作有《烟笼长安》、《一剑轻安》、《临安记忆》、《江山如梦》、《风华燃尽指间砂》、《千山雪迹》等。她的粉丝自称“慕司”,我当然也算是一个,后来联想到“慕原创 2016-04-03 14:52:55 · 975 阅读 · 0 评论 -
几款自带编码器的直流电机
不少小伙伴做两轮自平衡车或者机器人或者各种比赛时,经常需要用到直流电机带编码器,有的自己可以做外置的编码器,但是否有自带编码器或码盘的直流电机?答案是肯定的,这里就推荐几款带编码器电机:Aslong瑞士maxon电机瑞士ESCAP电机 德国Faulhaber电机 日本Namiki电机 日本TSUKASA驰卡沙注意: 减速箱可以实现编码器脉冲倍频(倍数为减速比i),因为编码盘多装在下面原创 2016-04-03 14:59:38 · 31549 阅读 · 0 评论 -
例程3. 串口 -- 慕司板IAP15
仿真是不占用串口的,只是占用了P30和P31两个引脚而已,如果需要仿真的时候,仍然可以使用串口1,只需要在串口初始化代码中把串口1切换到P36和P37引脚即可: 用两根杜邦线分别连接P36(R)和P37(T)到PL2303的TXD和RXD上,把PL2303小板插到电脑的USB口。下载软件可以看到串口号,切换到下载软件的串口助手,设置波特率115200和串口号,其余默认. 打开串口,按下十个按键,即原创 2016-04-03 13:36:47 · 1047 阅读 · 0 评论 -
例程2. TIMER0--使用时基定时器改造按键代码 --慕司板IAP
STC15系列的定时器0有四种工作模式,与STC89C52不同的是,芯片手册建议我们用16位自动重装模式即可,确实,这是一种比较方便的方式. 各个寄存器的介绍可以参考STC15的芯片手册。初始化函数是可以自动适应各个时钟频率的,至于系统时钟FOSC,在config0.h中定义:void Timer_Init(unsigned int T_N100us) //百微秒{ unsigned原创 2016-04-03 13:32:33 · 1255 阅读 · 0 评论 -
硬件选讲之UART
件选讲之UART目录硬件选讲之UART.1TTL/CMOS与RS232电平...1MAX232升压原理...2UART:与RS232的前缘,与USB的今生...3百变的UART.5串口与USB:宿敌?...5虚拟串口...6虚拟机下外设接口的使用,如:串口、J-link、U盘...6Linux下串口的使用...7安卓下原创 2014-09-21 14:55:14 · 2097 阅读 · 0 评论 -
慕司板V1注意事项及问题汇总
Micro-USB很脆弱,焊的时候要用砂纸或cu原创 2014-08-16 15:27:58 · 1231 阅读 · 0 评论 -
CE8301与自激振荡
前两天发现慕司板的CE8301时不时的断电原创 2014-08-16 14:54:28 · 3362 阅读 · 0 评论 -
我的微博和店铺
我的新浪淘宝店铺原创 2014-10-14 21:28:50 · 982 阅读 · 0 评论 -
序 -- 慕司板IAP15
2013 年 8 月,在为第 11 届全国大学生电子设计竞赛准备的那个暑假, 我接触了当时宏晶(STC)最新推出的 IAP15F2K61S2(对应 STC15F2K60S2)可仿真单片机, 很快就被它的各 种新颖性能所吸引:3通道捕获/比较单元(CCP/PWM/PCA);双UART;1路SPI;8通道10位高速ADC 速度可达 30万次/秒;2K RAM、61K FLASH,可将用户程序原创 2016-04-03 11:23:00 · 1570 阅读 · 0 评论 -
IAP15L2K61S2仿真出错的原因和解决办法
按照官方的仿真教程走还是不容易出问题的, 但是如果你使用国内山寨货较多的PL2303作为USB转串口芯片时, 很容易出现”Connection to target system lost” 错误… 仿真的频率是在下载软件中选的: 使用CH340作为USB转串口,在最高的33.1776MHz及以下均不会出现问题,但使用PL2303时,或许由于国内PL2303山寨货太多,质量难以保证,5.5296M原创 2016-04-03 12:03:01 · 4187 阅读 · 0 评论 -
软件安装与仿真设置 -- 慕司板IAP15
KeilKeil有多个版本,如用于51单片机的C51版本、用于ARM的MDK版本等,这里我们当然选择Keil C51。虽然最新的Keil C51已经到c51v953(Keil 5)了,但其应用并不大方便,所以,我们依然选择好用的c51v900版本来安装:在网盘搜索引擎:http://so.baiduyun.me/ 或微盘资源:http://vdisk.weibo.com/中搜索c51v900.exe原创 2016-04-03 11:53:15 · 2678 阅读 · 0 评论 -
IAP15L2K61S2仿真只占引脚不占串口的说明
注意仿真是不占用串口的,只是占用了P30和P31两个引脚而已,如果需要仿真的时候,仍然可以使用串口1,只需要在串口初始化代码中把串口1切换到P36和P37引脚即可(代码可以宏晶官方的STC-ISP中复制): 为了更好的区别, 仿真时的USB转串口芯片我们可以使用CH340, 连接到P30 P31引脚, 然后代码设置把串口1挪到P36 P37上, 连接PL2303(需要先装好驱动)与PC通信. 上一原创 2016-04-03 12:27:00 · 3617 阅读 · 0 评论 -
IAP15L2K61S2新建工程与点灯 -- 慕司板IAP15
双击keil图标,打开keil C51, 菜单栏点击Project -> New μVision Project , 选择工程文件夹(我在桌面新建一个文件夹test),输入工程名:test,单击“保存”按钮, 在弹出的对话框中选择“STC MCU Database”,点击“OK”,没有这个界面的,可以参考前面的 软件安装与仿真设置 – 慕司板IAP15 一节来设置. 在弹出的对话框中选择“STC原创 2016-04-03 12:56:18 · 4512 阅读 · 0 评论 -
慕司板编程说明 -- 慕司板IAP15
千言万语说不尽,一切尽在代码中。不过,有些注意事项还是要说明一下的,至于寄存器之类的,虽然特别重要,我们只在LKB一节中引用一下手册,其余的寄存器在此省略,因为芯片手册中都有,必须学会看芯片手册,因为,碰到例程中没有的,或者暂时解决不了的怎么办?肯定还是要看芯片手册,所以,还不如一边学,一边熟悉芯片手册。说是例程,倒不如说是我学习的过程,程序几乎总是变的,以后面的例程(演示例程)为准,一边学习,一边原创 2016-04-03 13:07:51 · 1139 阅读 · 0 评论 -
例程1. LKB -- 慕司板IAP15
LKB是LED、KEY、Buzzer的首字母缩写,代表LED、按键、蜂鸣器的操作,都属于基本的IO(GPIO)操作。 慕司板(IAP15)板载一个用户LED(蓝色光)、10个独立按键、1个无源蜂鸣器,电路如下: 与单片机的对应关系如下图: 先说说GPIO(通用IO口): 贴片44个引脚的IAP15L2K61S2有42个GPIO口(P0、P1、P2、P3、P4、P5.4、P5.5),除了VCC原创 2016-04-03 13:24:27 · 2014 阅读 · 0 评论 -
慕司板资源汇总
2014年10月开源了慕司板, 之后自己因为忙于工作, 无心经营, 只手工焊接了大概20块, 以贴近成本价在淘宝销售, 售出了12块, 其余送给了好朋友, 以此纪念我的EE生涯, 那段时光是我20多年来最幸福的, 以后精力都放在了CS上了, 又是一段新的旅程.一些有意思的事: ①某次来个买家, 问我NRF24L01距离短怎么办, 我说好办啊, 你淘宝一下带PA的NRF24L01就好了, 然后他说原创 2016-04-04 14:27:06 · 1247 阅读 · 0 评论