Forum: Mikrocontroller und Digitale Elektronik initialisierung von RS232


von BBZ (Gast)


Lesenswert?

Folgendes problem:

Ich muss über RS232 zwischen meinem AT89C51AC3 und dem
Hyperterminal eine Verbindung aufbauen. Ich will mit einer
geschwindigkeit von 9600 Baud übertragen. wie muss ich jetzt meine
serielle schnittstelle initialisieren, damit das funktioniert?

Ich habe mich ein bisschen durch das Datenblatt des uC geackert aber
dieses war mir nur sehr schwer verständlich.

ich habe einmal folgende initialisierung vorgenommen:

//Serielle Schnittstelle initialisieren
PCON |= 0x80;  //SMOD1 = 1/ doppelte baudrate in Mode 1,2 oder 3
SCON |= 0x50;  //SM0 = 0/ SM1 = 1 -> 8Bit UART Variabel
    //REN = 1/ TB8 = 0/RB8 = 0
//Timer 2 für baudrate
RCLK = 1;
TCLK = 1;
T2CON |= 0x02;  //C/#T2 = 0
EXEN2 = 0;  //Externes enable signal ausschalten
T2MOD |= 0x01;  //Auto reload mode
RCAP2H = 0xFF;  //Reload wert für Highbyte
RCAP2L = 0xD9;  //Reload Wert für Lowbyte
TR2 = 1;  //Timer 2 starten

Ich muss den Timer 2 benutzen da ich die Timer0 & 1 schon anderwertig
verwende.
was habe ich also alles falsch gemacht und was habe ich vergessen?
ich wäre euch für eure hilfe sehr verbunden, danke.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.