一,界说寄存器
界说全局变量unsigend num
在子程序里边改动num值,一起在中止里边也改动num值,最终得到意向不到的值,简单犯错
若要这样改动则界说变量前面加volatile unsigend num
二,中止调用
主程序调用子程序,一起中止函数里边也调用该子程序,这样简单犯错
主张:中止里边不要调用子程序,
若要调用子程序则,则该子程序为唯一被中止调用。
三,程序最初没加延时
开端的时分没加延时,很风险,上电电源电压动摇较大,若一上电单片机就履行重要的指令的话,就简单出问题
特别是对内部eeprom的读写,读取数据犯错,导致意向不到的结果。读写数据都需求比较安稳的电压。
亲,上电延时个10毫秒,比及电压安稳后,再履行指令,不会影响正常作业,又有保证不是更好
四,竞赛与冒险
检测需加屡次判别,以防搅扰。
屡次判别需求糟蹋一点时刻,这个时刻是在答应的范围内。