在线时间587 小时
UID3253488
注册时间2016-3-21
NXP金币0

TA的每日心情 | 怒 2017-1-4 08:05 |
---|
签到天数: 11 天 连续签到: 1 天 [LV.3]偶尔看看II
版主
  
- 积分
- 2569

- 最后登录
- 2019-3-28
|
本帖最后由 技术范儿 于 2016-5-7 14:39 编辑
最近在研究FSLK64的IDLE接收中断出现问题,请大家帮忙看看,实现的功能为串口接收完一帧数据后马上将其发出来,但是,芯片复位后带一次收到的数据在缓冲区是正确的(用仿真器看过了),但是从第二帧开始就错位了,下面为中断处理函数代码,图片为错误的截图,请用过的过来指点一下
第一次
- void UART1_RX_TX_IRQHandler(void)
- {
- uint8_t data;
- //static uint16_t i;
- /* If new data arrived. */
- if ((kUART_RxDataRegFullFlag ) & UART_GetStatusFlags(UART1))
- {
- data = UART_ReadByte(UART1);
- if(USART1_RevCount<255)
- {
- USART1_RevTab[USART1_RevCount++]=data;
- }
- }
- if ((kUART_IdleLineFlag) & UART_GetStatusFlags(UART1))
- {
- UART_WriteBlocking (UART1,USART1_RevTab,USART1_RevCount);
- UART_ClearStatusFlags (UART1,kUART_IdleLineFlag);
- // UART_WriteByte (UART1,USART1_RevCount);
- USART1_RevCount = 0;
- }
- }
复制代码
|
|