野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 18038|回复: 12

求一份HAL库的F4 串口接收不定长数据

[复制链接]
发表于 2017-8-16 18:43:58 | 显示全部楼层 |阅读模式
20火花
         (HAL)做项目,用到把USART3接收到的数据用USRAT1打印出来。搜了好多资料,有的是添加头尾标志位;有的根据定时器做“超时接收”。
我感觉第二个更适合我做的东西,但是网上都是标准库,我用的HAL。哎呀,菜鸡啊菜鸡,怎么也写不出来,所以各位大牛帮帮忙啊啊啊。


最佳答案

查看完整内容

没弄过 不太懂 你的需求也只有你自己知道 我只是说有很多现成的规约的方法可以借鉴用来创造自己的规约 比如MODBUS 103 104 CAN 规约 甚至CDT也可以算是变长的一种类型吧
回复

使用道具 举报

发表于 2017-8-16 18:43:59 | 显示全部楼层
胡图图 发表于 2017-8-25 09:15
首先加头尾标志位不适合我现在做的项目,然后DMA+空闲中断我已经测试好了,但是我还是想做超时接收。但 ...

没弄过 不太懂  你的需求也只有你自己知道  我只是说有很多现成的规约的方法可以借鉴用来创造自己的规约  比如MODBUS 103  104 CAN 规约 甚至CDT也可以算是变长的一种类型吧
回复

使用道具 举报

发表于 2017-8-17 09:00:39 | 显示全部楼层
还没有用过HAL库
回复

使用道具 举报

 楼主| 发表于 2017-8-17 09:41:05 | 显示全部楼层
flyleaf 发表于 2017-8-17 09:00
还没有用过HAL库

谢谢大神回复,
我在网上梭了两天都没找到HAL库的串口接收不定长
回复

使用道具 举报

 楼主| 发表于 2017-8-17 13:27:02 | 显示全部楼层
本帖最后由 胡图图 于 2020-9-13 10:14 编辑

没有会的??
回复

使用道具 举报

发表于 2017-8-17 15:07:09 | 显示全部楼层
胡图图 发表于 2017-8-17 13:27
难道都是老古董????????没有会的??

我都还没用到HAL
回复

使用道具 举报

发表于 2017-8-22 10:54:04 | 显示全部楼层
有眉目了吗
回复

使用道具 举报

发表于 2017-8-22 16:31:11 | 显示全部楼层
HAL库实现串口+DMA+空闲中断接收不定长数据(出处: 意法半导体STM32/STM8技术社区)
http://www.stmcu.org/module/forum/forum.php?mod=viewthread&tid=602761&fromuid=394920

回复

使用道具 举报

 楼主| 发表于 2017-8-23 09:42:59 | 显示全部楼层
幽灵狙击手 发表于 2017-8-22 16:31
HAL库实现串口+DMA+空闲中断接收不定长数据(出处: 意法半导体STM32/STM8技术社区)
http://www.stmcu.org/m ...

这个代码我试了,接收的第二个数据覆盖不了第一个。也就是说第一次接收1234,第二次你发送12它还是显示1234.好气啊
回复

使用道具 举报

 楼主| 发表于 2017-8-23 09:44:53 | 显示全部楼层

DMA和超时接收两种都在做,可是超时接收总做不好。好气,不过发现好好看了串口函数还是有用的
回复

使用道具 举报

发表于 2017-8-24 22:15:45 | 显示全部楼层
有好多标准规约形式都可以借鉴啊  比如同步字+数据长度+数据+校验 不就是个变数据长度的么
回复

使用道具 举报

 楼主| 发表于 2017-8-25 09:15:50 | 显示全部楼层
tys 发表于 2017-8-24 22:15
有好多标准规约形式都可以借鉴啊  比如同步字+数据长度+数据+校验 不就是个变数据长度的么

首先加头尾标志位不适合我现在做的项目,然后DMA+空闲中断我已经测试好了,但是我还是想做超时接收。但是网上这方面只有思路,好不容易找到一个标准库做的超时接收代码,然后移植了一周都没成功。
回复

使用道具 举报

发表于 2017-8-31 17:26:10 | 显示全部楼层
本帖最后由 幽灵狙击手 于 2017-8-31 17:33 编辑
胡图图 发表于 2017-8-23 09:42
这个代码我试了,接收的第二个数据覆盖不了第一个。也就是说第一次接收1234,第二次你发送12它还是显示12 ...

在第一次发送完 清空一下数据缓存区呢?我用这个代码写的GPS信息接收,GPS每次收到的一样多 我没注意过这个问题
回复

使用道具 举报

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

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-5-4 23:30 , Processed in 0.036562 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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