驱动常用技巧

简介: 。。。未完,待续。。。

1 寄存器位操作

方法1

设置某位为1,可以让该8位寄存器与下面的BIT相或
#define DEF_SET_BIT0                0x01
#define DEF_SET_BIT1                0x02
#define DEF_SET_BIT2                0x04
#define DEF_SET_BIT3                0x08
#define DEF_SET_BIT4                0x10
#define DEF_SET_BIT5                0x20
#define DEF_SET_BIT6                0x40
#define DEF_SET_BIT7                0x80

设置某位为0,可以让该8位寄存器与下面的BIT相与

#define DEF_CLR_BIT0                0xFE
#define DEF_CLR_BIT1                0xFD
#define DEF_CLR_BIT2                0xFB
#define DEF_CLR_BIT3                0xF7
#define DEF_CLR_BIT4                0xEF
#define DEF_CLR_BIT5                0xDF
#define DEF_CLR_BIT6                0xBF
#define DEF_CLR_BIT7                0x7F

方法二

设置某bit为1 ADDR |(1 << n)

设置某bit为0 ADDR &= ~(1 << n)

。。。 未完待续。。。

相关文章
|
1天前
嵌入式开发板串口驱动框架
嵌入式开发板串口驱动框架
18 0
|
1天前
|
关系型数据库 MySQL API
安装驱动
安装驱动。
67 3
|
10月前
|
Linux
总线驱动--SPI驱动(下)
总线驱动--SPI驱动
149 0
|
10月前
|
Linux API SoC
总线驱动--SPI驱动(上)
总线驱动--SPI驱动
203 0
|
11月前
|
敏捷开发 消息中间件 缓存
什么是领域驱动
领域驱动的概念
171 0
|
测试技术 程序员
我的场景驱动设计
我的场景驱动设计
我的场景驱动设计
|
IDE 前端开发 数据可视化
ZenUML与服务驱动设计
ZenUML与服务驱动设计
ZenUML与服务驱动设计