|
我在一块CAN开发板上移植了鸿哥程序模块中的按键和数码管显示代码。奇怪的现象来了: 原来单片机开发板程序 显示的数字相同, 改了之后,显示收的数字比发大了1。
一步步的替换也试过,按键部分替换后正常,就是替换到数码管部分,按一下后,发的数字还是0 ,收的数字就成了1.
(原先是:按一下后,发的数字是1,收的数字也是1.)
如下图
///////////////////////日期:2024年1月30日 ////////////////////////////
更新下帖子
感觉,这个差的1
来自于
数码管显示程序里,某个变量
我今天更新成按键中断触发计数后也一样。
理论上,数码管1,2显示的是我要给他发过去的数据; 数码管 3,4显示的SJA1000,自己收到后的数据。
那么,我按一下后,计数加一,送数码管1,2显示,并且发送。 但是同步的,SJA1000 也在同步接收,发过来的数据。
那我按第一下,这个时候,SJA1000,接收到的是没按之前的一个空数据,?
所以,显示差1好像也正常
但是,为啥,其他显示程序可以 同步显示1呢? 因为没设置中间变量? 所以,编译器自动替换了一些内容?
做个笔记,等待后期思考,先接着往下搞
|
|