史萊姆論壇

史萊姆論壇 (http://forum.slime.com.tw/)
-   程式語言討論區 (http://forum.slime.com.tw/f76.html)
-   -   89S52的問題 (http://forum.slime.com.tw/thread270217.html)

lk456852001 2012-05-25 03:19 PM

89S52的問題
 
循環控制電路
以單晶片控制做出像工業配線的接線

-----------------------------------------------------------------------------
TH_RY REG P2.3
OFF REG P2.2
ON REG P2.0
BUZZ REG P0.2
MC2 REG P0.1
MC1 REG P0.0
X REG 20H.0
TM1 REG 21H.0
TM1_A REG 21H.1
TM1_B REG 21H.2
TM1_D REG 21H.3
TM2 REG 21H.4
TM2_A REG 21H.5
TM2_B REG 21H.6
TM2_D REG 21H.7
TM1_T EQU 5
TM2_T EQU 3
CNT_1S EQU 20
ORG 00H
JMP START
ORG 0BH
JMP T0_INT
START: MOV R0,#CNT_1S
MOV 21H,#00H
SETB TM1_B
SETB TM2_B
SETB X
SETB BUZZ
MOV IE,#10000010B
MOV TMOD,#00000001B
MOV TH0,#>(65536-50000)
MOV TL0,#<(65536-50000)
SETB TR0
LOOP: MOV C,ON
CPL C
ORL C,/X
ANL C,OFF
ANL C,/TH_RY
CPL C
MOV X,C
MOV C,TH_RY
CPL C
MOV BUZZ,C

CTL_MC1: MOV C,TM2_B
ANL C,/X
MOV TM1,C
ANL C,TM1_B
CPL C
MOV MC1,C
JB TM1,CTL_MC2
CLR TM1_A
SETB TM2_B
CLR TM1_D

CTL_MC2: MOV C,TM1_A
ORL C,TM2_A
ANL C,/X
MOV TM2,C
CPL C
MOV MC2,C
JB TM2,CON
CLR TM2_A
SETB TM2_B
CLR TM2_D
CON: JMP LOOP

T0_INT PUSH A
CLR TR0
MOV TH0,#>(65536-50000)
MOV TL0,#<(65536-50000)
SETB TR0
DJNZ R0,RTN
MOV R0,#CNT_1S
JNB TM1,CK_T2
JB TM1_D,DNT1
SETB TM1_D
MOV R1,#TM1_T
JMP RTN
DNT1: DJNZ R1,CK_T2
SETB TM1_A
CLR TM1_B
CLR TM1_D
CK_T2: JNB TM2,RTN
JB TM2_D,DNT2
SETB TM2_D
MOV R2,#TM2_T
JMP RTN
DNT2: SETB TM2_A
CLR TM2_B
DJNZ R2,RTN
CLR TM2_A
SETB TM2_B
RTN: POP A
RETI
END
----------------------------------------------------------------------
我程式是這樣打的為何卻無法動作呢?

飛鳥 2012-05-29 04:58 PM

不要只把程式貼了就跑,你所提供的資訊不夠
很難回答

電路是什麼也不知道

最好能提供更多資訊吧

cwvdavid 2012-06-03 12:35 PM

這個人應該不會回來了...
(文章數:1)


所有時間均為台北時間。現在的時間是 04:30 PM

Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2025, Jelsoft Enterprises Ltd.

『服務條款』

* 有問題不知道該怎麼解決嗎?請聯絡本站的系統管理員 *


SEO by vBSEO 3.6.1