Bitbanging kodas Pagalba 8.051!

N

nerdspot

Guest
Aš truputį banging kodas internetu iš dunfield svetainę, sorta kartą jis ir ją naudojo mano AT89C51.I'm using 3.5795Mhz laikrodis ir 300 bodų perdavimo spartą.Ar kas nors gali man padėti atlikti su svarbių bitų banging kodas?Siunčia skaičius 9 ir ją gauna kitoje 8.051 ir rodo apie port0 rezultatas 8 LED's.Dabar problema yra, kai aš jį prijungti jo, visos lemputės šviesos daugiau, o kartais jie įsižiebti atsitiktinai.Please help ..
Atsiprašome, bet jums reikia prisijungęs, kad galėtumėte peržiūrėti šį priedą

 
Jūsų kodas
Kodas

; Rx kitoje AT89C51

SIŲSTI kongresas P1.0; siuntimo šis kaištis

Recv kongresas P1.1; gauna šį PIN

; Serijos Baud dydis nustatomas procesoriaus kristalas, ir

; Ši konstanta, kuri apskaičiuojama taip: (((crystal / Baud) / 12) - 5) / 2

BITTIM kongresas 494, (((3579545/300) / 12) - 5) / 2

;

getc:

loop:

JB recv, kilpa; Palaukite pradžios bitas

MOV R0, # BITTIM / 2; Palaukite, 1 / 2 šiek tiek laiko

loop1:

DJNZ R0, loop1; imties vidutinio

JB recv, getc; Situacijos L.

MOV R1, # 8; perskaitykite 8 bitai

getc1:

MOV R0, # BITTIM; palaukti visą šiek tiek laiko

loop2:

DJNZ R0, loop2; DUOMENŲ bitų

MOV C, recv, skaityti bitų

Krc; Shift ją ACC

DJNZ R1 getc1; skaityti 8 bitai

MOV P0,PABAIGA
 
tai kaip man rodyti jokių duomenų?Aš kilpa TxD ir RxD instrukcijas?mano modifikacija bitbanging kodas teisingas?Skelbimas po 6 minučių:taip, su $, tai jums kilpa atgal į pirmąjį adresą ..tiesa?bet aš turiu padaryti, kad prie siųstuvo, taip pat ar yra įpratęs būti bet kokie duomenys buvo ištaisyti?

 
Cool ..Thx vyras ..pasistengsime ją rytoj ir po ..

for the transmitting too?

Ar turiu įdėti SJMP $
už perdavimo per?

 
Kada galiu paleisti kodą (su pakeitimais kodas) ir perdavimą bei gavimą UC, ne LED švytėti.
Atsiprašome, bet jums reikia prisijungęs, kad galėtumėte peržiūrėti šį priedą

 
Transmitter:
Kodas

; Tx iš vienos AT89C51

SIŲSTI kongresas P1.0; siuntimo šis kaištis

Recv kongresas P1.1; gauna šį PIN

; Serijos Baud dydis nustatomas procesoriaus kristalas, ir

; Ši konstanta, kuri apskaičiuojama taip: (((crystal / Baud) / 12) - 5) / 2

BITTIM kongresas 494, (((3579545/300) / 12) - 5) / 2

;

; Siuntimo požymį per TXD linijaputc:

MOV 9

CLR SIŲSTI; Numesti eilutės pradžios bitas

ACALL bittime; pradžios bitas

MOV R1, # 8; Siųsti 8 bitai

putc1:

Krc; Perkelti į kitą bitų vykdyti

MOV Siųsti C; Parašyk Kitas bitų

ACALL bittime, duomenų bitai

DJNZ R1 putc1; rašyti 8 bitai

SETB SIŲSTI; Nustatyti linija aukštas

ACALL bittime; stop bit

SJMP putcbittime:

MOV R0, # BITTIM; palaukti visą šiek tiek laiko

DJNZ R0, $

RETPABAIGA
 
Labas,

budhy rašė:

Įjunkite imtuvą tiekimo pirma, po to, kad siųstuvas pasukti
 

Welcome to EDABoard.com

Sponsor

Back
Top