[STM32F1] 如何解析从串口接收到的字符串中提取命令和数字参数?

[复制链接]
1210|24
 楼主| pengf 发表于 2022-9-9 23:53 | 显示全部楼层 |阅读模式
如何解析从串口接收到的字符串中提取命令和数字参数?
liuzaiy 发表于 2022-9-9 23:54 | 显示全部楼层
简单说:根据协议解析。
 楼主| pengf 发表于 2022-9-9 23:59 | 显示全部楼层
就是字符串处理有难,我写不好,怎么处理字符串。
llljh 发表于 2022-10-8 18:49 | 显示全部楼层
使用字符串的话,可以使用*或者;作为分解
supernan 发表于 2022-10-8 19:12 | 显示全部楼层
在数据传输前一定要想好通信协议
jiajs 发表于 2022-10-8 19:16 | 显示全部楼层
for循环对比每个字节不就行了吗
jlyuan 发表于 2022-10-8 19:20 | 显示全部楼层
或者用strcmp之类的函数
jlyuan 发表于 2022-10-8 19:40 | 显示全部楼层
学习一下GPS的格式
午夜粪车 发表于 2022-10-8 19:51 | 显示全部楼层
同步头 + 数据正文 + 同步尾同步头 + 命令字 + 数据长度
wyjie 发表于 2022-10-8 19:53 | 显示全部楼层
如果传输的数据和过程非常简单,那么就可以采用简单的传输协议
stly 发表于 2022-10-8 19:58 | 显示全部楼层
将传输数据的每个字符一位接一位地传输。
chuxh 发表于 2022-10-8 20:04 | 显示全部楼层
网上有解析GPS的
huangchui 发表于 2022-10-8 20:15 | 显示全部楼层
最简单的就是正则协议了。
討厭和人归類 发表于 2022-10-22 19:55 | 显示全部楼层
其实你想要解析收到数据的内容这个就比较简单,可以使用C自带的比较函数,你比较想要的几个字节,如果比较成功就证明是OK的,符合你要的命令或者参数了

林间有新绿 发表于 2022-10-22 20:28 | 显示全部楼层
C语言比较函数strcmp()函数这种都能提取出来命令的,比较内容呗

热爱童话世界 发表于 2022-10-22 20:59 | 显示全部楼层
你都能发送和接收了,其实就差个字节比较了是吧,可以用for或者用strcmp()函数

情和欲 发表于 2022-10-22 21:31 | 显示全部楼层
对比字节而已,你想怎么比较都可以的

风吻过你的不羁 发表于 2022-10-22 22:03 | 显示全部楼层
你先把串口收到的数据存在一个buf里,然后再做数据处理

可爱的白兔先生 发表于 2022-10-22 22:35 | 显示全部楼层
逻辑很简单的,可以做数据比较,字节比较或者字符串比较都可以

一枝香 发表于 2022-10-22 23:07 | 显示全部楼层
你可以参考野火或者正点原子的demo,他们也有接收串口数据并进行处理的操作

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

本版积分规则

718

主题

10129

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部