欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 如何軟件觸發硬件中斷? [打印本頁]

作者: zouqh888    時間: 2017-2-15 20:29
標題: 如何軟件觸發硬件中斷?
因為需要,本需要寫一個51單片機程序,比如我寫了個 int0 中斷函數,當按鍵按下時候馬上執行,但是程序里面達到一定條件下也必須立刻無條件執行這個函數,我想問的是,如何用軟件觸發這個中斷呢,謝謝!

作者: utzuzu    時間: 2017-2-16 11:10
把中斷函數里面的內容單獨封裝成一個普通函數,進中斷函數調用這個函數,主程序也可以調用這個函數。
作者: 1003425554    時間: 2017-2-16 16:33
或許你可以試試直接寫入IE0 = 1;試試
作者: yzwzfyz    時間: 2017-2-16 17:52
沙發正解
作者: ahshmj    時間: 2017-2-17 08:43
直接將中斷標志位置“1” 。
TCON
7        6      5      4      3      2       1       0
TFl   TR1  TF0   TR0   IE1   IT1   IE0    IT0
作者: zl2168    時間: 2017-2-17 12:59
把中斷函數里面的內容單獨封裝成一個普通函數,進中斷函數調用這個函數,主程序也可以調用這個函數。
作者: npn    時間: 2017-2-19 17:55
utzuzu 發表于 2017-2-16 11:10
把中斷函數里面的內容單獨封裝成一個普通函數,進中斷函數調用這個函數,主程序也可以調用這個函數。

主程序在調用這個函數處理數據的時候一但中斷來的再去調用這個函數的話結果您應該懂得了吧。

作者: mostube    時間: 2017-2-19 18:58
npn 發表于 2017-2-19 17:55
主程序在調用這個函數處理數據的時候一但中斷來的再去調用這個函數的話結果您應該懂得了吧。

其實,如果只要求實現相應功能的話,可以寫成兩個函數, 一個是中斷函數,一個是普通函數,各干個的不就行了。如果兩個函數有共同的數據不能錯亂,那就在訪問前 禁中斷就是的。
作者: npn    時間: 2017-2-19 22:36
mostube 發表于 2017-2-19 18:58
其實,如果只要求實現相應功能的話,可以寫成兩個函數, 一個是中斷函數,一個是普通函數,?鞲篩齙牟瘓? ...

這和vc vb 易語言等pc編程語言有很大差別,pc上的局部變量地址可通過系統自動分配,就算是多線程大量調用1個函數也很少會產生數據混亂,不同進程和線程的數組以及變量在內存中可能不是連續的,函數返回后所有局部變量包括大數組都會瞬間被釋放,如果用在c51平臺的話對一個變量分配動態地址的話就需要消耗更長時間和占用更多字節的內存。

作者: Dramalife    時間: 2017-2-19 23:19
學習一下,感謝大家!
作者: cam226390674    時間: 2017-2-20 12:31
我想問的是,如何用軟件觸發這個中斷
作者: 1370920483    時間: 2017-4-23 00:53
感覺直接將IE = 1 ,就可以進入中斷了吧。
作者: llstm    時間: 2017-4-23 09:32
外部中斷模式
作者: zz1510    時間: 2017-4-23 10:30
ahshmj 發表于 2017-2-17 08:43
直接將中斷標志位置“1” 。
TCON
7        6      5      4      3      2       1       0

正解





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