关于寄存器赋值写法问题

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条回答
Bjorn
1楼-- · 2019-07-15 07:00
 精彩回答 2  元偷偷看……
Rollo
2楼-- · 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;//设置电压
}
wangdezhi
3楼-- · 2019-07-15 17:04
使用与或非。
isseed
4楼-- · 2019-07-15 17:41
 精彩回答 2  元偷偷看……
xietingfeng
5楼-- · 2019-07-15 20:34
不是应该后三位吗?
mituzu
6楼-- · 2019-07-15 21:10
可以使用串口输出看看。

一周热门 更多>