读写寄存器函数总结
来源:互联网 发布:网络推广策划书范文6篇 编辑:程序博客网 时间:2024/06/09 22:28
#define HAL_PUT_UINT32(a, v) do {\
*(volatile unsigned long *)(a) = (unsigned long)(v);\
} while(0)
#define HAL_GET_UINT32(a) *(volatile unsigned long *)(a)
#define HAL_PUT_BITS(a,m,v) do { unsigned long val = *(volatile unsigned long *)(a);\
val = (val&(~(m)))|((v)&(m));\
*(volatile unsigned long *)(a) = (unsigned long)(val);\
}while(0)
For example:
*(volatile unsigned long *)(a) = (unsigned long)(v);\
} while(0)
#define HAL_GET_UINT32(a) *(volatile unsigned long *)(a)
#define HAL_PUT_BITS(a,m,v) do { unsigned long val = *(volatile unsigned long *)(a);\
val = (val&(~(m)))|((v)&(m));\
*(volatile unsigned long *)(a) = (unsigned long)(val);\
}while(0)
For example:
要将0xbf204004的第16~18bit写成101, ---> HAL_PUT_BITS(0xbf204004,7<<16,5<<16)
第二个操作数为mask,16-18共三bit,111,所以为7,写成101,对应为5.
- 读写寄存器函数总结
- arm内部寄存器读写函数
- Linux内核外设IO寄存器与IO mem读写函数总结
- stm32 直接读写寄存器代码风格总结
- CPU GPR与CP0寄存器汇编宏函数-读写
- linux中readl()和writel()函数---用于读写寄存器
- 应用层读写i2c主设备寄存器(mmap函数)
- C文件读写函数总结
- 总结文件读写的函数
- 标志寄存器的读写
- S3C2440读写DM9000寄存器
- 读写寄存器调试技巧
- 驱动模块读写寄存器
- 驱动读写寄存器
- io读写寄存器
- 寄存器读写测试方法
- 通用寄存器-内存读写
- 通用寄存器-内存读写
- Sequoyah本机开发Native Development:Invalid path for NDK
- LINUX网络编程必看书籍
- .NET Framework 4.5 五个很棒的特性
- 创建哈希全局索引
- APUE读书笔记(0.2) ——APUE源代码中的awk脚本文件
- 读写寄存器函数总结
- windows下 socket编程
- Aptana :调试 javascript 图解
- 修改Linux的HostName
- LINUX内核学习书籍推荐
- jquery实现登录验证
- OCP-1Z0-053-V13.02-490题
- 绘图类的使用
- 结构型模式一之Bridge