分享一些单片机的开发经验.doc
《分享一些单片机的开发经验.doc》由会员分享,可在线阅读,更多相关《分享一些单片机的开发经验.doc(8页珍藏版)》请在三一文库上搜索。
1、分享一些单片机的开发经验老生常谈的话题又来了,感觉自己看过好多五花八门的关于单片机的开发经验了,但是不一定那些就是适合你的,“书读百遍其义自见”,在追求学问的路上我们永无止境。单片机开发初探做AT89C5X(51,52,55等等)的时间最长,知道的可能多些,主要谈些实际应用中的经验与教训。书可以参看北航出的一本专门讲AT89系列的,还不错,建议大家购买。AT89C51我认为是一个非常标准的51单片机了,4个P口,1个串口,RAM只有标准的128Byte,Flash也只有4K,功能还算齐全,我就以它为基础,所以开发过程中遇到的问题吧。复位源的问题大家最常用的复位方式就是电阻加电容吧,AT89C5
2、1是高电平复位,这种方式不稳定,在产品调试时可以使用,因为在调试时我们一般使用了仿真器,而许多仿真器都会自己输出复位信号,而屏蔽掉目标板产生的复位信号,所以调试时复位信号是没有问题的,我们公司使用的是长沙菊阳的仿真器,用的是比较先进的技术,还算可以,仿真AT89系列的芯片一点问题没有,还很稳定的说。这里有一个非常重要的问题要说下,大家有时候会遇到这样的一个问题:自己的程序在仿真时运行一点问题也没有,但烧录后却不行了。结合我的经验有两种原因。一是时序可能变了,这个大家都知道,我不多说,还有一个原因就是复位信号的问题。具体情况如下:(1)复位电路有问题,不能正常产生复位信号。因为调试时仿真器可能给
3、你提供了复位信号,而脱离仿真器后就没有了;(2)看门狗的问题。有些51芯片带有看门狗复位功能,如At89c55WD,当程序开启了看门狗后,有时候程序的初始化内容太多了,往往会产生了复位信号,特别是用C语言编程功能时,有时候虽然你明明在程序开始时某个地方关闭了看门狗,但程序依然会复位,这是因为C语言执行效率比汇编低,看似几行代码,有时候要很长时间的,所以在使用开门狗时一定要注意这个问题。而这个问题在使用仿真器时容易被忽视,因为即使你的程序里看门狗复位了,但是仿真器(菊阳仿真器可以开启/屏蔽这个功能)往往会屏蔽了这个复位信号,所以程序仍然会正常运行的。当你把程序烧好后再运行时,你却为发现刚调试好的
4、程序却无法正常运行了,那是因为你的程序一直在不停复位了,注意用示波器观察RST脚可能看不到复位信号的,因为看门狗复位并不影响RST脚的电平。再一种情况就是芯片内部不带看门狗,但是电路中有CPU监控芯片的,它往往是可以提供复位信号的,而且是多种原因的复位信号,如果你发现上述情况,就可以用示波器查看RST脚看是否有电平变化。所以建议大家做51产品开发时尽量使用CPU监控芯片,向X5045就是非常好用的,因为它还带有Eprom功能,这在很多场合使用的到的,也可以用MAX708等专用复位芯片了,既稳定又方便。笔记归纳以下是结合自己的实际做的几点笔记归纳:1、与发光二极管串联的电阻(排阻)的计算和选取,
5、一般发光二极管的正常发光的电流是310mA,在发光二极管上产生的压降是1.7V(轨管) R=(5-1.7)/310 (k)2、单片机TTL电平高电平:+5V;低电平:0V。RS232串口电平高电平:12V ;低电平:+12V。 可以通过MAX232电平转换芯片,转换之间的电平。3、单片机上电IO口的寄存器为高电平,其余寄存器为低电平。4、三极管的开关作用:在B、E间接正向电压,E、C是导通的。5、蜂鸣器:1) 有源蜂鸣器直接接上额定电压就可以连续发声。2)无源蜂鸣器和电磁扬声器一样,需要接在音频输出电路中才能发声。3)有源蜂鸣器带振荡源,无源的不带。4)有源蜂鸣器的理想信号是直流电。5)无源蜂
6、鸣器的理想信号为方波信号。方波发声函数:void beep() fmq=0;delay 500us();fmq=1;delay 500us();6、计算单片机指令周期:指令周期(us) = 12 / 晶振频率(Mhz)选用12M的晶振,一个指令周期为1us7、89C51的芯片最高支持24M的晶振抛砖引玉向前辈学习上面只是笔者粗陋的小见解,笔者和大家都会感觉到不是很过瘾,它山之石可以攻玉,我们还需向更多的前辈学习,笔者经过整理前人的经验总结,看到了很多值得很大家一起分享的一些开发经验!目前介绍单片机应用的文章很多,但介绍单片机开发工具制作的文章却较少。由于单片机是一门实践性很强的课程,如果采用传
7、统的开发模式,则要购买价格昂贵的仿真器、编程器等开发工具来作实验。其实由于芯片功能的日益完善,我们可以利用芯片的在系统编程(ISP)功能制作出实用而低价的开发工具。下面就帮助DIY爱好者开发制作出适合自己的开发工具。1 当前常用开发模式目前,基本上有两种开发模式可供选择:用仿真器、用编程器。 用仿真器。优点:方便,可以设置断点,可以观察存储器及寄存器的内容。缺点:价格昂贵,不同类型的单片机要购买不同的仿真器;仿真器终究不是单片机,有时代码在仿真器上能通过,但在单片机中不能正常工作,反而增加了调试的难度。 用编程器。优点:价格相对便宜,通常一款编程器可编程多种器件。缺点:操作相当不便,每次要将芯
8、片在目标板与编程器之间转移,并且还要在编译操作界面与编程器操作界面之间切换,大部分时间在做简单的重复工作。2 新的开发模式介绍及芯片选择本文介绍的开发工具采用一种新的开发模式(类似于编程器开发模式)。由于利用了芯片的在系统编程功能,因此不需要移动芯片。在软件设计时设计 成:一旦代码文件被重新编过,即自动下载到芯片,并自动复位运行,是真正的“所编即所得”。目前很多单片机都支持在系统编程。8051系列单片机支持在系统编程的也很多,但大多数是支持通过PC机的串口对单片机进行编程。这样有四个不方便的地方:一是项目本身与PC机串行通信不方便;二是要增加1片MAX232电平转换芯片;三是有的芯片要按特定的
9、步骤进入下载模式,编程过程需要手工干预;四是有的芯片需要固件(定制的程序)的支持,如果不小心损坏了固件,则芯片的在系统编程功能也没有了。经过比较,Atmel公司生产的AT89S8252是一种比较理想的芯片,适合制作开发工具。此芯片有如下特点:与8051兼容; 内含8KB可擦写1000次的程序存储器,2KB可擦写超过100 000次的数据存储器及256字节8位宽内部RAM; 可通过SPI接口在系统串行编程,与8051兼容 串行编程时有自动擦写周期,在调试大程序时可以分段下载,节约时间; 低电压下载,无需12V编程电压。3 AT89S8252串行编程(1)AT89S8252串行编程模式当芯片的RS
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 分享 一些 单片机 开发 经验
链接地址:https://www.31doc.com/p-3392847.html