先来看看硬件连接,大致就这样连接!

485硬件大致流程
一般来说,RS485是硬件,而他软件方面是modbus协议,用到最多的是RTU方式。

工作方式:主机(STM32)通过串口向从机发送一段问询帧(包括地址码,功能码,数据码,效验码),每个从机(485传感器)都可以收到,但是因为问询帧里面有一段地址码,所以只有对应的地址的从机才执行相应的命令(比如返回采集到的温湿度等),然后主机就可以接收来自从机的问询帧解析相应的数据码即可。

了解通信流程,来看看代码!!省略的串口配置,时钟配置等

1.定义问询帧,具体看你的传感器的数据手册
数据帧定义
2.485问询函数
485
3.CRC效验函数
crc
4.数据处理函数
在这里插入图片描述
解释:可以一个函数完成数据发送与接收和校验!
原理分析:在设备串口问询485数据后,会立即进入接收串口接收中断,同时将接收的数据存入结构体,然后进行返回值除去后两位的CRC校验判断是否与返回的数据相等,如果满足CRC校验,就确认为正常数据。