论坛首页
任务活动
问答
论坛专题
登录
注册
结合国际经验
+ 关注
粉丝
1
|
主题
64
|
回帖
773
加好友
私信
帖子
主题
回复
评论
基于STM32和Zigbee的电力表数据采集
2023-5-30 16:27
ST MCU
23
1752
如果要通过串口调试助手显示浮点型数据,就要把浮点型数据每一位对应的ASCLL码发送给串口。 具体程序如下 ...
float浮点型数据转化成char字符型数据输出 通常我们发送数据的模式有两种,一种16进制,一种是ASCII码。16 ...
定义共用体变量: union data currentData;//定义一个共用体变量。 将32位的16进制数(整型)存放在共用 ...
3、后来师兄说利用共用体就可以实现16进制(32位)转化成10进制float的功能,不用调用复杂的Float32函数。 ...
2、现在16进制的32位数已经保存在了temp1这个内存单元中,下面要把temp1内存单元的数按照IEEE-754标准转化 ...
2、现在16进制的32位数已经保存在了temp1这个内存单元中,下面要把temp1内存单元的数按照IEEE-754标准转化 ...
!!!注意全局变量不能重复定义,只定义在一个.h文件中就可以了。
USART_RX_BUF[]是一个含有17个元素的全局变量数组,用来存放电表返回的数据。从第4个元素开始是数据值,故 ...
数据处理 上次已经通过串口读到电表采集的电流值了,但是它是用4个字节的16进制数表示的,不方便读取,所以 ...
可见A相的电流值为“32 30 20 C5”,这是一个4个字节表示的浮点型数据,标准的IEEE-754标准,后续还要对数 ...
只接A相负载的实验结果如图
单片机再把返回的数据发送给上位机。
串口1接收到数据后进入串口1的中断服务子程序,把接收到的数据存在接收缓存寄存器里面,具体程序如下: ...
单片机接收到命令后,通过串口1向电力表发送相应指令,电力表通过串口1返回数据 例如: 其中数据段一共有1 ...
串口发送指令补充
所以定义读取电压、电流、功率的数组如下:
例如:主机发送数据帧:读三相电流值 存电流寄存器的起始地址是“00H,45H”(查说明书MODBUS——RTU地址 ...
电力表与单片机之间 单片机——>电力表 MODBUS_RTU通讯协议补充 电力表提供了RS485通讯接口,采用MODBUS— ...
电力表与单片机之间 单片机——>电力表 MODBUS_RTU通讯协议补充 电力表提供了RS485通讯接口,采用MODBUS— ...
上位机与单片机之间 上位机与单片机之间通过串口2通讯 。当上位机向单片机发送命令时,单片机接收到命令执 ...
前一页
17
18
19
20
21
22
23
后一页
2
3
近期访客