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???
Versuch erstmal Senden. Versuchs erstmal ohne Interrupt. Versuch das Empfangene + 1 zu senden. Peter
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.