专注电子技术学习与研究
当前位置:单片机教程网 >> MCU设计实例 >> 浏览文章

单片机C语言程序结构容易出问题的有一下几点

作者:佚名   来源:本站原创   点击数:  更新时间:2013年12月23日   【字体:

一,定义寄存器

定义全局变量unsigend num

在子程序里面改变num值,同时在中断里面也改变num值,最后得到意向不到的值,容易出错

若要这样改变  则定义变量前面加volatile  unsigend num

 

二,中断调用

主程序调用子程序,同时中断函数里面也调用该子程序,这样容易出错

建议:中断里面不要调用子程序,

若要调用子程序则,则该子程序为唯一被中断调用。

 

三,程序开头没加延时

开始的时候没加延时,很危险,上电电源电压波动较大,若一上电单片机就执行重要的命令的话,就容易出问题

特别是对内部eeprom的读写,读取数据出错,导致意向不到的后果。读写数据都需要比较稳定的电压。

 

亲,上电延时个10毫秒,等到电压稳定后,再执行命令,不会影响正常工作,又有保障不是更好

 

四,竞争与冒险

检测需加多次判断,以防干扰。

多次判断需要浪费一点时间,这个时间是在允许的范围内。

关闭窗口

相关文章