Hallo Ich habe folgendes dringendes Problem: Ich benutze einen AT89S8252 mit einem 11.059MHz Quarz. Mit diesem möchte ich über UART ein Bluetooth Modul ansteuern. uC und Bluetooth Modul sind richtig mit einander verbunden, aber irgendwie klappt die Kommunikation nicht. Ich kann nicht auf die UART-Schnittstelle schreiben und auch nicht von ihr lesen. Das Programm für dem uC ist in Keil uVision2 geschrieben. Die UART-Schnittstelle hat folgende Parameter: 9600 Baud, 8Datenbits, no Parity, 1 Stopbit. Hier ist mein Programm (At898252.h ist im Anhang): //******************************************************************* #include"AT898252.h" #include<stdio.h> #include<stdlib.h> #include<intrins.h> #include<ctype.h> #include<string.h> void init (void) { //***************************************************** //**** **** //****Konfigurieren der seriellen Schnittstelle am **** //**** Mikrocontroller **** //**** 9600Baud,8 Datenbits,no Parity,1Stopbit **** //**** **** //***************************************************** PCON = 0x80; TMOD = 0x22; TH1 = 250; TL1 = 250; TMOD = 0x22; TR1 = 1; SCON = 0x52; ET1 = 0; } void main (void) { char buf[10]; init(); while (1) { // buf mit 0 überschreiben memset (buf, 0, sizeof (buf)); // 'ATZ\x0D' auf die UART-Schnittstelle ausgeben printf("ATZ\x0D"); // empfangen von der UART-Schnittstelle scanf("%s",buf); // Empfangene Zeichen auswerten if (buf[2] == 'O' && buf[3] == 'K') { P2_0 = 1; P2_1 = 0; } else { P2_0 = 0; P2_1 = 1; } } } //******************************************************************* Bitte helft mir ich bin schon langsam verzweifelt! Gruß Nick1977
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.