8051单片机是我们最常见的一种单片机,我用8051已经很久了,也教过一段时间的单片机课程,在这里把自己的心得与大家分享一下。
一、硬件部分
1、一定要记得接晶振和复位电路。很多学生在Proteus上仿真成功后,焊板子的时候总是不记得把晶振和复位电路接上,这样板子是不会工作的。
2、一般没有特殊要求的话,选用11.0592MHZ的晶振。这样有利于得到没有误差的波特率。特别是当与PC机进行通信的话,选用这种晶振比较好。
3、复位电路的电容可以选择10uF或者22uF。如果是10uF的话,充电电阻R的值要高于4K欧姆,如果你的单片机工作速度很慢,可以选择8.2K欧姆。
4、每个大规模的数字IC旁边都要放一个0.1uF的电容(一端接电源,一端接地)来去除高频的干扰。
5、在板子上最好做一个ISP下载座子与单片机相连,这样调试改写程序的时候就不用把单片机拔来拔去的,调试的周期也可以缩短。
6、目前比较好用的51单片机有ATMEL公司的AT89S系列、SST公司的SST89系列,现在新出现一个公司的好51单片机,价格更便宜,听说性能也不错,就是STC系列单片机。
(5)程序下载方便。AVR单片机即可并行下载也可串行下载,无需昂贵的编程器。此外,还可以在线下载!也就是说可以直接在电路板上进行程序修改和烧录。
二、软件部分
1、能用C语言开发就用C语言,这样开发速度比较快,而且代码也比较容易维护。
2、将你常用的芯片的服务编成函数库,这样就能重复利用了,降低开发的周期。
3、善于利用KEIL C51的开发环境与PROTEUS仿真环境的联合调试,可以降低开发的成本。
4、平常多做设计练习,多学多看,尤其要多多地收集别人公开的驱动源程序,这样可以在设计的时候少写很多代码。
5、设计完成后,要结合电路图和代码写出设计说明书,这样可以很好地保存自己的设计思路,对以后维护设计和移植设计都是很有好处的。
6、多看看《软件工程》和《数据结构与算法》,提高自己代码的可重用能力。
7、好的程序员是热爱程序的程序员,把你编写的每个源代码文件都加上自己的名字和版权说明,在能保护自己的知识产权的同时,也是对自己的一种激励。
8、大一点的设计都要写出数据词典,这样在用变量、写功能的时候就不会晕头转向。
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > >
本系统采用51单片机和NRF2401实现无线数据传输通信和实时报警功能,设计一套低成本通用型的病房呼叫系统。整个系统采用无线通信的方式,降低了复杂的布线、安装检修和拆卸的难度,并可监控多个病房且便于扩充升级。本系统中,主机接收从机的呼叫命令,主机接收到从机呼叫命令后,主机发生声光报警,已经呼叫过的从机再次按下,当主机没有处理的时候,主机不再显示该从机的呼叫,主机处理完某一个病房呼叫信号后,可以通过按键取消相应的呼叫从机号,从机可以再次继续呼叫