Forum: Mikrocontroller und Digitale Elektronik At89S8252:Probleme mit UART (in Keil uVision2)


von Nick1977 (Gast)


Angehängte Dateien:

Lesenswert?

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
Noch kein Account? Hier anmelden.