Forum: Mikrocontroller und Digitale Elektronik BTM-222 kleines Programm


von Alexis (Gast)


Lesenswert?

Hallo

Hab nun meinen Atmega (2560) mit dem BTM222 Modul verbunden (UART1) und 
ein kleines Programm erstellt. Die Aufgabe wäre lediglich die gesendeten 
Eingaben wieder zurückzusenden. Doch irgendwie funktioniert das so 
nicht... Könnt ihr mir sagen wo der Fehler liegt?
Freq = 16MHz
BTM222 Baud = 115200





#include <avr/io.h>
#include <inttypes.h>

void USARTInit(void)
{
  unsigned int a= 16;
  UBRR1H = a<<8;
  UBRR1L = a;
  UCSR1A = 0x00;
  UCSR1B = (1<<RXEN1) | (1<<TXEN1);
  UCSR1C = (1<<UCSZ11) | (1<<UMSEL01);
}




char USARTReadChar()
{
   while(!(UCSR1A & (1<<RXC1)))
   {
   }
   return UDR1;
}




void USARTWriteChar(char data)
{
   while(!(UCSR1A & (1<<UDRE1)))
   {
   }
   UDR1=data;
}




int main(void)
{

   char data;
   USARTInit();
   while(1)
   {
      data=USARTReadChar();
      USARTWriteChar(data);
   }
}

von Elektrolyt (Gast)


Lesenswert?

Hast du den BTM bereits initialisiert? Wie baust du die verbindung auf?
Wo willst du das gesendete byte empfangen? ich weiss nicht genau was du 
da aufgebaut hast... So kann dir vermutlich keiner helfen. Wie greifst 
du auf das Modul zu?

von Alexis (Gast)


Lesenswert?

Mittlerweile klappts



Also die Konfiguration:

LaptopA-RS232-MAX232-BTM222   --->   Bluetoothmodul an LaptopB

hat von Anfang an (Telnet) geklappt.



Konfiguration

AVR-Pegelwandler-BTM222   --->   Bluetoothmodul an LaptopB

klappte nur eingeschränkt, das heißt, der AVR spuckte sporadisch 
irgendwelche Zeichen aus (im Telnet auf LaptopB).



Der Fehler lag in der falschen Konfiguration von UBRRH und UBRRL. Hab 
nun alles in Binärform eingegeben um möglichst Fehler zu vermeiden und 
siehe da der AVR spricht mit mir :)

Gruß
Alexis

von Elektrolyt (Gast)


Lesenswert?

Noch spricht er nicht mit dir, du hörst nur dein echo ;-)

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.