At89S8252:Probleme mit UART (in Keil uVision2)

Gast #300818
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
Angehängte Dateien:

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