Hi all, I've been trying to print out a simple string. I've linked uartstdio.c to my project folder. when i try to use UARTprintf, the my whole code stops working. when i comment out the UARTprintf statement, the rest of the UARTCharPut works. any idea why? thanks in advance.
#include <stdint.h> #include <stdbool.h> #include <string.h> #include "inc/hw_memmap.h" #include "driverlib/fpu.h" #include "driverlib/gpio.h" #include "driverlib/interrupt.h" #include "driverlib/pin_map.h" #include "driverlib/rom.h" #include "driverlib/sysctl.h" #include "driverlib/systick.h" #include "driverlib/uart.h" #include "utils/uartstdio.h" #include "utils/ustdlib.h" #ifdef DEBUG void __error__(char *pcFilename, unsigned long ulLine) { } #endif void ConfigureUART(void) { ROM_SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOA); ROM_SysCtlPeripheralEnable(SYSCTL_PERIPH_UART0); ROM_GPIOPinConfigure(GPIO_PA0_U0RX); ROM_GPIOPinConfigure(GPIO_PA1_U0TX); ROM_GPIOPinTypeUART(GPIO_PORTA_BASE, GPIO_PIN_0 | GPIO_PIN_1); ROM_SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOB); ROM_SysCtlPeripheralEnable(SYSCTL_PERIPH_UART1); ROM_GPIOPinConfigure(GPIO_PB0_U1RX); ROM_GPIOPinTypeUART(GPIO_PORTB_BASE, GPIO_PIN_0 | GPIO_PIN_1); UARTClockSourceSet(UART0_BASE, UART_CLOCK_PIOSC); UARTStdioConfig(0, 38400, 16000000); UARTClockSourceSet(UART1_BASE, UART_CLOCK_PIOSC); UARTStdioConfig(1, 38400, 16000000); } int main(void) { uint8_t i, j, k; int8_t rxchar; uint8_t msgtype[5]; uint8_t GLLtype[] = {'G', 'P', 'G', 'L', 'L'}; uint8_t ZDAtype[] = {'G', 'P', 'Z', 'D', 'A'}; //uint32_t latlong[8]; //uint32_t datetime[8]; //uint32_t ui32Index; ROM_SysCtlClockSet(SYSCTL_SYSDIV_4 | SYSCTL_USE_PLL | SYSCTL_OSC_MAIN | SYSCTL_XTAL_16MHZ); ConfigureUART(); UARTprintf("GPS Reading\n"); while (1) { rxchar = UARTCharGet(UART1_BASE); if (rxchar == -1) { UARTCharPut(UART0_BASE, 'F'); break; } else if (rxchar == '$') { for (i = 0; i < 5; i++) { msgtype[i] = UARTCharGet(UART1_BASE); UARTCharPut(UART0_BASE, msgtype[i]); if (msgtype[i] == GLLtype[i]) { j++; } if (msgtype[i] == ZDAtype[i]) { k++; } } } else { UARTCharPut(UART0_BASE, rxchar); } } }