连接开发板到PC,然后连上串口终端MobaXterm。
点亮LED灯选择GPIO引脚,这次还是39(GND),37(正极输出脚,GPIO0_B7)。然后对号把LED灯珠连接到开发板的排针上。
打开Rockchip_RK3568_TRM_Part1_V1.3文档(附件),找到GPIOB的复用寄存器基地址:PMU_GRF: 0xFDC20000
PMU_GRF_GPIO0B_IOMUX_H的地址 : 偏移地址0x000C + 0xFDC20000 = 0xFDC2000C,我们主要看14:12位的值,用io命令检查这个引脚的复用状态:io -r -4 0xFDC2000C. 结果是0x00000110,那么相应的12-14位也就是0.也就是表示GPIO0_B7默认是GPIO功能。不用修改。
找到GPIO0的基地址:0xFDD60000,找到GPIO数据方向寄存器GPIO_SWPORT_DDR_L的地址:0xFDD60000 + 0x0008 = 0xFDD60008,先用命令:io -r -4 0xFDD60008 查看它的值为:0x00000004,用计算器修改相应的15位和31位,结果为:0x80008004。 用io命令把这个修改过的值写到GPIO_SWPORT_DDR_L中:io -w -4 0xFDD60008 0x80008004.这样就把默认的输入状态改为了输出状态。
找到数据寄存器GPIO_SWPORT_DR_L的地址:偏移地址为0x0000 + 0xFDD60000 = 0xFDD60000,先用命令:io -r -4 0xFDD60000 查看它的值为:0x00000000,修改相应位后为:0x80008000,然后用命令:io -w -4 0xFDD60000 0x80008000写入寄存器中。
LED点亮