[語法] 請問一個組語的計時程式問題?
※ [本文轉錄自 C_and_CPP 看板]
作者: cczeke (阿其) 看板: C_and_CPP
標題: [語法] 請問一個組語的計時程式問題?
時間: Mon Jul 9 15:14:15 2007
小弟最近正在自學組合語言
在寫一個範例時遇到一個問題
不知道那位大大可以幫我解答一下@@
下面是每秒要P3.2反向一次的程式
COUNT EQU 9217
CHECK EQU P3.2
ORG 0000H
MOV R0,#00H
DJNZ R0,$
CLR CHECK
MOV SP,#40H
MOV R1,#100 <-----------問題
MOV TMOD,#01H
CLR TF0
MOV TH0,#(65536-COUNT)/256
MOV TL0,#(65536-COUNT)MOD 256
SETB TR0
LOOP: JNB TF0,LOOP
CLR TF0
MOV TH0,#(65536-COUNT)/256
MOV TL0,#(65536-COUNT)MOD 256
DEC R1
DJNZ R1,LOOP
CPL CHECK
MOV R1,#100 <------------問題
AJMP LOOP
END
這個程式是以原本 10MS 反向一次
然後改成 10MS 計數100次之後再反相一次
這樣理論上應該會變成每 10MS * 100 = 1S 反相一次
可是把程式燒進晶片之後發現實際上是每0.5S的反相一次
後來我測試之後發現 R1如果是單數的話不會有動作
例如 R1=1 無動作 R1=2 有動作 …R1=99 無動作 R1=100有動作
因此100實際上只計數了50次 造成晶片實際上每0.5S才反相一次
所以請問會組語的大大 不知道能不能幫小弟解決這個煩惱@@
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.116.179.145
※ cczeke:轉錄至看板 ASM 07/09 15:14
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.116.179.145
推
07/09 17:25, , 1F
07/09 17:25, 1F
推
07/09 17:32, , 2F
07/09 17:32, 2F
推
07/09 17:54, , 3F
07/09 17:54, 3F
ASM 近期熱門文章
PTT數位生活區 即時熱門文章