飄落的風(fēng)
級(jí)別: 家園?
精華主題: 0
發(fā)帖數(shù)量: 90 個(gè)
工控威望: 947 點(diǎn)
下載積分: 992 分
在線時(shí)間: 66(小時(shí))
注冊(cè)時(shí)間: 2020-03-17
最后登錄: 2021-08-30
查看飄落的風(fēng)的 主題 / 回貼
樓主  發(fā)表于: 2020-09-18 13:35
中斷程序的執(zhí)行順序是這樣子的嗎?在主程序工作掃描時(shí),一旦產(chǎn)生中斷,便會(huì)進(jìn)入中斷程序,且只執(zhí)行一個(gè)掃描周期,一個(gè)掃描周期執(zhí)行完成返回主程序繼續(xù)掃描。下面這段通過中斷一鍵啟停的程序理解不了,求前輩們指導(dǎo),如下圖:
 
 
 在主程序中開啟中斷,當(dāng)I0.0的上升沿信號(hào)到來時(shí)進(jìn)入INT0中斷程序,置位Q0.0。此時(shí),是否返回主程序?如果返回主程序,下次的
I0.0的上升沿信號(hào)到來不還是先進(jìn)入
INT0嗎?

按程序功能,應(yīng)該是停留在INT0中,等待下次
I0.0的上升沿信號(hào)進(jìn)入
INT1,從而復(fù)位Q0.0。

求前輩們給予解答



飄落的風(fēng)
級(jí)別: 家園?
精華主題: 0
發(fā)帖數(shù)量: 90 個(gè)
工控威望: 947 點(diǎn)
下載積分: 992 分
在線時(shí)間: 66(小時(shí))
注冊(cè)時(shí)間: 2020-03-17
最后登錄: 2021-08-30
查看飄落的風(fēng)的 主題 / 回貼
1樓  發(fā)表于: 2020-09-18 13:37
在主程序中開啟中斷,當(dāng)I0.0的上升沿信號(hào)到來時(shí)進(jìn)入INT0中斷程序,置位Q0.0。
此時(shí),是否返回主程序?如果返回主程序,下次的I0.0的上升沿信號(hào)到來不還是先進(jìn)入INT0嗎?
按程序功能,應(yīng)該是停留在INT0中,等待下次I0.0的上升沿信號(hào)進(jìn)入INT1,從而復(fù)位Q0.0。

求前輩們給予解答
飄落的風(fēng)
級(jí)別: 家園?
精華主題: 0
發(fā)帖數(shù)量: 90 個(gè)
工控威望: 947 點(diǎn)
下載積分: 992 分
在線時(shí)間: 66(小時(shí))
注冊(cè)時(shí)間: 2020-03-17
最后登錄: 2021-08-30
查看飄落的風(fēng)的 主題 / 回貼
2樓  發(fā)表于: 2020-09-18 15:11
明白了,主要原因是沒搞明白ATCH的作用,ATCH并不是用來調(diào)用中斷,而是用來將中斷事件號(hào)和中斷程序進(jìn)行連接,所以在主程序進(jìn)入中斷程序0后置位Q0.0,并把沿中斷和中斷程序1連接起來,返回主程序;下一次中斷就是進(jìn)入中斷程序1后復(fù)位Q0.0,并把沿中斷和中斷程序0連接起來,返回主程序,以此反復(fù),從而實(shí)現(xiàn)一鍵啟停