想把"中斷""計時""資料表" 一起呈現 卻發生問題 |
答題得分者是:src
|
phelim
一般會員 發表:1 回覆:2 積分:0 註冊:2008-11-03 發送簡訊給我 |
各位大大好@@"
我最近再做實驗 可是一個小地方 一直搞不定 我要把 中斷 計時 做在一起 可是當我一接電源 電路就直接跑我的中斷程式(我沒給中斷訊號) 希望有大大 稍微幫我看一下問題出在哪 謝謝 程式如下: ;===============初始設定========================= ORG 00H JMP START ;啟動後從START開始執行 ORG 03H CALL INT RETI ORG 0BH CALL TIMER ;TIMER0溢位後跳到TIMER RETI ;================主程式========================== START: MOV SP,#60H MOV DPTR,#TABLE MOV R0,#20 MOV R1,200 SETB EA ;中斷致能 SETB ET0 ;致能TIMER0 SETB IT0 SETB EX0 MOV TMOD,#2 MOV TH0,#6 MOV TL0,#6 SETB TR0 ;啟動TIMER0 MOV R2,#7FH LOOP1: MOV A,R2 MOV P1,A JMP LOOP1 ;===============計時器副程式====================== TIMER: CLR TR0 ;關閉TIMER0 DJNZ R1,EXIT MOV R1,#200 MOV A,R2 RR A MOV R2,A DJNZ R0,EXIT MOV R0,#16 EXIT: SETB TR0 ;啟動TIMER0 RET ;===============中斷副程式======================== INT: MOV R3,#16 MOV R4,#0 LOOP2: MOV A,R4 MOVC A,@A DPTR MOV P1,A CALL DELAY INC R4 DJNZ R3,LOOP2 RET ;===============DELAY-0.1S========================= DELAY: MOV R6,#248 S1: MOV R7,#200 DJNZ R7,$ DJNZ R6,S1 RET ;===============資料庫============================= TABLE: DB 11100111B DB 11000011B DB 10000001B DB 00000000B DB 00000000B DB 10000001B DB 11000011B DB 11100111B DB 11100111B DB 11000011B DB 10000001B DB 00000000B DB 00000000B DB 10000001B DB 11000011B DB 11100111B ;↑廣告燈資料 END |
㊣
版主 發表:261 回覆:2302 積分:1667 註冊:2005-01-04 發送簡訊給我 |
|
phelim
一般會員 發表:1 回覆:2 積分:0 註冊:2008-11-03 發送簡訊給我 |
|
㊣
版主 發表:261 回覆:2302 積分:1667 註冊:2005-01-04 發送簡訊給我 |
|
src
高階會員 發表:1 回覆:94 積分:154 註冊:2005-08-23 發送簡訊給我 |
程式我測過沒問題,電源ON時跑的是計時器的由左向右
當P3.2接地時則跑的是中斷的從中間向左右跑 建議用電表測量P3.2正常應該是高電位 ===================引 用 phelim 文 章=================== 各位大大好@@" 我最近再做實驗 可是一個小地方 一直搞不定 我要把 中斷 計時 做在一起 可是當我一接電源 電路就直接跑我的中斷程式(我沒給中斷訊號) 希望有大大 稍微幫我看一下問題出在哪 謝謝 程式如下: ;===============初始設定========================= ORG 00H JMP START ;啟動後從START開始執行 ORG 03H CALL INT RETI ORG 0BH CALL TIMER ;TIMER0溢位後跳到TIMER RETI ;================主程式========================== START: MOV SP,#60H MOV DPTR,#TABLE MOV R0,#20 MOV R1,200 SETB EA ;中斷致能 SETB ET0 ;致能TIMER0 SETB IT0 SETB EX0 MOV TMOD,#2 MOV TH0,#6 MOV TL0,#6 SETB TR0 ;啟動TIMER0 MOV R2,#7FH LOOP1: MOV A,R2 MOV P1,A JMP LOOP1 ;===============計時器副程式====================== TIMER: CLR TR0 ;關閉TIMER0 DJNZ R1,EXIT MOV R1,#200 MOV A,R2 RR A MOV R2,A DJNZ R0,EXIT MOV R0,#16 EXIT: SETB TR0 ;啟動TIMER0 RET ;===============中斷副程式======================== INT: MOV R3,#16 MOV R4,#0 LOOP2: MOV A,R4 MOVC A,@A DPTR MOV P1,A CALL DELAY INC R4 DJNZ R3,LOOP2 RET ;===============DELAY-0.1S========================= DELAY: MOV R6,#248 S1: MOV R7,#200 DJNZ R7,$ DJNZ R6,S1 RET ;===============資料庫============================= TABLE: DB 11100111B DB 11000011B DB 10000001B DB 00000000B DB 00000000B DB 10000001B DB 11000011B DB 11100111B DB 11100111B DB 11000011B DB 10000001B DB 00000000B DB 00000000B DB 10000001B DB 11000011B DB 11100111B ;↑廣告燈資料 END
編輯記錄
src 重新編輯於 2008-11-04 22:07:30, 註解 無‧
|
㊣
版主 發表:261 回覆:2302 積分:1667 註冊:2005-01-04 發送簡訊給我 |
|
phelim
一般會員 發表:1 回覆:2 積分:0 註冊:2008-11-03 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |