[技术文档]

串口的配置一般有几种形式

[复制链接]
5041|19
手机看帖
扫描二维码
随时随地手机跟帖
tail066|  楼主 | 2021-9-26 19:59 | 显示全部楼层 |阅读模式
发送:
我一般是需要发送数据的时候,一般是按照协议,直接就发出去了,这个简单
接收:
一般是开接收中断,有数据进来就存到数组,然后看是否满足通信协议。

是不是我这样用,太低级了?有没有更便捷的方式?

使用特权

评论回复
logan0279| | 2021-9-27 08:47 | 显示全部楼层
我目前最喜欢的方案是接收中断、接收超时中断、发送中断都开起来。
接收中断负责把接收到的数据存到缓存数组
接收超时中断负责判断是否接收完成,接收完成了给接收完成标记
在另外的定时循环函数里面检查接收完成标记,然后解析协议
协议解析完以后按协议发送数据,开发送中断,每进一次中断发送一个字节数据,直到发完。

使用特权

评论回复
SDLin| | 2021-9-29 11:43 | 显示全部楼层
你这边是用哪颗芯片?具体可以参靠用户手册的串口章节。一般为提高效率,可以结合DMA使用。

使用特权

评论回复
uiint| | 2021-10-3 20:37 | 显示全部楼层
没有看懂楼主是什么意思   

使用特权

评论回复
hellosdc| | 2021-10-3 20:37 | 显示全部楼层
保存到数组不行吗  

使用特权

评论回复
mituzu| | 2021-10-3 20:37 | 显示全部楼层
使用dma啊            

使用特权

评论回复
suzhanhua| | 2021-10-3 20:37 | 显示全部楼层
你使用的是哪款芯片呢   

使用特权

评论回复
xietingfeng| | 2021-10-3 20:37 | 显示全部楼层
串口配置中断         

使用特权

评论回复
isseed| | 2021-10-3 20:38 | 显示全部楼层
可以使用DMA传输数据  

使用特权

评论回复
wangdezhi| | 2021-10-3 20:38 | 显示全部楼层
参考一下ringbuff   

使用特权

评论回复
biechedan| | 2021-10-3 20:38 | 显示全部楼层
没有了,基本都是中断代码   

使用特权

评论回复
chenci2013| | 2021-10-3 20:38 | 显示全部楼层
开接收中断就可以满足要求。   

使用特权

评论回复
gygp| | 2021-10-3 20:38 | 显示全部楼层
更便捷的方式?这个是什么意思  

使用特权

评论回复
tail066|  楼主 | 2021-10-13 14:20 | 显示全部楼层
SDLin 发表于 2021-9-29 11:43
你这边是用哪颗芯片?具体可以参靠用户手册的串口章节。一般为提高效率,可以结合DMA使用。 ...

dma没用过,最近确实想做DMA的尝试~~
产品用的串口比较多,收发想弄成统一的形式~

使用特权

评论回复
SDLin| | 2021-10-13 15:55 | 显示全部楼层
tail066 发表于 2021-10-13 14:20
dma没用过,最近确实想做DMA的尝试~~
产品用的串口比较多,收发想弄成统一的形式~ ...

https://bbs.21ic.com/forum.php?m ... zZ8MzE2MzA0OA%3D%3D  这是HK32F103的UART+DMA例程,供参考。

使用特权

评论回复
cen9ce| | 2021-11-12 16:33 | 显示全部楼层
通信方式一共就这么几种,全双工,半双工,单工

使用特权

评论回复
zhizia4f| | 2021-11-12 16:36 | 显示全部楼层
满足通信协议?

使用特权

评论回复
q1ngt12| | 2021-11-12 16:37 | 显示全部楼层
好用就行了

使用特权

评论回复
littlelida| | 2021-12-6 16:00 | 显示全部楼层
满足应用就好,提高效率的话,可以考虑dma

使用特权

评论回复
gouguoccc| | 2021-12-7 08:55 | 显示全部楼层
把DMA用起来效率更高

使用特权

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

本版积分规则

128

主题

582

帖子

0

粉丝