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

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.