bodu.com

电子/电气工程师博客

正文 更多文章

MCS51单片机设计技巧及注意事项

                               MCS51单片机设计技巧及注意事项
                                       wbymcs51.blog.bokee.net
                                                    王佰营
    在工程设计中,若选择了MCS51单片机,一下内容将对你有所提示:
1、单片机的电源选择和设计非常重要,那将决定你将来设计的麻烦程度。一般7805就能胜任,若使用开关电源最好还是用上模拟稳压块,以减少电源毛刺。小瓷片电容不能少,并且要就近放置。对干扰严重,且干扰脉冲比较大时,最好在5V电源上并接5.6V稳压管,以限制正负脉冲的幅度,保证单片机的安全。
2、时钟脉冲对单片机也格外重要,时钟频率不要选得太高,够用就行;否则,频率太高,不但系统稳定性差,抗干扰性能弱,而且外围电路设计难度也增加。 选质量好的晶振,PCB设计时尽可能靠近振荡脚,远离干扰源。
3、复位电路最好选现成的芯片,注意动作电压的选择;当在干扰严重的环境使用时,注意复位电路的滤波,防止误动作。
4、接口电路使用时,注意带负载能力、上拉电阻的使用和缓冲滤波的设计。
5、在设计PCB及整个系统时,将所有功能部分尽可能紧凑地放在一起。最忌讳将总线拉得过长。若有些信号线较长时,应考虑用串行方式,如I2C或SPI总线。
6、对于环境恶劣,干扰严重的场合,考虑将单片机系统与外界全部通过光耦隔离开,使两部分没有直接电的联系。
7、有些单片机内部自带看门狗电路,但从使用来看,并不尽人意;最好用外部看门狗芯片,如X5045就是不错的选择,既有看门狗和复位又有存储器。
8、在程序中尽可能减收喂狗次数。若不得已需要多处喂狗,最好加上喂狗条件,当条件满足时才能喂狗,否则不能喂;并且将喂狗条件的变换和喂狗条件的判断最好在空间上放得远一点。
9、中断处理程序要时刻监控主程序,同时,主程序也要时刻监控中断处理程序,并且,主程序自己也要监视自己的行踪,一旦发现异常就要及时处理。
10、 对于关键性的数据,程序一定要检查其合理行,对于异常数据要及时处理。这一点Windows程序值得我们借鉴。
11、对于程序中关键性的操作,在操作之前,一定要审批,以防贸然行事。
12、应当很清楚,单片机的计算能力非常弱,因此,在规划单片机控制系统时,应将数据处理功能交给PC或DSP等运算能力很强的处理器完成。
13、当单片机不得不处理数据运算时,程序员尽可能做绝大部分工作,想尽一切办法和技巧,让单片机的工作简单快捷一些。如,尽可能将乘数或者除数转换为2的N次方的形式,将乘除变为移位或者传送操作;再有,作除法运算时尽可能模拟手算,用很少的减法和移位操作很快完成运算。
14、慎重设置堆栈指针SP,防止堆栈溢出。当中断较多时,一定要控制子程序调用的嵌套深度。
15、使用ORG伪指令,将非常重要的程序段,单独指定在程序存储器的某个区域;并且在其前、中和后部设置软件陷阱,以拦截失控的PC指针。
16、在程序存储器的不用部分,也设置软件陷阱,并且要用若干NOP指令引导,以便顺利进入陷阱。
17、在中断频率很高时,可能会影响人机界面部分的正常工作,在该中断中最好不要用ACC,这可使界面更加友好。
18、合理中断与主程序的任务分配,尽可能减少中断处理程序的执行时间;各个中断及主程序间,最好采用寄存器组切换,减少寄存器共用;做好中断和主程序的协调和同步。

  关键词: MCS51  单片机  程序 设计 技巧 注意事项 可靠性

分享到:

上一篇:(转)Window 消息大全使用详解

下一篇:Windows常见数据类型及变量_常

评论 (0条) 发表评论

抢沙发,第一个发表评论
验证码