写在前面:
自己的调试过程中的感受是,精准定位到了问题,问题就解决了至少一半!!!
问题回顾:上位机抄读数据时,出现了日期乱码。

调试过程实录:
step1:上位机跟终端电表通信是通过协议进行的,所以断点打在通信入口处。然后一步步仿真测试,排查问题。


step2:选择关键变量

step3:追踪关键函数

.
step4:根据经验确定关键变量,包括通用缓冲区和当前捕获的obis值


step5:逐步调试,定位问题

step6:问题定位到字节序反转函数,先整体屏蔽掉,观察反馈结果


step7:观察屏蔽后其他变量抄读是否受到影响,结果是受到了影响。
通过抄读功率因子发现,改变了dataLength不行,而到目前为止,只有抄读日期才出现了乱码,所以直接定位到内部的专项函数去修改即可!!!
定位到问题代码位置时,就解决了一半问题。
定位到问题代码后,先把问题区域屏蔽掉,然后仿真看效果是否恢复正常

阅读函数后,终于发现了问题。

