Forum: Mikrocontroller und Digitale Elektronik ATXmega128A1 UART


von Paul B. (lev)


Lesenswert?

Hallo liebe Community,

ich bin gerade dabei meinen ATXMEGA128A1 für UART zu inizialisieren,
zuerst möchte ich ein UART verbindung zwischen dem Mikrocontroller und 
meinem PC herstellen.

Als Hyperterminal benutze ich HTerm.

Den Controller programmiere ich mit Atmel6 über einen AVRISP mkII 
Adapter.

Die Tutorials die ich hier im Forum gefunden habe waren teilweise sehr 
hilfreich, jedoch waren diese alle für die atmega8 vorgesehen.

Ich versuche jetzt erstmal an den PC ein Zeichen über UART zu senden.
Meine Frage betrifft die Baudrate.

Ich habe in einigen Hilfestellung gefunden die sich auch leider auf den 
atmega8 bezogen haben.
Im USART Port befinden sich 2 Register zur Baudratenbeschreibung jedoch 
weis ich nicht was ich damit anfangen soll.. ^.-

das hier ist mein Code bis jetzt..
1
#define F_CPU      32786
2
#define BAUD       9600
3
4
int main(void)
5
{
6
  initBoard();
7
  USARTE0.CTRLA = 0x01;
8
  USARTE0.DATA = 'r';
9
        return 0;
10
}

Um meine UART zu konfigurieren habe ich folgende Befehle bis dato 
verwendet.
1
void initBoard() {
2
  
3
  USARTE0.CTRLB = USART_TXEN_bm | USART_RXEN_bm; 
4
        //TXEN/RXEN setzen
5
6
  PORTE.PIN0CTRL = 0x00; 
7
  PORTE.PIN1CTRL = 0x01;
8
        //Eingang und Ausgangs Pins setzen
9
  
10
  //PORTE.DIRSET      = PIN3_bm;   // ausgang
11
  //PORTE.DIRCLR      = PIN2_bm;   // eingang
12
13
  USARTE0.BAUDCTRLA =  ?
14
  USARTE0.BAUDCTRLB =  ?
15
  
16
         USARTE0.CTRLC = USART_CMODE_ASYNCHRONOUS_gc|USART_PMODE_ODD_gc | USART_CHSIZE_8BIT_gc; 
17
  
18
   sei(); 
19
}
20
21
ISR(USARTE0_RXC_vect) {}

Ich würde mich über eine Rückmeldung freuen.

Da ich noch ein Anfänger bin, bitte ich um recht konstruktive Kritik 
oder Anregung bzw Hilfe.

Beste Grüße!

: Verschoben durch User
von Gerhard G. (g_g)


Lesenswert?

Hallo,


Paul Brenner schrieb:

Da ich noch ein Anfänger bin, bitte ich um recht konstruktive Kritik
oder Anregung bzw Hilfe.

Dann schau dir das mal an:


http://kampis-elektroecke.de/?page_id=1363


Gruß G.G.

von Paul B. (lev)


Lesenswert?

super!

Damit kann ich was anfangen.

Vielen Dank!

von HannesK (Gast)


Lesenswert?

Ansonsten guck dir mal den code aus dem Atmel Software Framework an 
(asf.atmel.com) die haben kompletten Treiber für USART, da kannst du 
viele Funktionen von verwerten.

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.