本帖最后由 qq7643066 于 2020-8-3 15:58 编辑
RK3326 RK3399 GPIO寄存器操作指南
参考资料基本环境
RK3326 小板
8pin引出接口中的GPIO0_B3(实际为GPIO1_C2)
RK3326 EVB开发板
RK3399 EVB开发板
Linux与Android系统都适用FAE给的操作步骤IOMUX复用为GPIO
GPIO设置为输出
设置GPIO高低
补充,事实上还漏了一个重要一部,要先设置时钟,否则前面的设置都不生效RK3326寄存器手册查询
参考寄存器手册Address Maping部分
GRF基地址为0xFF140000
GPIO1基地址为0xFF250000
DDR(方向寄存器)偏移地址0x04, 所以寄存器地址为0xFF250004
DR(设置高低电平)偏移地址为0x00, 所以寄存器地址为0xFF250000
GRF_GPIO1C_IOMUX_L 偏移地址为0x10, 所以IOMUX地址为0xFF140010
GPIO1_C2对应的位为bit19RK3326 GPIO1_C2 设置实验
读取GPIO1_C2的值(DR)
io -4 -l 4 0xFF250000
输出
ff250000: 00000000
bit19 为0, 测得电压为0.26V
写入bit19 为 1
io -4 -w 0xff250000 0x00040000
回读正常,测得电压为3V
方向寄存器
io -4 -l 4 0xFF2500004
输出
ff250004: 000