OK335xS GPIO 无法输出的问题
环境:OK335xS开发板 + 安卓操作系统目标:将GPIO1_31设置为Output,用以控制外部硬件。
实现步骤:
1. GPIO初始化:参考LED初始化过程,设置GPIO1_31,如下图
2. 修改led-dev.c,原OK335xS只控制1个LED,现增加LED3,控制GPIO1_31
3. 启动ATestForlinx-->LED
点击LED1,板上LED灯随之点亮或熄灭,但点击LED3,CON8中的PIN10电平无变化,始终为低电平。
运行日志如下:
(1) 点击LED1
[ 4220.502229] led open
[ 4220.506919] led ioctl with cmd:1,arg:0
[ 4220.510920] gpio_set_value(gpio3_16, 0->0(0)) // 设置为0,灯亮
[ 4220.518187] led release
[ 4221.627404] led open
[ 4221.630117] led ioctl with cmd:0,arg:0
[ 4221.634060] gpio_set_value(gpio3_16, 0->1(1)) // 设置为0,灯灭
[ 4221.640654] led release
(2) 点击LED3
[ 4261.231931] led open
[ 4261.234248] led ioctl with cmd:1,arg:2
[ 4261.238206] gpio_set_value(gpio1_31, 0->0(0))// 设置为0,实测为低电平
[ 4261.243247] led release
[ 4262.384003] led open
[ 4262.387916] led ioctl with cmd:0,arg:2
[ 4262.391904] gpio_set_value(gpio1_31, 0->1(0)) // 设置为1:实测仍为低电平
[ 4262.396663] led release
请教,以上对GPIO的使用有啥问题?为何LED1灯能正确动作,而实全按LED1修改的LED3却无效?
上面的“[ 4221.634060] gpio_set_value(gpio3_16, 0->1(1)) // 设置为0,灯灭”输入错误,应该是:
[ 4221.634060] gpio_set_value(gpio3_16, 0->1(1)) // 设置为1,灯灭 liuzhu 发表于 2016-8-10 13:34
上面的“[ 4221.634060] gpio_set_value(gpio3_16, 0->1(1)) // 设置为0,灯灭”输入错误,应该是:
[ 4 ...
您好:
您在初始化GPIO引脚时,为什么将其定义为input,您是照着LED的初始化过程来做的吗? 飞凌-chongzi 发表于 2016-8-12 13:33
您好:
您在初始化GPIO引脚时,为什么将其定义为input,您是照着LED的初始化过程来做的吗?
我也觉得奇怪啊,但LED的初始化也是这么写的啊? 看来是没有下文了。。。 liuzhu 发表于 2016-8-16 17:49
看来是没有下文了。。。
您好:
不好意思,关于您的问题我现在调时间给您试一下,因为我没做过类似工作,另外事情也较多,所以咱们一起做一下,耽搁太长希望您谅解
页:
[1]