📄 hal_io.h
字号:
//=============================================================================//// hal_io.h //-----------------------------------------------------------------------------// BYTE Register access.// Individual and vectorized access to 8 bit registers.#define REG32(addr) (*((unsigned int volatile *)(addr)))#define REG16(addr) (*((unsigned short volatile *)(addr)))#define REG8(addr) (*((unsigned char volatile *)(addr)))#define inb(_register_) *((volatile unsigned char *)(_register_))#define outb(_register_, _value_) \do { \ (*((volatile unsigned char *)(_register_)) = (_value_)); \}while(0)//-----------------------------------------------------------------------------// 16 bit access.// Individual and vectorized access to 16 bit registers.#define inw(_register_) *((volatile unsigned short *)(_register_))#define outw(_register_, _value_) \do { \ (*((volatile unsigned short *)(_register_)) = (_value_)); \}while(0)//-----------------------------------------------------------------------------// 32 bit access.// Individual and vectorized access to 32 bit registers.#define inl(_register_) *((volatile unsigned int *)(_register_))#define outl(_register_, _value_) \do { \ (*((volatile unsigned int *)(_register_)) = (_value_)); \}while(0) //-----------------------------------------------------------------------------// End of hal_io.h
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -