飞腾FT2000-4 GPIO设置方法

/sys/class/gpio/gpiochip488 gpio488-gpio495对应gpio0 A0-A7
/sys/class/gpio/gpiochip496 gpio496-gpio503对应gpio0 B0-B7
/sys/class/gpio/gpiochip504 gpio504-gpio511对应gpio1 A0-A7
/sys/class/gpio/gpiochip512 gpio512-gpio519对应gpio1 B0-B7


GPIO0对应寄存器地址0x28004000,GPIO1对应寄存器地址0x28005000
输出寄存器:0x28004000
输入输、出方向设置:0x28004004
输入寄存器:0x28004008,例如GPIO0_A5口输入高电平,该寄存器值为0x0020
使能GPIO0_A5口外部中断需要配置以下寄存器
1、配置GPIO0_A5为输入:0x28004004 寄存器设置为0x0
2、中断使能位置1:0x28004018寄存器设置为0x20 
3、中断屏蔽位置0:0x2800401c寄存器设置为0x0
4、设置中断触发类型寄存器0x28004020, 0:电平触发 1:边沿触发
5、设置中断触发电平:0x28004024, 0:低电平或下降沿,1:高电平或上升沿
中断状态寄存器:0x28004028(该寄存器一直为0,不清楚是否是由于系统对器进行了清除)
中断原始状态寄存器:0x2800402c,如果触发了GPIO口外部中断,对应位将置1,例如触发GPIO0_A5外部中断,读取其值为0x20
中断状态清除寄存器:0x28004038,对GPIO口对应位写1将清除0x2800402c寄存器对应中断状态,例如将0x28004038寄存器设置为0x20,0x2800402c寄存器将清除GPIO0_A5中断状态
 

PIO0_A5口输出设置方法
1、生成GPIO口配置目录
echo "493" > /sys/class/gpio/export
2、PIO0_A5口方向设置
echo "out" > /sys/class/gpio/gpio503/direction
3、PIO0_A5口输出低电平
echo 0 > /sys/class/gpio/gpio503/value
usleep 5000
4、PIO0_A5口输出高电平
echo 1 > /sys/class/gpio/gpio503/value

PIO0_A5口输入设置方法
1、生成GPIO口配置目录
echo "493" > /sys/class/gpio/export
2、PIO0_A5口方向设置
echo "in" > /sys/class/gpio/gpio503/direction
3、PIO0_A5口输入电平查看
cat /sys/class/gpio/gpio503/value
 

你可能感兴趣的:(linux开发,linux驱动,单片机,stm32,嵌入式硬件)