匯編語言延時1s程序 晶振為6Mhz編寫一個1S延時的子程序怎么寫?
晶振為6Mhz編寫一個1S延時的子程序怎么寫?使用中斷定時器工作模式1,最大計數(shù)為65536,則從15536計數(shù)到65536需要50000次,6m晶振機周期為2微秒,則溢出時間為100000微秒,計數(shù)
晶振為6Mhz編寫一個1S延時的子程序怎么寫?
使用中斷定時器工作模式1,最大計數(shù)為65536,則從15536計數(shù)到65536需要50000次,6m晶振機周期為2微秒,則溢出時間為100000微秒,計數(shù)溢出10次為1秒ORG 000BH ajmp time0 ORG 30h Main:mov 30h,#00h先清除30h地址的數(shù)據(jù),將其用作溢出計數(shù)TMOD的mov,#0000000 1b mov TH0,#3CH mov TL0,#0B0H SETB EA SETB ET0 SETB TR0回路:AJMP回路時間0:當(dāng)push ACC push PSW Inc 30h進入中斷時,MOV a,30h cjne a,#10,t自動增加#RET見計數(shù)器溢出到10倍,沒有跳轉(zhuǎn)到t_RET繼續(xù)從15536_L1開始計算t:是時候延遲一秒鐘了。編寫自己的程序。
Mov 30h,#00h,記住再次清除溢出計數(shù)器tu返回:MOV TH0,#3CH MOV TL0,#0B0H POP PSW POP ACC RETI END.(3小時移動TL0,#0B0H彈出PSW彈出ACC RETI結(jié)束。)