TI中文支持网
TI专业的中文技术问题搜集分享网站

tm4c123的uart问题

在自带程序uart0的基础上修改成uart3接受失败

#include <stdint.h>
#include <stdbool.h>
#include "inc/hw_ints.h"
#include "inc/hw_memmap.h"
#include "driverlib/debug.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/uart.h"

// 这个示例应用程序利用UART来回显文本。 UART上收到的所有字符都会发送回UART。

#ifdef DEBUG
void
__error__(char *pcFilename, uint32_t ui32Line)
{
}
#endif

// UART中断处理程序
void UARTIntHandler(void)
{
    uint32_t ui32Status;
    // 获取中断状态。
    ui32Status = ROM_UARTIntStatus(UART3_BASE, true);
    // 清除声明的中断。
    ROM_UARTIntClear(UART3_BASE, ui32Status);
    // 在接收FIFO中有字符时循环。
    while(ROM_UARTCharsAvail(UART3_BASE))
    {
        // 从UART读取下一个字符并将其写回UART。
        ROM_UARTCharPutNonBlocking(UART3_BASE,ROM_UARTCharGetNonBlocking(UART3_BASE));
        GPIOPinWrite(GPIO_PORTF_BASE, GPIO_PIN_2, GPIO_PIN_2);
        // 延迟1毫秒。 每个SysCtlDelay约为3个时钟。
        SysCtlDelay(SysCtlClockGet() / (1000 * 3));
        GPIOPinWrite(GPIO_PORTF_BASE, GPIO_PIN_2, 0);
    }
}
void UARTSend(const uint8_t *pui8Buffer, uint32_t ui32Count)
{
    // 在发送更多字符时循环
    while(ui32Count–)
    {
        ROM_UARTCharPutNonBlocking(UART3_BASE, *pui8Buffer++);
    }
}

int main(void)
{
    char cThisChar;
    SysCtlClockSet(SYSCTL_SYSDIV_1 | SYSCTL_USE_PLL | SYSCTL_OSC_MAIN |SYSCTL_XTAL_16MHZ);
    SysCtlPeripheralEnable(SYSCTL_PERIPH_UART3);
    SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOC);
    GPIOPinConfigure(GPIO_PC6_U3RX);
    GPIOPinConfigure(GPIO_PC7_U3TX);
    GPIOPinTypeUART(GPIO_PORTC_BASE,GPIO_PIN_6|GPIO_PIN_7);
    UARTConfigSetExpClk(UART3_BASE,SysCtlClockGet(),115200,(UART_CONFIG_WLEN_8|UART_CONFIG_STOP_ONE|UART_CONFIG_PAR_NONE));
    UARTCharPut(UART3_BASE,'!');
    while(1)
    {
    cThisChar=UARTCharGet(UART3_BASE);
    UARTCharPut(UART3_BASE,cThisChar);
    }
    return(0);
}

xyz549040622:

串口的使能和串口中断的使能在哪呢?
IntEnable();
UARTIntEnable();

赞(0)
未经允许不得转载:TI中文支持网 » tm4c123的uart问题
分享到: 更多 (0)