打印
[技术问答]

芯唐N32905 串口中断问题

[复制链接]
1436|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 fendoushuai 于 2018-3-16 14:56 编辑

已解决,中断中使用的打印语句导致中断响应错误

超过16个数.png (60.36 KB )

超过16个数.png

15个.png (60.23 KB )

15个.png

串口中断函数.png (33.22 KB )

串口中断函数.png

串口初始化.png (40.83 KB )

串口初始化.png
沙发
小明的同学| | 2018-3-15 18:05 | 只看该作者
16字节的缓冲,那么一次接收16字节数据,当你把这些数据读完事,U1LSR就被清零了,告诉你缓冲区没有数据了,你读取完缓冲中的数据的过程中,并没有收到新的数据。

使用特权

评论回复
板凳
小明的同学| | 2018-3-15 18:05 | 只看该作者
所以是你用法的问题,你不可能这么一次性接收一堆,要看缓冲区大小

使用特权

评论回复
地板
fendoushuai|  楼主 | 2018-3-16 08:30 | 只看该作者
小明的同学 发表于 2018-3-15 18:05
所以是你用法的问题,你不可能这么一次性接收一堆,要看缓冲区大小

那缓冲区的大小是通过什么来修改的?

使用特权

评论回复
5
fendoushuai|  楼主 | 2018-3-16 09:44 | 只看该作者
小明的同学 发表于 2018-3-15 18:05
所以是你用法的问题,你不可能这么一次性接收一堆,要看缓冲区大小

我在中断函数中将receiver FIFO清空了,读取寄存器判断FIFO满以后就清空FIFO,但是这样还是只能收到16字节

使用特权

评论回复
6
619888476| | 2018-3-16 10:25 | 只看该作者
接收、发送缓冲设置的大小是好多?

使用特权

评论回复
7
fendoushuai|  楼主 | 2018-3-16 11:41 | 只看该作者
619888476 发表于 2018-3-16 10:25
接收、发送缓冲设置的大小是好多?

N32905的UART1接收缓存只有16字节,这个没法设置

使用特权

评论回复
8
yingtexin| | 2018-3-16 20:22 | 只看该作者
楼主的调试软件可以提供吗?

使用特权

评论回复
9
fendoushuai|  楼主 | 2018-3-17 08:47 | 只看该作者
yingtexin 发表于 2018-3-16 20:22
楼主的调试软件可以提供吗?

我就是根据官方的demo程序改的,参考那个就可以了,论坛里有好多人发过这个资料

使用特权

评论回复
10
jiekou001| | 2018-3-25 16:37 | 只看该作者
printf太消耗时间,外部搞就行。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

15

帖子

0

粉丝