写PIC程序的时候遇到一个很奇怪的问题,我也是第一次使用PIC单片机,在这里分享出来,希望同样遇到问题的避免再次踩坑。项目中就是需要对传感器标定后的相关参数存储到PIC单片机内部的EEPROM中,因为程序处理调试阶段,每一次进入程序我都是使用的在线调试模式进入,在整体调试的过程中发现每一次进入程序直接读取EEPROM中的数据读取出来都是FF,也就是感觉EEPROM当中根本就没有数据,只有将数据写入进去一次然后再次读取才能够读取到正常的数据,而且无论读取多少次都是存在着数据的,但是当再次重新进入调试模式时读取出来的数据又是空的。开始我是考虑是否写入或者读取存在着问题,但是经过无数次的资料查询和相关案例的参考,发现代码的逻辑上根本就没有问题。网上也查询了无数的资料,都没有看到类似的解决方法。最后我试了一次直接将程序烧录进入PIC单片机,不进入调试模式,通过打印日志的方式,发现数据读取是正常的,为什么会这样我也一直没有查到相关资料。我感觉有可能是调试工具在进入调试模式的时候或者在烧录程序的时候将EEPROM中的额数据一并给擦除了。 |