匯編語言編程對(duì)理解CPU的如何工作運(yùn)行非常有必要。這里用匯編來實(shí)現(xiàn)一個(gè)定時(shí)器中斷來閃燈的程序:
我們先算得50ms一次中斷的計(jì)數(shù)器的初值
1、記數(shù)值=50 000*12/32=18750
2、初始值=65535-18750=46785 (=B6C1)
3、TH0=B6 TL0=C1
ORG 0000H
ORL 0B1H, #0FFH ;P3CON 0x1e
MOV TMOD,#01H ;定時(shí)器方式1
MOV TH0, #0B6H
MOV TL0, #0C1H ;32.0592HZ晶振,50ms定時(shí)
MOV TCON,#10H ;將TR0至1
MOV 0B0H, #0FFH;將P1口LED全部熄滅
MOV R6, #20 ;計(jì)數(shù)20次
LOOP: JNB TF0, LOOP;檢測(cè)計(jì)數(shù)是否溢出
MOV TH0, #0B6H
MOV TL0, #0C1H;溢出后,重新送初值
CPL TF0 ;CPU響應(yīng)T0中斷時(shí),TF0由硬件清0;否則由軟件清0(CPL TF0清0操作)
DJNZ R6,LOOP ;循環(huán)20次,50ms,定時(shí)1s
MOV R6,#20 ;重新裝載20次初值
CPL 0xB0.1 ;LED閃爍
LJMP LOOP
END
下載到開發(fā)板后,LEDP3.1就可以實(shí)現(xiàn)1秒鐘閃爍一次。
-
led
+關(guān)注
關(guān)注
242文章
23684瀏覽量
670532 -
中斷
+關(guān)注
關(guān)注
5文章
904瀏覽量
42485 -
定時(shí)器
+關(guān)注
關(guān)注
23文章
3285瀏覽量
117113 -
匯編語言
+關(guān)注
關(guān)注
14文章
410瀏覽量
36505
發(fā)布評(píng)論請(qǐng)先 登錄
《微機(jī)原理與匯編語言》 定時(shí)器及應(yīng)用
基于匯編語言實(shí)現(xiàn)最簡(jiǎn)單的LED燈閃爍
為什么要用匯編語言寫程序
如何用AT89C51匯編語言實(shí)現(xiàn)LED間隔1s閃爍
匯編語言程序設(shè)計(jì)pdf

匯編語言程序設(shè)計(jì)下載

匯編語言學(xué)習(xí)課件_匯編語言程序組織
Timer0和Timer1及Timer2定時(shí)器的C語言和匯編語言測(cè)試程序免費(fèi)下載

AT89C51 匯編語言實(shí)現(xiàn)LED間隔1s閃爍(已驗(yàn)證)

利用定時(shí)器中斷方式控制led燈的閃爍速度_項(xiàng)目四 定時(shí)器和中斷概念的基本認(rèn)識(shí)...

評(píng)論