STM32F03VCT6通过485读取压力传感器压力值问题

Naunyang 2019-10-28 06:58:21
准备用STM32F03VCT6通过485读取压力传感器压力值。
刚开始搞,还不是很明白。
现在遇到的问题是:我知道协议,也知道就是单片机发送读取压力的指令给压力传感器,然后压力传感器返回指令,我再解析指令,获取得到的压力值。我有点不懂的是压力传感器返回的指令中的16进制的压力值如何转换成10进制?
...全文
426 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Alston-deng 2021-06-22
  • 打赏
  • 举报
回复

您好 请问您现在这个项目完全做完了吗?我想做一个压力传感器接受装置,就是想用STM32做一下 请问您能指导一下吗?

worldy 2019-11-05
  • 打赏
  • 举报
回复
一般单片机内部都是16进制表达的,你只要使用sprintf(buf,"%d",n)转到缓冲区,就能显示为10进制字符串
hhhh63 2019-11-04
  • 打赏
  • 举报
回复
假如接收的数据存入buf数组中,这样转换
u16 p = (((u16)buf[3]) << 8) + buf[4];
笨狗先飞 2019-10-29
  • 打赏
  • 举报
回复
这个是modbus协议,根据你收到的字节来处理就好了,十六进制和二进制一个意思, 不用做什么进制转换,13H*100H+88H把两个Byte合并到一个int里就完事了。
狗蛋王-yo 2019-10-29
  • 打赏
  • 举报
回复
u8 rx_buf[10];
rx_buf[3] = ;
rx_buf[4] =;
u16 data = rx_buf[3] << 16;
data += rx_buf[4];
Naunyang 2019-10-28
  • 打赏
  • 举报
回复
引用 2 楼 zgl7903 的回复:
16进制的1388 就等于10进制的 5000
感谢,你好,这个是示例,传感器读到的值是实时变化的,我该如何读,如何进行转化呢?
zgl7903 2019-10-28
  • 打赏
  • 举报
回复
16进制的1388 就等于10进制的 5000
Naunyang 2019-10-28
  • 打赏
  • 举报
回复
刚接触没多久,自己做的第一个小项目,路过的兄弟们有我可以参考的麻烦提供下。。感谢感谢

27,370

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
  • 单片机/工控社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧