Hallo Ich habe ein kleines Problem. Ich möchte ein Display ansteuern, was auf der Platine verbunden ist mit dem Grafiktreiber Picaso SGC und der mit dem XMega 128A3 (TX>>D3;RX>>D2;RESET>>D1) Das ganze ist halt mit USART zu realisieren, aber es tut sich leider nichts. Könnts ihr vll mal auf den Programmcode schauen, ob ich irgendwas vergessen habe. LG Wolfi
1 | USARTD0.DATA = 0x42, 0xFF, 0xFF; |
Was soll die Zeile machen? Die 3 Byte nacheinander verschicken? Das musst du schon selber machen. Drei mal das jeweilige Byte ins DATA Register schreiben und warten bis das entsprechende "Übertragung erfolgreich" Flag gesetzt ist.
Hallo, du must den USART ein bisschen Zeit gönnen! So in etwa: while(!(USARTD0.STATUS & USART_DREIF_bm)); USARTD0.DATA = data; while(!(USARTD0.STATUS & USART_DREIF_bm)); USARTD0.DATA = data1; while(!(USARTD0.STATUS & USART_DREIF_bm)); USARTD0.DATA = data2; oder halt das Ganze in eine intelligente Schleife verpacken. Gruß G.G.
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.