我用飞思卡尔的K60调试一个UART接收,但是k60芯片的接收数据寄存器只有一个字节,我那个模块在 70
我用飞思卡尔的K60调试一个UART接收,但是k60芯片的接收数据寄存器只有一个字节,我那个模块在那边却一下就要发送一个比较数长的,每次读那个接收数据寄存器只能读到其中一...
我用飞思卡尔的K60调试一个UART接收,但是k60芯片的接收数据寄存器只有一个字节,我那个模块在那边却一下就要发送一个比较数长的,每次读那个接收数据寄存器只能读到其中一个数据,该如何解决?中断方式还是DMA方式?有大神能指导一下吗?
展开
3个回答
展开全部
写一个接收中断函数,在里面用数组把接收到的数存起来。
void UART_Init(void)
{
uart_init_struct.UART_Uartx = UART4; //使用UART4
uart_init_struct.UART_BaudRate = 115200; //设置波特率115200
uart_init_struct.UART_RxPin = PTE25; //接收引脚为PTE25
uart_init_struct.UART_TxPin = PTE24; //发送引脚为PTE24
uart_init_struct.UART_RxIntEnable=TRUE;
uart_init_struct.UART_RxIsr = uart_isr;//接收中断函数
LPLD_UART_Init(uart_init_struct);
LPLD_UART_EnableIrq(uart_init_struct);
}
void uart_isr(void)//中断函数里做处理
{
recv[i]=GetChar(UART4);
i++;
}
//本例程用的LPLD库
国科安芯
2024-10-28 广告
2024-10-28 广告
TJA1042T/3是N电商平台P Semiconductors推出的第三代高速CAN收发器,专为汽车行业的高速CAN应用设计。它具备改进的电磁兼容性(EMC)和静电放电(ESD)性能,支持CAN FD快速阶段的可靠通信,数据速率高达5 M...
点击进入详情页
本回答由国科安芯提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询