用户空间使用gpio输出试,出错;
使用PB08输出1-----对应40: 32*(B-A) + 08 = 40
# echo 40 > export
sh: write error: Device or resource busy
# echo 41 > export
sh: write error: Device or resource busy
# echo 42 > export
# cd gpio42/
# ls
active_low direction edge power subsystem uevent value
# echo out > direction
# echo 0 > value
PB08和PB09出错了,PB10正确;
应该PB08,PB09IO口被占用了,资源已经分配;
下面进行验证;可以查看板级配置文件,也可以在内核中直接查看;
板级文件:
/* ****************************GPIO KEY START******************************** */
#define GPIO_HOME_KEY GPIO_PC(6)
#define ACTIVE_LOW_HOME 0
#define GPIO_VOLUMEUP_KEY GPIO_PB(8)
#define ACTIVE_LOW_VOLUMEUP 0
#define GPIO_VOLUMEDOWN_KEY GPIO_PB(9)
#define ACTIVE_LOW_VOLUMEDOWN 0