ORG 8000H
LJMP MAIN
ORG 800BH
LJMP T0ISR
ORG 8030H
MAIN: MOV P1, #55H
MOV TMOD, #01H
MOV TH0, #00H
MOV TL0, #00H
MOV IE, #82H
SETB TR0
SJMP $
T0ISR: XRL P1, #0FFH
CLR TR0
MOV TH0, #00H
MOV TL0, #00H
CLR TF0
SETB TR0
RETI
END
※ 引述《cory8249 (Cory)》之銘言:
: 大家好:
: 我目前卡在一個看起來非常簡單的問題
: 已經 debug 好幾天 依然未解 快瘋了 Orz
: 硬體環境是 AT89S51 + 32KB SRAM + RS232
: 89S51 已燒錄 MON51 V12 監控程式 從 SRAM 去跑程式
: 程式 ORG 8000H Timer 0 中斷點應為 800BH
: Timer 0 mode 1 控制 LED 閃爍
: 1. 非中斷方式 確認OK
: http://pastie.org/8582692
: 2. ISR 中斷方式 有渺茫機率會成功
: http://pastie.org/8582991
: HEX 檔: http://pastie.org/8582993
: 以參考眾多網站範例與書本講義
: 換了很多種打法
: 但是就是不會 Work
: 某幾次成功 但再過幾分鐘再燒一次 就又失敗了
: 而且伴隨另一顆 8255 的 LED 閃爍
: 很懷疑是電路接錯
: 但是... 我燒過其他非中斷的程式都很正常
: 請各位高手們幫忙看看
: 願意提供 5000P 小小的心意 感激不盡 !!