浮点数、负整数拆分与还原
问题:EEPROM需要按照字节存储,浮点数、负整数占用多个字节,当需要读写浮点数和负整数至EEPROM时,需要对浮点数、负整数拆分与还原。
方法:获取存储浮点数、负整数的变量的指针,将该指针强制转换为uint8*的指针,然后利用该指针将浮点数、负数拆分成单个字节;将拆分后的字节写入uint8型的数组中,然后将数组的指针强制转换为拆分前变量的指针类型,即可重新还原浮点数、负整数。代码如下:
#include #define uint8 unsigned char #define uint16 unsigned short #define uint32 unsigned int #define ARRAY_LENGTH 3 #define ARRAY_LENGTH_DOUBLE (ARRAY_LENGTH*sizeof(ARRAY_TYPE)) #define ARRAY_TYPE int ARRAY_TYPE array[ARRAY_LENGTH]; uint8 u8_array[ARRAY_LENGTH_DOUBLE]; int main(void) { int i; while(1) { for(i=0;i array[i]=-1-i; } for(i=0;i u8_array[i] = ((uint8 *)array)[i];//将数进行拆分 } for(i=0;i array[i]=0; } for(i=0;i array[i]=((ARRAY_TYPE *)u8_array)[i];//将数进行还原 } } } 测试验证 测试条件: 测试结果: 图1 负数拆分 ②将负数进行还原 图2 复数还原
①cortex-M3内核的stm32单片机
②keil软件
③jlink仿真调试器
①将负数进行拆分,存储在uchar类型的数组中

上一篇:【STM32 LL库编程】GPIO实现独立按键
下一篇:stm32修改外部晶振频率的方法
推荐阅读最新更新时间:2026-03-25 12:43
- 用于 7VIN 至 16VIN、1.5V 和 1.2V 输出的 LTM4628EV DC/DC 模块稳压器的典型应用电路
- 使用 Analog Devices 的 LTC3728LIGN 的参考设计
- DER-406 - 适用于 A19 灯的 5.76 W 高 PF 非隔离降压-升压型 TRIAC 调光 LED 驱动器
- ADR5045B 5V 输出精密微功率并联模式电压基准的典型应用
- LT3970EDDB-3.42 2.5V 降压转换器的典型应用
- MC78M08BDTG 8V 电流调节器的典型应用
- LT1021DCN8-5 精密电压基准的典型应用
- DER-282 - 100W, 扁平(11 mm), LLC DC-DC转换器
- REF193 低压差开尔文连接电压基准的典型应用电路
- LT3088EM 线性稳压器用于添加软启动的典型应用

stm32驱动屏IC rm68042
STM32 PMSM FOC 简介
基于STM32G031的测试测量训练平台完成虚拟仪器实现
现代雷达系统的信号设计
BFR340T






京公网安备 11010802033920号