Uart mit At89s51

Gast #1894799
Lesenswert?

hallo miteinander

habe folgendes problem, ich habe einen µCOntroller und will einfach mit 
empfangenen a oder b den port toggeln ! ich verwende hterm ein usb to 
rs232 und natürlich max232



#include <at89x51.h>

char Ausgabe[]="Dieser Satz wird ausgegeben";
char uart_data;
int Zaehler = 0;
void data_ (char);
void main (void)
{
  TMOD = 0x20; //Timer1 im Mode2 (8-Bit mit Autoreload)
  TH1  = 232;   //9600 Baud bei 11,0592 mhz quartz
  TL1  = 232;

  PCON = PCON & 0x7F;  //SMOD1=0, SMOD0=0, restliche Bits unverädert
  SCON = 0x50; //UART im Mode1, Empfang aus

  TR1 = 1;  //Timer1 starten
  ES  = 1;    //serieller Interrupt ein
  EA  = 1;  //Interrupt Glabal ein

  while(1)


}

void serial_IT(void) interrupt 4
{
if (RI == 1)
{
RI = 0;
uart_data=SBUF;
data_(uart_data);

}

}

void data_ (char data__)
{

switch(data__)
{
case'a': P2=0xFF; break;
case'b': P2=0x00; break;

}


}






aber irgendwie tut sich gar nix -.-



vielleicht ein programmfehler???

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren