海思应用篇】-(5)GPIO操作
针对海思hi3531dv200 芯片,应用层怎么操作gpio管脚,这一节我们来详细介绍一下。芯片支持26组GPIO(General Purpose Input/Output),即GPIO0~GPIO25。每组GPIO提供8个可编程的输入输出管脚(GPIO6只有7个,即bit1~7;GPIO25只有5个,即bit0~4)。 每个管脚可以配置为输入或者输出。这些管脚用于生成特定应用的输出信号或采集特定应用的输入信号。作为输入管脚时,GPIO可作为中断源;作为输出管脚时,每个GPIO都可以独立地清0或置1。
1.GPIO配置
针对每组GPIO都有一个基地址,每组GPIO寄存器只需要配置该基地址下的GPIO数据寄存器和方向寄存器即可。下面就来操作一下一个GPIO流程
1.1 GPIO复用
我们知道有些管脚可以复用成其他的功能,既可以做为普通的GPIO操作,也可以复用成其他功能管脚。这时候需要我们通过GPIO复用寄存器来配置。
可以通过《Hi3531DV200_PINOUT_CN.xlsx》查看和配置寄存器。比如GPIO4_2来举例。
himm 0x102f0068 0x1200;1.2 GPIO数据和方向寄存器配置
数据寄存器配置
这个配置时候一定要注意:GPIO_DATA[7:0]对应PADDR[9:2],而PADDR[1:0]固定为0。
方向寄存器配置这样就可以通过GPIO_DATA[7:0]数值和GPIO_DIR来作为输入和输出操作GPIO。
himm 0x11094400 0x04;//输出
himm 0x11094010 0x00;//输出低电平
himm 0x11094010 0x01;//输出高电平免责声明:文章内容来自互联网,本站不对其真实性负责,也不承担任何法律责任,如有侵权等情况,请与本站联系删除。
转载请注明出处:【海思应用篇】-(5)GPIO操作 https://www.yhzz.com.cn/a/14835.html