LPC 2148 UART THR Register bleibt leer

Gast #3034517
Lesenswert?

Hi,

ich habe ein Problem beim Senden von Daten via UART.
Target ist ein LPC 2148 von NXP. IDE ist Keil uVision4. Debugger ist 
Keil uLink2.
Die Threads die sich hier damit befassen habe ich gelesen, jedoch hat 
davon nichts zur Lösung geführt.(Ich hab auch schon andere Code Examples 
getestet)

Im Anhang habe ich Screenshots angefügt auf denen man sehen kann das der 
UART initialisiert ist. (Screen1)

Dann habe ich das nächste Statement ausgeführt um ein Byte in das TX 
Holding Register zu schreiben, wie man jedoch beim Debuggen sieht tut 
sich da nichts. (Screen2)

Ich verwende folgenden Code zum Initialisieren und Senden von Daten.
Die Funktion wird in main aufgerufen.
1
void init_uart (void)
2
{
3
  int Divider,i;
4
  int Baudrate = 9600;
5
  
6
  PINSEL0 |= 0x00000005;        //RX und TX aktivieren
7
  U0FCR = 0x00000007;           //Fifo enable
8
  U0LCR = 0x00000083;           // Divisor latches freischalten
9
  Divider = (60000000 /16)/Baudrate;
10
  U0DLM = Divider / 256;
11
  U0DLL = Divider % 256;        //Baud Rate setzen
12
  U0LCR = 0x00000003;           //Divisor Latches sperren
13
  
14
  i = 0;
15
  
16
  while(i<=1000)
17
  {
18
  U0THR = 'h';                  //THR befüllen
19
  while (!(U0LSR && 0x60));     //THRE TEMT gesetzt?
20
  i++;
21
  IOCLR0 = 0xFFFFFFFF;
22
  delay(1200000);
23
         IOSET0 = 0xFFFFFFFF;
24
  delay(1200000);
25
  }
26
}

Hat jemand eine Idee was ich da falsch mache ?

Vielen Dank schonmal.

Grüße,
Stefan
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