Hi zusammen, ich möchte gerne UART auf meinem Stellaris Launchpad (LM4F120) nutzen, sodass ich Daten über die PIN header ausgeben kann. Und das ganze in ASM. Referenzcode für UART0 habe ich hier gefunden: http://users.ece.utexas.edu/~valvano/arm/UART2.s Jedoch wird dabei PORTA genutzt (und somit über USB ausgegeben). Jedoch möchte ich die Daten über die PIN header auf dem Board ausgeben. Also wollte ich UART1 über PORTB (PB0 - Rx, PB1, Tx; siehe http://www.element14.com/community/servlet/JiveServlet/downloadBody/52915-102-1-267376/User_Manual_1.pdf, Tabelle 2-3) nutzen. Dazu habe ich lediglich die Konstantenbelegung folgendermaßen geändert: [asm]NVIC_EN0_INT5 EQU 0x00000020 ; Interrupt 5 enable NVIC_EN0_R EQU 0xE000E100 ; IRQ 0 to 31 Set Enable Register NVIC_PRI1_R EQU 0xE000E404 ; IRQ 4 to 7 Priority Register GPIO_PORTB_AFSEL_R EQU 0x40005420 GPIO_PORTB_DEN_R EQU 0x4000551C GPIO_PORTB_AMSEL_R EQU 0x40005528 GPIO_PORTB_PCTL_R EQU 0x4000552C UART1_DR_R EQU 0x4000D000 UART1_FR_R EQU 0x4000D018 UART1_IBRD_R EQU 0x4000D024 UART1_FBRD_R EQU 0x4000D028 UART1_LCRH_R EQU 0x4000D02C UART1_CTL_R EQU 0x4000D030 UART1_IFLS_R EQU 0x4000D034 UART1_IM_R EQU 0x4000D038 UART1_RIS_R EQU 0x4000D03C UART1_ICR_R EQU 0x4000D044 UART_FR_RXFF EQU 0x00000040 ; UART Receive FIFO Full UART_FR_TXFF EQU 0x00000020 ; UART Transmit FIFO Full UART_FR_RXFE EQU 0x00000010 ; UART Receive FIFO Empty UART_LCRH_WLEN_8 EQU 0x00000060 ; 8 bit word length UART_LCRH_FEN EQU 0x00000010 ; UART Enable FIFOs UART_CTL_UARTEN EQU 0x00000001 ; UART Enable UART_IFLS_RX1_8 EQU 0x00000000 ; RX FIFO >= 1/8 full UART_IFLS_TX1_8 EQU 0x00000000 ; TX FIFO <= 1/8 full UART_IM_RTIM EQU 0x00000040 ; UART Receive Time-Out Interrupt ; Mask UART_IM_TXIM EQU 0x00000020 ; UART Transmit Interrupt Mask UART_IM_RXIM EQU 0x00000010 ; UART Receive Interrupt Mask UART_RIS_RTRIS EQU 0x00000040 ; UART Receive Time-Out Raw ; Interrupt Status UART_RIS_TXRIS EQU 0x00000020 ; UART Transmit Raw Interrupt ; Status UART_RIS_RXRIS EQU 0x00000010 ; UART Receive Raw Interrupt ; Status UART_ICR_RTIC EQU 0x00000040 ; Receive Time-Out Interrupt Clear UART_ICR_TXIC EQU 0x00000020 ; Transmit Interrupt Clear UART_ICR_RXIC EQU 0x00000010 ; Receive Interrupt Clear SYSCTL_RCGC1_R EQU 0x400FE104 SYSCTL_RCGC2_R EQU 0x400FE108 SYSCTL_RCGC1_UART1 EQU 0x00000002 ; UART1 Clock Gating Control SYSCTL_RCGC2_GPIOA EQU 0x00000002 ; port A Clock Gating Control[asm] Leider kommt bei mir auf dem Terminal nix an, obwohl ab und zu die grüne Rx LED auf dem USB-seriell-Konverter zuckt. Habt ihr eine Ahnung, wo das Problem liegen könnte? Danke
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.