完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本帖最后由 一只耳朵怪 于 2018-6-7 15:15 编辑 uart0可以正常收发,但是uart3发送的时候碰到延时函数会挂在那,没碰到还可以发送,并且为什么接收也不行 #include #include #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" #ifdef DEBUG void __error__(char *pcFilename, uint32_t ui32Line) [ ] #endif signed int GsmRcv[50]; uint8_t GsmAtFlag = 0; uint8_t GsmRcvCnt = 0; //***************************************************************************** // // The UART interrupt handler. // //***************************************************************************** void UARtintHandler(void) [ uint32_t ui32Status; ui32Status = ROM_UARTIntStatus(UART3_BASE, true); // ui32Status = ROM_UARTIntStatus(UART0_BASE, true); //ROM_UARTIntClear(UART0_BASE, ui32Status); ROM_UARTIntClear(UART3_BASE, ui32Status); GsmRcvCnt = 0; // while(ROM_UARTCharsAvail(UART0_BASE)) while(ROM_UARTCharsAvail(UART3_BASE)) [ //GsmRcv[GsmRcvCnt]=ROM_UARTCharGetNonBlocking(UART0_BASE); GsmRcv[GsmRcvCnt]=ROM_UARTCharGetNonBlocking(UART3_BASE); // ROM_UARTCharPutNonBlocking(UART0_BASE, ROM_UARTCharPutNonBlocking(UART3_BASE, GsmRcv[GsmRcvCnt]); GsmRcvCnt++; GPIOPinWrite(GPIO_PORTF_BASE, GPIO_PIN_2, GPIO_PIN_2); SysCtlDelay(SysCtlClockGet() / (1000 * 3)); GPIOPinWrite(GPIO_PORTF_BASE, GPIO_PIN_2, 0); ] ] //·¢ËÍ×Ö·û void Uart1Send(uint8_t c) [ //UARTCharPut(UART0_BASE, c); UARTCharPut(UART3_BASE, c); ] //·¢ËÍ×Ö·û´® void Uart1Sends(uint8_t *str) [ while(*str!=' |