关于小端模式的单片机取结构体的地址转成16位 32 位的总结

首先说明一下什么事小端模式,小端模式就是在单片机的内存地址中,低地址存储一个16位或者32位或者64位变量的最低八位,然后往上递增。

比如在下面的例子中,定义一个结构体

typedef struct {
    uint16_t man1_sta;          /*人物1 状态 01 站立 23 摔倒*/
    int16_t man1_voltage;       /*人物1 电压 */
    int16_t man1_temperature;   /*人物1 温度 */
        
}SLAVE_DATA;                /*从设备上传的数据*/

 SLAVE_DATA    slave_data={.100,.110,.120};    

把结构体的首地址传入函数,例子如下:

 Data_Write16BYTE((uint16_t*)&slave_data);

 

下面是函数的实体

void Data_Write16BYTE(uint16_t  *data)
{


 *data=?

data++;

*data=?

data++;

*data=?
}

最后经过单片机的运算结果分别为 110 110 120。

最后说明,这文章有点乱,写的也不是很好,大家理性对待。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值