單片機(jī)延時(shí)程序 匯編語言5秒的延時(shí)程序怎么寫(微機(jī)原理)?
匯編語言5秒的延時(shí)程序怎么寫(微機(jī)原理)?首先,很明顯,機(jī)器執(zhí)行一條指令大約需要1us。然后,10ms延遲的過程如下:mov ax、50l1:mov BX、100l2:Dec BX JNZ l2dec
匯編語言5秒的延時(shí)程序怎么寫(微機(jī)原理)?
首先,很明顯,機(jī)器執(zhí)行一條指令大約需要1us。然后,10ms延遲的過程如下:mov ax、50l1:mov BX、100l2:Dec BX JNZ l2dec axjnz。在執(zhí)行L1之后,時(shí)間大約多10ms。根據(jù)具體問題的類型,分解步驟/分析原因原理/擴(kuò)充內(nèi)容。具體步驟如下:/造成這種情況的主要原因是
Delay1000ms:(ht46r65單片機(jī))(注意不要打開定時(shí)器中斷權(quán)限位)mov a,10000111b(設(shè)置頻率和計(jì)數(shù)模式)(上計(jì)數(shù)或下計(jì)數(shù))mov tmr0c,a(tmr0c計(jì)數(shù)器控制寄存器)mov a,低(65536-31250)(設(shè)置頻率是1s up 31250),所以它是delay1s mov tmr0l,一個(gè)mov a,高(65536-31250)mov tmr0h,一個(gè)設(shè)置tmr0c.4 SNZ intc0.6 JMP$-1 CLR tmr0c.4 CLR intc0.6 clear interrupt flag RET
首先,機(jī)器執(zhí)行一條指令需要大約1us。然后延遲10ms的程序如下:movax、50l1:movbx、100l2:decbx、jnzl2decaxjnzl1。執(zhí)行后,時(shí)間略大于10ms