大家好、朋友、我正在尝试使用 UART 使用 TM4C1294Xl 的中断功能。 换句话说,我想在发送字符后使用 ISR 打开 LED。
#include #include #include #include "inc/hw_ints.h" #include "inc/hw_memmap.h" #include "inc/hw_types.h" #include "driverlib/interrupt.h" #include "driverlib/pin_map.h" #include "driverlib/sysctl.h" #include "driverlib/uart.h" ; include "uidt_intrap.h"#include "uidt/inuidt_inuidt.h (void)* void uid/u.u.id/u.u.32 uinteg /*将时钟设置为以120MHz 运行*/ G_ui32SysClock= SysCtlClockFreqSet ((SYSCTL_XTAL_25MHz | SYSCTL_OSC_MAIN | SYSCTL_USE_PLL | SYSCTL_CFG_VCO_480)、120000000); char my_char ='J'; SysCtlPeripheralEnable (SYSCTL_Periph_GPION); GPIOPinTypeGPIOOutput (GPIO_PORTN_BASE、GPIO_PIN_1); GPIOPinWrite (GPIO_PORTN_BASE、GPIO_PIN_1、0x00); /*初始化 UART*/的 GPIOC SysCtlPeripheralEnable (SYSCTL_Periph_GPIOC); /*启用 UART7*/ SysCtlPeripheralEnable (SYSCTL_Periph_UART7); /*为端口 C*/配置 GPIO 引脚 GPIOPinConfigure (GPIO_PC4_U7RX); GPIOPinConfigure (GPIO_PC5_U7TX); /*为 UART 功能设置 GPIOC 引脚*/ GPIOPinTypeUART (GPIO_PORTC_BASE、GPIO_PIN_4 | GPIO_PIN_5); /*设置 UART7配置*/ UARTConfigSetExpClk (UART7_BASE、g_ui32SysClock、19200、 (UART_CONFIG_WLEN_8 | UART_CONFIG_STOP_ONE | UART_CONFIG_PAR_NONE); IntMasterEnable(); UARTIntEnable (UART7_BASE、UART_INT_TX); UARTIntRegister (UART7_BASE、UART7Isr); UARTCharPutNonBlocking (UART7_BASE、my_char); 返回0; } void UART7Isr (void){ UARTIntClear (UART7_BASE、UART_INT_TX); GPIOPinWrite (GPIO_PORTN_BASE、GPIO_PIN_1、GPIO_PIN_1); }
到目前为止、LED 未亮起。
