先来看看硬件连接,大致就这样连接!
一般来说,RS485是硬件,而他软件方面是modbus协议,用到最多的是RTU方式。
工作方式:主机(STM32)通过串口向从机发送一段问询帧(包括地址码,功能码,数据码,效验码),每个从机(485传感器)都可以收到,但是因为问询帧里面有一段地址码,所以只有对应的地址的从机才执行相应的命令(比如返回采集到的温湿度等),然后主机就可以接收来自从机的问询帧解析相应的数据码即可。
了解通信流程,来看看代码!!省略的串口配置,时钟配置等
1.定义问询帧,具体看你的传感器的数据手册
2.485问询函数
3.CRC效验函数
4.数据处理函数
解释:可以一个函数完成数据发送与接收和校验!
原理分析:在设备串口问询485数据后,会立即进入接收串口接收中断,同时将接收的数据存入结构体,然后进行返回值除去后两位的CRC校验判断是否与返回的数据相等,如果满足CRC校验,就确认为正常数据。
- 本文链接:http://uaena.net.cn/2020/02/23/STM32&&RS485/
- 版权声明:本博客所有文章除特别声明外,均默认采用 许可协议。