前期
本博客是根据Hi3521A/Hi3520DV300硬件接口用户指南.pdf(其它都一样)写的,具体信息请参考文档,文档下载:https://download.youkuaiyun.com/download/u012478275/11264057
一、GPIO的配置
GPIO的设置一般为三步:1 设置gpio端口复用、2 设置GPIO口的方向、3 读取或者写入GPIO值;第一步不是每个GPIO口都是要配置的,如果你设置的GPIO端口有复用功能,那么你需要对GPIO对应复用寄存器进行配置,例如:文档中GPIO5_5是有复用功能的,0:PWM_OUT0 ; 1:GPIO5_5,所以把复用寄存器设置为1就是表示为GPIO5_5;但有些GPIO端口是没有复用功能的,例如GPIO0_0,这个就不需要复用寄存器的设置;
1、设置gpio端口复用
所谓复用,就是指一个端口能同时干很多事,但是具体你要求他干啥,是需要设置的,这就是管脚复用寄存器的作用。
举个例子,如果我们想设置GPIO5_5,需要首先找到对应的管脚复用寄存器地址;通过手册查询,如果你想让这个管脚作为io口使用,需要给复用控制寄存器muxctrl_reg54这个寄存器里写0x01;管脚复用寄存器的基地址为0x120f_0000,muxctrl_reg54的偏移地址0xD8,所以这个寄存器的地址为0x120f00D8;
通过HIS自带的h