本帖最后由 linxi6414 于 2020-3-31 15:18 编辑
一个工控电路,分面板和主板,系统上电后,面板要将设置参数通过485总线发送给主板,其中一个变量为电机过流计数,数字为3-20可调整的参数,变量名为:SYS_Over_Current_Count,每次主板接收到这个面板来的变量后,将主板的SYS_Over_Current_Count等于其中的一个接收缓冲,用串口监控发现,SYS_Over_Current_Count也确实被改更新了,可是更新后立马就变成0了,找了半天也找不出问题,然后换个变量名,立马就正常了,现在的变量名为:SYS_Overload_Count,只要换回SYS_Over_Current_Count这个变量名,立马就不行,目前程序还在调试阶段,SYS_Over_Current_Count这个变量名只在485子程序里有这个变量,其它的子程序里并没有这个变量,这个变量也没有其它地方引用,真的搞不懂了。
最后说一下,485有CRC校验,用逻辑分析仪分析,收发都是正常的,问题出在主板上。 |
编译器支持多长变量名? 找找看前16个字母==SYS_Over_Current 的变量。