查看: 2701|回复: 3

[求助] 关于KE06的串口接收中断问题

[复制链接]

该用户从未签到

1

主题

3

帖子

0

新手上路

Rank: 1

积分
41
最后登录
2019-12-1
发表于 2018-3-5 16:17:18 | 显示全部楼层 |阅读模式
最近在用ke06的DEMO测试他的串口中断程序,发现官方库里没有带串口接收中断,于是自己加了相关的语句,但是测试发现在9600波特率时数据接收不完全,或者中断被打断;但在115200时没有问题,有大神能帮忙看一下啥问题吗?相关代码截图已上传,采用的是问答式通信,即发一条指令给mcu,mcu中断接受后回传相关的数据,现在就是在低波特率下接受中断有问题,所以请将吧里面的大神们,谢谢
我知道答案 目前已有3人回答
回复

使用道具 举报

该用户从未签到

723

主题

6382

帖子

0

超级版主

Rank: 8Rank: 8

积分
25454
最后登录
2025-9-4
发表于 2018-3-6 09:27:49 | 显示全部楼层
你可以手动算一下波特率设置9600和115200时,包含了多少范围的误差率,看看是否9600有点偏大,如果是,你可以重新配置一下UART时钟源频率,降低错误率
回复 支持 反对

使用道具 举报

该用户从未签到

1

主题

3

帖子

0

新手上路

Rank: 1

积分
41
最后登录
2019-12-1
 楼主| 发表于 2018-3-6 10:34:53 | 显示全部楼层
应该不是波特率误差造成的,应为我主动发送时,波特率9600没问题,应该还是逻辑哪里有问题
主程序一直扫描UART1_ReceviceData(); 将接受缓冲器里的数据传到我自己的Receive_buf中,不过就是这样做出现了上述问题

void UART1_ReceviceData(void)
{
    u8IsReceiveDone = 0;
    UART_ReceiveInt(UART1,Receive_buf,RECEIVE_BUF_LEN);
}

回复 支持 反对

使用道具 举报

该用户从未签到

1

主题

3

帖子

0

新手上路

Rank: 1

积分
41
最后登录
2019-12-1
 楼主| 发表于 2018-3-6 13:12:25 | 显示全部楼层
还有多字节传输的断帧问题,在传输过程中由于会经常性的进入其他中断,而无法使UART传输数据有规律,这个就很烦了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|恩智浦技术社区

GMT+8, 2025-9-8 01:00 , Processed in 0.086124 second(s), 24 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

快速回复 返回顶部 返回列表