TM4C1294 uart功能使用

今天我们介绍tm4c板的uart功能,关于uart的基本知识和相关资料,网上都有详细的帖子,我们主要来说明如何在板子上使用。


主要使用的函数有以下几个:

SysCtlClockFreqSet();//设置系统的晶振频率
SysCtlPeripheralEnable();//使能板子的相应外设
IntMasterEnable();//开启进程中断
GPIOPinConfigure();
GPIOPinTypeUART();//将引脚设置为uart模式

下面的这个函数可以用来配置板子的uart功能:

void uartconfigure(){
    g_ui32SysClock = SysCtlClockFreqSet((SYSCTL_XTAL_25MHZ |
                                         SYSCTL_OSC_MAIN |
                                         SYSCTL_USE_PLL |
                                     SYSCTL_CFG_VCO_480),120000000);
    SysCtlPeripheralEnable(SYSCTL_PERIPH_UART0);
    SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOA);//uart0对应的外设引脚为PA0,PA1
    //设置PA0,PA1为uart引脚
    GPIOPinConfigure(GPIO_PA0_U0RX);
    GPIOPinConfigure(GPIO_PA1_U0TX);
    GPIOPinTypeUART(GPIO_PORTA_BASE, GPIO_PIN_0 | GPIO_PIN_1);
    //设置波特率115200,数据位 8 ,校验位 None ,停止位 1 ,8——N——1模式
    UARTConfigSetExpClk(UART0_BASE, g_ui32SysClock, 115200,
                            (UART_CONFIG_WLEN_8 |  UART_CONFIG_STOP_ONE |
                             UART_CONFIG_PAR_NONE));
    //开启uart0中断
    IntEnable(INT_UART0);
    UARTIntEnable(UART0_BASE, UART_INT_RX | UART_INT_RT);   
}

我们在使用uart向串口发送数据接收数据时,一般可以使用以下几个函数

UARTprintf();  //向串口打印字符串,类似C语言
UARTgets();
UARTCharPutNonBlocking();//向串口发送字符
UARTChargetNonBlocking();

使用上面前两个函数需要#include "utils/uartstdio.h",并且将uartstdio.c复制到main()同级目录下
在实际中,如果用上面的配置方式,UARTprintf()函数不能正常使用,在上面配置函数最后加入

UARTStdioConfig(0, 115200,  g_ui32SysClock);

则可以正常使用,最后查看UARTStdioConfig()函数的声明,发现其内部是由UARTConfigSetExpClk()函数实现的。

猜你喜欢

转载自blog.csdn.net/changeworldjust/article/details/80875278
今日推荐