|
发表于 2019-2-16 23:53:08
来自手机
|
显示全部楼层
这个是我做akc6955 寄存器例子union reg0 { unsigned char value; struct { unsigned char reserved: 2; unsigned char mute: 1; unsigned char seek_direction: 1; // 0 下 1 上 unsigned char go_seek: 1; // 0->1 开始搜索 STC=1 停止搜索 unsigned char tune: 1; // 0->1 到指定的频率 unsigned char fm_mode: 1; unsigned char power_on: 1; }; }; 这样可以省去大量位操作 而且程序部分更清晰 这个是核心 ------------------------------- 例子 reg0.mute = 0; reg0.seek_direction = 1; reg0.go_seek = 0; reg0.tune = 0; reg0.fm_mode = FM; reg0.power_on = 1; i2c_write( 0x10, 0, reg0.value); |
|