Initialize AT89C2051 vrata!

C

c3cube

Guest
Kaj bi moral napisati, da inicializirati pristanišču 3 kot vložek v pristanišče monter jeziku??Pravzaprav, jaz šele potreba P3.0 vklopiti koračnih motor z daljinskim upravljalnikom.

 
Živjo

Da bi pristanišče kot input pristanišče moraš napisati samo "1" ta pin / pristanišče in nato preberite status.

Code:

setb P3.1; pišite 1 do pristanišča

jb p3.1 set; preverite, če je 1 ali 0

nop; bit ni določen, tj input 0

sjmp con

set: nop; bit je določen input in sicer je 1con:

, ostali kode
 
c3cube wrote:

Ive 'preizkušen, vendar je ne deluje!
Vse druge mothods??
 
P3.0 se uporablja, da bi prehod ON signal, da vklopite koračnih motor, ki je povezan z Port 1.

 
Ob predpostavki, da je trenutno povezan prehod med P3.0 in GND ..

SETB P3.0

LOOP: JB P3.0, LOOP
..
cont ..

ko pritisnete stikalo P3.0 postane "0" za nekaj časa, bo mikrokrmilniška dopust LOOP in nadaljevati z nadzorom Stepper Motor ..

S spoštovanjem,
IanP

 
Preizkusite svoj standardni kodi za AT89c

;############# written by Mustafa Ali Naas za pomoč #######################
;################################################# #######################
$ NASLOV (LED flashing.asm)
$ MOD51
$ NOPRINT; za prikaz napake na zaslonu, če se ugotovi morebitne napake
$ INCLUDE (MYPAULM2.EQU); naslov PAULMON2 rutino koristnosti
$ SEZNAM; overrided z $ NOPRINT

;################################################# # # #
; RESET RUTINSKO
ORG 0000H; poiščite na rutinski 00h
AJMP MAIN, skok na START

;################################################# # # #
; Interrupts (i ne bo uporabljala jih tukaj)

ORG 03H; zunanja prekinitev 0
Reti
ORG 0BH; timer 0 prekine
Reti
ORG 13H; zunanjih prekinitev 1
Reti
ORG 1BH; timer 1 prekinitev
Reti
ORG 23h; serijska vrata prekine
Reti
ORG 25H, iskanje začetka ostalega programa;################################################# # # # #

Inicializirati:; ustanovljen za nadzor registrov in pristanišč
MOV TCON, # 00h
MOV TMOD, # 00h
MOV PSW, # 00h
MOV IE, # 00h; onemogoči interruptsRET;################################################# #####

;************************************************* *************************
;
DELAYMS:; Milliseconds zamudo rutinsko
;;
MOV R7, # 00h, dal vrednost 0 v registru R7
LOOPA:
INC R7, R7 povečal za eno (R7 = R7 1)
MOV A, R7, prehod v vrednosti R7 do Accumlator (znan tudi kot)
CJNE, # 0FFH, LOOPA; primerjati s FF hex (256).Če ne gre za enako LOOPA
RET; vrnitev na točko, da je to rutinsko vpoklicani od
;
;************************************************* *************************

;################################################# ######

zanke:
ACALL inicializirati
SETB p1.0; tukaj pristanišče p1.0 je initialized kot input
SETB p1.2; tukaj pristanišče p1.2 je initialized kot prispevek tudi
, note: initialization pristanišč, se lahko opravi v Initialize sub-rutinsko
, Namesto glavne zanke, ni nobene razlike,.
; V normalnem primeru se vsa pristanišča initailized izhodna vrata.

####### napišite kodo tukaj #####################
END

srečno

 

Welcome to EDABoard.com

Sponsor

Back
Top