標(biāo)題: 單片機(jī)CAN程序移植按鍵和數(shù)碼管代碼后,數(shù)碼管顯示不同步疑問 [打印本頁]

作者: 三極管一樣的人    時(shí)間: 2024-1-17 14:16
標(biāo)題: 單片機(jī)CAN程序移植按鍵和數(shù)碼管代碼后,數(shù)碼管顯示不同步疑問
我在一塊CAN開發(fā)板上移植了鴻哥程序模塊中的按鍵和數(shù)碼管顯示代碼。奇怪的現(xiàn)象來了: 原來單片機(jī)開發(fā)板程序 顯示的數(shù)字相同, 改了之后,顯示收的數(shù)字比發(fā)大了1。
一步步的替換也試過,按鍵部分替換后正常,就是替換到數(shù)碼管部分,按一下后,發(fā)的數(shù)字還是0 ,收的數(shù)字就成了1.
(原先是:按一下后,發(fā)的數(shù)字是1,收的數(shù)字也是1.)

如下圖
///////////////////////日期:2024年1月30日 ////////////////////////////
更新下帖子
感覺,這個(gè)差的1
來自于
數(shù)碼管顯示程序里,某個(gè)變量

我今天更新成按鍵中斷觸發(fā)計(jì)數(shù)后也一樣。

理論上,數(shù)碼管1,2顯示的是我要給他發(fā)過去的數(shù)據(jù); 數(shù)碼管 3,4顯示的SJA1000,自己收到后的數(shù)據(jù)。
那么,我按一下后,計(jì)數(shù)加一,送數(shù)碼管1,2顯示,并且發(fā)送。 但是同步的,SJA1000 也在同步接收,發(fā)過來的數(shù)據(jù)。
那我按第一下,這個(gè)時(shí)候,SJA1000,接收到的是沒按之前的一個(gè)空數(shù)據(jù),?
所以,顯示差1好像也正常

但是,為啥,其他顯示程序可以 同步顯示1呢?  因?yàn)闆]設(shè)置中間變量? 所以,編譯器自動(dòng)替換了一些內(nèi)容?

做個(gè)筆記,等待后期思考,先接著往下搞


1.png (503.03 KB, 下載次數(shù): 60)

原先的效果-按一下

原先的效果-按一下

2.png (742.97 KB, 下載次數(shù): 60)

原先的效果-按2下

原先的效果-按2下

3.png (572.81 KB, 下載次數(shù): 57)

修改后效果-按一下

修改后效果-按一下

4.png (389.09 KB, 下載次數(shù): 61)

修改后效果-按2下

修改后效果-按2下

STC89C_SJA1000_TJA1050.7z

31.24 KB, 下載次數(shù): 4

2個(gè)源程序


作者: Hephaestus    時(shí)間: 2024-1-17 16:12
你發(fā)給誰了?你又是接受誰的消息?
作者: 三極管一樣的人    時(shí)間: 2024-1-17 21:58
發(fā)表于 2024-1-17 16:12
你發(fā)給誰了?你又是接受誰的消息?

自收發(fā),就是自己發(fā)送,自己內(nèi)部就接收了。

屏幕截圖 2024-01-17 215734.png (73.34 KB, 下載次數(shù): 61)

自收發(fā)說明

自收發(fā)說明





歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1