热度 13
2013-1-24 17:25
1537 次阅读|
1 个评论
参加一个小项目,负责编写其中的从模块的部分代码。最后测试发现模块地址写入有问题。 后来的解决方法是,设置一个用来指示地址是否修改过的标志。在每个模块的单片机的EEPROM中开辟两个字节(两个字节是为了消除偶然性),用来存储此标志(0x55、0xaa)。模块烧入代码后第一次先向EEPROM中存放模块地址的字节写入0x00,以后如果修改了地址且所改地址不为0x00,就将0x55和0xaa写入标志位。这样每次模块上电后先判断标志位是否0x55和0xaa在进行其他操作,这就保证了模块第一次上电后地址为0x00,修改成其他地址后可以保存且掉电后重新上电后地址也不会再次回到0x00。