本章节主要使用devmem工具配置寄存器,devmem是一个LINUX开发中使用的开源调试工具,可基于开源代码编译此工具,从而进行寄存器配置。用户需自行下载devmem工具,参见8.3.1.1 编译并生效内核Image文件(Euler)配置内核编译选项,支持devmem工具进行寄存器配置(若有软实时OS需求,参见8.3.1.2 编译并生效内核Image文件(openEuler-SP1)配置内核编译选项)。
查询第7组第2个管脚的复用关系。
命令:devmem IOMUX_BASE+RESET_OFFSET
示例:devmem 0x400140030
将第7组第2个管脚复用为GPIO。
命令:devmem IOMUX_BASE+RESET_OFFSET 32 RESET_GPIO
示例:devmem 0x400140030 32 0x3
查询第7组第2个管脚的方向,
命令:devmem GPIO_BASE+DIRECTION_OFFSET
示例:devmem 0x400150004
回显值第2位为0表示当前方向为输入方向,为1表示当前方向为输出方向。
设置第7组第2个管脚的方向为输出方向。
命令:devmem GPIO_BASE+DIRECTION_OFFSET 32 VALUE
示例:devmem 0x400150004 32 0x4
查询第7组第2个管脚的值。
命令:devmem GPIO_BASE+GET_VALUE_OFFSET
示例:devmem 0x400150050
设置第7组第2个管脚的值为1。
命令:devmem GPIO_BASE+SET_VALUE_OFFSET 32 VALUE
示例:devmem 0x400150000 32 0x4
设置GPIO管脚方向以及管脚值时,仅需要操作寄存器存储的值的对应位。