dátovej komunikácie na počítači

N

Noman Jusuf

Guest
já potreba až na rozhranie AT89C51 s počítačom buď sériový port alebo perellal
Viem Assambly lang.
Chcem, aby zobrazenie na monitore počítača, ktorý musí preukázať, počet pulzov, alebo údaje pochádzajú z MCU.
alebo hotový softvér, ktorý dokáže potrebné veci.
môžem použiť aj RS232.

 
pošli túto nie.na UART v správnom formáte, ktorý chcete zobraziť.Použite hyper terminal formáte.

Poznámka: V hyper-ascii hodnoty terminálu sú vytlačené len tak musíte convrt do ascii a pošlite každej číslice saperately

 
AHOJ TOTO ASSEMPLY FILE DISPLAYES "AHMED" IN 9600 N-8-1 SERIAL COMMMUNICATION

Kód:# Include "8051EQU.INC"

, RESET, reset rutinné

. ORG 0H; nájsť na rutinné 00h

AJMP START, skok na START

;

;************************************************* *************************

;

, Prerušuje (nepoužíva sa), miesto rutiny prerušenia pri vhodných

; Pamäťových miest

. ORG 03H; vonkajšie prerušenie 0

RETI

. ORG 0BH; prerušenia časovača 0

RETI

. ORG 13H; vonkajšie prerušenie 1

RETI

. ORG 1BH; timer 1 prerušenia

RETI

. ORG 23H; sériový port prerušenia

RETI

. ORG 25H; lokalizovať začiatku zvyšku programu

;

;************************************************* *************************

;

Inicializácie:; zriadiť kontrolné registre

;

MOV TCON, # 00h

MOV TMOD, # 00h

MOV PSW, # 00h

MOV IE, # 00h; zakázanie prerušení

RET

;

;************************************************* *************************

;

; Real kód začína dole.
Prvé dva postupy sú v prípade meškania, takže sme

; Môže spomaliť blikania, takže môžeme vidieť.
(Bez meškania, je

; Bude blikať tak rýchlo, že bude vyzerať ako by to bolo vždy.

;

;************************************************* *************************

;

DELAYMS:; milisekúnd oneskorenie rutinné

;;

MOV R7, # 00h; dal hodnotu 0 v registri R7

LOOP:

INC R7; zvýšenie R7 jedným (R7 = R7 1)

MOV A, R7; pohybujú hodnoty R7 na Accumlator (známy tiež ako)

CJNE, # 0FFH, LOOP, porovnanie s FF hex (256).
Ak nie rovnaké ísť do LOOP

RET; návrat do tej miery, že táto rutina bola volaná z

;

;************************************************* *************************

;

DELAYHS:; druhej polovice meškania nad milisekúnd meškania

;;

MOV R6, # 00h; dal 0 v registri R6 (R6 = 0)

MOV R5, # 002H; dať 2 v registri R5 (R5 = 2)

LOOPB:

INC R6; zvýšenie R6 jedným (R6 = R6 1)

ACALL DELAYMS; volanie rutiny vyššie.
Kampaň bude prebiehať a vrátiť sa sem.

MOV A, R6; pohybovať v hodnote až R6

Jnz LOOPB, ak nie je 0, choďte na LOOPB

December R5, R5 pokles o jednu.
(R5 = R5 -1)

MOV A, R5; pohybovať v hodnote až R5

Jnz LOOPB, ak nie je 0 potom ísť do LOOPB.

RET

;

;************************************************* *************************

;

START:; hlavný program (pri zapnutí, program začína v tomto mieste)

ACALL inicializovať; zriadiť kontrolné registre

MOV TMOD, # 20H

MOV TCON, # 41h

MOV TH1, # 0FDH

MOV Scone, # 50H

LOOP:

, CPL P1.1; komplement (invertný) P1.0 (vďaka tejto LED zmeniť)

; ACALL DELAYHS, choďte do výšky bežné, že príčinou oneskorenia

CLR TI

MOV SBUF, # 'A'

JNB TI, $

CLR TI

MOV SBUF, # 'H'

JNB TI, $

CLR TI

MOV SBUF, # 'M'

JNB TI, $

CLR TI

MOV SBUF, # 'E'

JNB TI, $

CLR TI

MOV SBUF, # 'D'

JNB TI, $

CLR TI

MOV SBUF, #''

JNB TI, $

CLR TI

MOV SBUF, # 13

JNB TI, $

CLR TI

MOV SBUF, # 10

JNB TI, $AJMP LOOP; ísť do LOOP (vždy skočiť späť na miesto označené LOOP)

. END, koniec programu
 
Vďaka já vím, ako overiť dáta z hyper termianl, ale chcem vidieť tha prichádzajúce dáta ako keď s impulzmi prísť r, zobrazí sa počítadlo, ktoré ukazuje počítadlo znakov a tak ďalej
to by mohlo byť vykonané port LPT

 

Welcome to EDABoard.com

Sponsor

Back
Top