標(biāo)題: 匯編:51定時(shí)器流水燈 [打印本頁(yè)]

作者: liuchao626    時(shí)間: 2022-7-21 10:22
標(biāo)題: 匯編:51定時(shí)器流水燈
使用定時(shí)器0定時(shí)20ms,循環(huán)5次,移位控制led亮滅
但是有個(gè)BUG,速度比1s快多了,也就是那個(gè)5次沒起作用,求大神解惑
  1.        
  2. ;流水燈例程,IO/定時(shí)器/

  3. ORG 0000H
  4.         RESET: LJMP START
  5. ORG 000BH
  6.         LJMP ITOP ;T0中斷服務(wù)函數(shù)
  7. ORG 1000H
  8.        
  9.         START:
  10.                 MOV SP,#06H ;設(shè)置堆棧指針
  11.                 MOV TMOD,#01H ;設(shè)置定時(shí)器模式,00H13位,01H16位,02H自動(dòng)重裝8位,03H(T0)兩個(gè)8位
  12.                               ;GATE|C/T|M1|M0,GATE|C/T|M1|M0
  13.                 ;裝入初值 ,要求設(shè)置定時(shí)20ms.
  14.                 ;X = M-((Fosc*20*10(-3次))/12) M=2的16次   X = 45536  1011 0001 1110 0000B
  15.                 MOV TL0,#0E0H
  16.                 MOV TH0,#0B1H
  17.                
  18.                 ;定時(shí)器控制運(yùn)行
  19.                 SETB TR0 ;將t0運(yùn)行控制位置位
  20.                 ;中斷運(yùn)行控制
  21.                 SETB EA  ;總中斷開關(guān)
  22.                 SETB ET0 ;定時(shí)器中斷開關(guān)置位
  23.                 MOV R5,#5
  24.                 MOV A,#01H
  25.                 MOV P1,A
  26.         MAIN: AJMP MAIN ;動(dòng)態(tài)循環(huán)
  27.         DELAYGO:
  28.             RETI
  29.         ITOP:
  30.                 MOV TL0,#0E0H
  31.             MOV TH0,#0B1H
  32.                
  33.                 DJNZ R5,DELAYGO;如果未滿循環(huán)5次,就繼續(xù)進(jìn)行定時(shí)中斷
  34.             ;當(dāng)5次循環(huán)滿足時(shí),即定時(shí)1S
  35.                 LCALL LEDRUN
  36.                 MOV R5,#5
  37.             RETI
  38.         LEDRUN:
  39.             RL A
  40.                 MOV P1,A
  41.                 RET
  42. END
  43.          
  44.          
  45.                
復(fù)制代碼

里面有源代碼和仿真件

2022721101925rec 00_00_00-00_00_30.gif (181.92 KB, 下載次數(shù): 129)

2022721101925rec 00_00_00-00_00_30.gif

tempcode.zip

254.68 KB, 下載次數(shù): 24, 下載積分: 黑幣 -5


作者: zhxiufan    時(shí)間: 2022-7-21 12:56
你算數(shù)不咋的呀,20毫秒定時(shí),5次是1秒嗎?是100毫秒,要50次才行呀,哥們。

作者: liuchao626    時(shí)間: 2022-7-21 13:09
zhxiufan 發(fā)表于 2022-7-21 12:56
你算數(shù)不咋的呀,20毫秒定時(shí),5次是1秒嗎?是100毫秒,要50次才行呀,哥們。

BBQL, 好難受,問(wèn)題原來(lái)在這,。。。。。蠢哭了
作者: liuchao626    時(shí)間: 2022-7-21 15:03
如題,樓主有點(diǎn)蠢,20ms*5不等于1s,望大家可以一起嘲笑這個(gè)樓主。




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1