lianchengsan 发表于 2014-5-27 10:12:54

TQ2416 之 LED 使用/sys/class/gpio的问题

你好,我们的应用工程师想要使用如下类似的命令直接控制led、蜂鸣器、继电器:
#echo 1 > led1               //led1 灭
#echo 0 > led1               //led1 亮
所以我们驱动工程师尽力满足他们的要求,但是在做的时候碰到了一些问题,只能控制四个LED中的三个,有一个不能控制,
相关配置如下:(在下面的截图里)

Make 生成zImage.bin镜像后,烧入开发板,启动,执行如下操作
#cdsys/class/gpio进入gpio目录后
接着操作如下:
# echo 23 > export
# echo 37 > export
# echo 38 > export
会在/sys/class/gpio/下生成gpio23、gpio37、gpio38三个目录
然后,依次进入这三个目录进行如下操作:
#cd gpio23
#echo out > direction
#echo 1 > value               //LED3 灭
#echo 0 > value       //LED3 亮
对另外两个目录进行同样的操作都可以正常工作,说下对应的关系:
23 ---GPA23 ---LED3
37 ---GPB5 ---LED1                                                                                                                                 
38 ---GPB6 ---LED2

问题:
1.      当用同样的方法操作LED4:#echo 24 > export
执行以上命令后,并没有生成gpio24目录,接下来就不能再进行以上类似的操作了,也就是说不能控制LED4,为什么其他三个可以,唯有这一个不行???
2.      在配置的时候,没有配置< >TQ1416 LEDS' driver 这个选项,没有将其编译(也就是没有使用tq2416_leds.c文件),那么控制LED的GPIO端口在哪设置初始化的?找了很长时间的源码,没找到…,希望版主能尽快帮下忙啊,谢谢了。另外:已经确认了,LED4可以正常的亮灭,硬件电路没问题

TQ-ZQL 发表于 2014-5-27 12:11:18

LED Support for xxxx有没有配置对于你使用/sys/class/gpio没有多大影响,而且如果没有改过match-tq2416.c即使用你配置也用不了。因为我们使用的不是那种方式。
/sys/class/gpio配置的初始化与操作都在gpiolib.c文件里。我们默认是没有使用的,用户要用可能要自己去看下代码。可以先看下那个不行的脚有没有被占用,再可以看下有没有管脚编号有没有问题。

lianchengsan 发表于 2014-5-27 14:17:23

超级版主大人,我找了很久了,gpiolib.c下面的也分析了,还是没有头绪啊,催得紧,压力山大啊,
页: [1]
查看完整版本: TQ2416 之 LED 使用/sys/class/gpio的问题