关于寄存器赋值写法问题

2019-07-14 13:37发布


pSciRegs->SCICCR.all = 0x0007; // 1 stop bit,  No loopback
    // No parity,8 char bits,
    // async mode, idle-line protocol
对这个寄存器这样写入之后,我的理解不就是SCICCR除了最后一位,其它位都是1,但是这个注释似乎解释的不是这样子,求大家指点
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
16条回答
Rollo
2019-07-15 12:40
typedef struct
{
    uint8_t speed:6;//转速
    uint8_t reset:1;//重启
    uint8_t power:1;//电源开关
}Set_t;
typedef union
{
     uint8_t all;
     Set_t set;
}Config_t;
typedef struct
{
  Config_t config;//配置
  uint8_t voltage;//电压
}System_t;

System_t system;
void test(System_t *_system)
{
  _system->config.all = 0x00;//清除配置中的所有设置
  _system->config.set.speed = 50;//设置转速
  _system->config.set.power = 1;//开机
  _system->voltage = 50;//设置电压
}

一周热门 更多>