当前位置: 技术问答>linux和unix
Linux下写驱动程序时怎样访问,硬件控制寄存器
来源: 互联网 发布时间:2016-02-21
本文导语: Linux下写驱动程序时怎样访问控制寄存器 比如,ARM结构的S3C2410,它的一个控制寄存器(或者说数据寄存器)的地址是0x54000040,GPECON,我写驱动程序的时候用什么方法去访问这个寄存器呢? | 系统里应...
Linux下写驱动程序时怎样访问控制寄存器
比如,ARM结构的S3C2410,它的一个控制寄存器(或者说数据寄存器)的地址是0x54000040,GPECON,我写驱动程序的时候用什么方法去访问这个寄存器呢?
比如,ARM结构的S3C2410,它的一个控制寄存器(或者说数据寄存器)的地址是0x54000040,GPECON,我写驱动程序的时候用什么方法去访问这个寄存器呢?
|
系统里应该不是定义了么?
比如:
#define bSPI(Nb) __REG(0x59000000 + (Nb))
#define SPCON0 bSPI(0x00)
#define SPSTA0 bSPI(0x04)
#define SPPIN0 bSPI(0x08)
#define SPPRE0 bSPI(0x0c)
#define SPTDAT0 bSPI(0x10)
#define SPRDAT0 bSPI(0x14)
你访问是只要 SPCON0 = 0x19;这样不就行了?
比如:
#define bSPI(Nb) __REG(0x59000000 + (Nb))
#define SPCON0 bSPI(0x00)
#define SPSTA0 bSPI(0x04)
#define SPPIN0 bSPI(0x08)
#define SPPRE0 bSPI(0x0c)
#define SPTDAT0 bSPI(0x10)
#define SPRDAT0 bSPI(0x14)
你访问是只要 SPCON0 = 0x19;这样不就行了?
|
例:
unsigned char FLASH_CTL= 0xff;
#define NAND_CS 0x01
FLASH_CTL &= ~NAND_CS;
unsigned char FLASH_CTL= 0xff;
#define NAND_CS 0x01
FLASH_CTL &= ~NAND_CS;