1. 程式人生 > >定時器查詢法和定時器中斷法實現LED閃爍

定時器查詢法和定時器中斷法實現LED閃爍

1、定時器查詢法實現LED閃爍

;2013/4/23
;延時1s閃爍
     org   0000h                
     ajmp  start
     org   30h
start:mov   r0,#20			
      mov   p0,#0ffh		;關燈
      mov   TMOD,#00000001B
      mov   TH0,#3CH        ;50ms定時
      mov   TL0,#0B0H
      setb  TR0
loop: jbc   TF0,next         ;TF1為1時轉移
      ljmp  loop
next: mov   TH0,#3CH
      mov   TL0,#0B0H	
      djnz  r0,loop         ;r0減1不為0跳轉
      cpl   p0.0
      mov   r0,#20
      ljmp  loop
      end

2、定時器中斷實現LED閃爍

;2013/4/24
      org 0000h
      ajmp 	start
      org 000bh          ;定時器0的中斷向量地址
      ajmp 	time0
      org 30h
start:mov  p0,#0ffh
      mov  TMOD,#00000001B
      mov  TH0,#3Ch
      mov  TL0,#0b0h
      setb EA
      setb ET0
      setb TR0
loop: ajmp loop
time0:cpl  p0.0
      mov  TH0,#3Ch
      mov  TL0,#0b0h
      reti               ;中斷返回
      end