ST的串口HAL库太难用了,顶钢盔吐槽。F105RC

2019-12-10 18:28发布

本帖最后由 liuqian 于 2019-5-2 11:59 编辑

1. 层层包裹,里面各种情况都要处理,太啰嗦了,效率太低了
2. 发送、接收共用一个锁,全双工怎么玩,肯定会发生碰撞
3. 因为我使用了4个串口,有带DMA的有不带DMA的,为了方便维护,就不用DMA,而使用中断。但是串口中断接收使用定长缓存,而不是环形,这对不定长数据接收很麻烦。为了尽量不动CUBEMX生成的程序,费了不少功夫,最后还是写了自己的中断处理+环形缓冲。

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
52条回答
zxq6
1楼-- · 2019-12-13 04:06
panyi1013 发表于 2019-5-3 15:55
LL库和标准库基本相同,简单工程我就直接操作寄存器了,复杂点的LL生成。

LL也可以用cube生成么?
lfgc
2楼-- · 2019-12-13 05:31
zxq6 发表于 2019-5-3 17:28
LL也可以用cube生成么?

ok它的效率比标准库还高。
sh0568
3楼-- · 2019-12-13 09:24
lfgc 发表于 2019-5-3 18:49
ok它的效率比标准库还高。

是真的吗?
gylg3344love
4楼-- · 2019-12-13 12:32
感觉要被HALL烦死。。。借楼吐槽
jobmen
5楼-- · 2019-12-13 14:36
 精彩回答 2  元偷偷看……
yanhaijian2005
6楼-- · 2019-12-13 14:56
发送、接收共用一个锁,一般情况下接收中断中调用接收函数、主程序中调用发送函数,如果调用发送函数时来了接收中断就有BUG了。

一周热门 更多>