2017-12-15

今天我們學(xué)習(xí)了臨界區(qū)與中斷開關(guān),普通的禁止和使能中斷,在禁止中斷時有觸發(fā)中斷的事件發(fā)生,當(dāng)使能中斷時該中斷不會在響應(yīng),說明普通的禁止中斷是阻止了中斷的發(fā)生。而在進(jìn)入臨界段時,有中斷發(fā)生,在退出臨界段時中斷會得到響應(yīng),說明臨街段只是延遲了中斷的響應(yīng)時間,并沒有真正的阻止中斷。要導(dǎo)入的文件import pyb, micropython, array ?# 主程序與定時中斷共享的臨界區(qū)

index = 0

data = array.array('i', 0 for x in range(20))

tim4 = pyb.Timer(4, freq=100, callback=callback1) # 定時中斷開始for loop in range(10000):

if index > 0:

irq_state = pyb.disable_irq() # ***開始訪問臨界區(qū)數(shù)據(jù),要關(guān)中斷

for x in range(index):

print(data[x])? # 讀臨界區(qū)數(shù)據(jù)

index = 0? ? ? ? ? # 修改臨界區(qū)數(shù)據(jù)

pyb.enable_irq(irq_state)? ? # ***訪問臨界區(qū)數(shù)據(jù)結(jié)束,開中斷

print('loop {}'.format(loop))

pyb.delay(1)

tim4.callback(None) #關(guān)定時器中斷

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 下午學(xué)習(xí)了中斷和外部中斷,其中NVIC控制和EXTI控制,NVIC給每個中斷賦予先占優(yōu)先級和次占優(yōu)先級,NVIC...
    黃曉雪i閱讀 88評論 0 0
  • 昨天晚上看到了我往日一起上學(xué)的或者后來跟我同事的,還有比我晚一些畢業(yè)的伙伴們評上了中級或高級職稱,我心里最初是難過...
    lijutong_010閱讀 1,305評論 0 3
  • 開場錯過了15分鐘,因為遲到的坑爹貨,我妹沒有看過銀泰城,指揮她走路耽誤了不少時間,進(jìn)入銀泰城還告訴她幾樓具體位置...
    看起來是一點都不友善閱讀 569評論 0 1
  • 從我高中畢業(yè)上大學(xué)時候開始,我心里就暗暗給自己一個目標(biāo),那就是等我畢業(yè)有了工作,就不會讓自己的父母那么辛苦。...
    057fdf8f78a9閱讀 237評論 0 0
  • 不要和三觀不同的人在一起.因為思想經(jīng)歷感官全都不一樣.就像我說大海很美.而你卻說它淹死過很多人.
    鹿北111閱讀 184評論 0 0

友情鏈接更多精彩內(nèi)容