Cubieboard 4, 5 gpio 编程控制例子
找到了Cubieboard3 GPIO编程控制的例子。但Cubieboard 4, 5板子不一样, 请问 Cubieboard4 , 5 有GPIO编程控制的例子吗?急找。值此先谢了。Cubieboard 4, 5 板子好, 希望技术支持能跟上,这样可加速开发,然后购买批量板子。
这里有个 CubieBoard4 的 GPIO 控制
http://cubie.cc/forum.php?mod=viewthread&tid=4884
在终端中敲入以下命令
1 $ cd /sys/class/gpio
2.计算GPIO号码
一般的GPIO码值:
GPIOA: 0
GPIOB: 32
GPIOC: 64
GPIOD: 96
GPIOE: 128
GPIOF: 160
GPIOG: 192
GPIOH: 224
3、我们以GPE11为例。
GPE0的头是128,GPE11 就是128+11 = 139.
$ echo 139 > /sys/class/gpio/export
ls 一下看看有没有 gpio139 这个目录
4、设置参数
$ echo out > /sys/class/gpio/gpio139/direction
$ echo 1 > /sys/class/gpio/gpio139/value
不过,经过我测试的情况来看,如果在 sys_config.fex 里已经配置有该 GPIO 口的话,
$ echo 139 > /sys/class/gpio/export
上面这个命令,就不生效了,就不会生成 gpio139。。。(不过你可以试下)
后续新固件会添加一些GPIO,I2C等等操作DEMO。
CB4,CB5 GPIO 非SYS_CONFIG.fex有操作有如下几种方法
1.1 用户空间通过pinctrl操作
#mount -t debugfs debugfs /mnt
#cd /mnt/sunxi_pinctrl
//set the PH9 pin as output port .If type "echo PH9 0 > function" ,set the PH9 pin as input port
#echo PH9 1 > function
//set the PH9 pin as low level
#echo PH9 0 > data
#sleep 1
//set the PH9 pin as high level
#echo PH9 1 > data
#echo PH8 1 > function
#echo PH8 1 > data
1.2 用户空间通过mem映射.
代码demo参考附件gpio.tar.gz 里面gpio-mem-user.c
1.3 驱动层,使用标准gpio API : gpio_request,gpio_direction_output, gpio_set_value 等等。
代码demo参考附件gpio.tar.gz 里面gpio-test-driver.c
在楼主的帮助下gpio的控制已实现。万分感谢!
出现了一个新问题: 我们是用来控制一个外接照相LED灯光, 灯光原始设计电压3V。控制下的灯光亮度达不到要求。显然, 控制下的电压偏低。 我们在Cubieboard4 上试了PGxx pin, 均如此。看了别的资料, 说是VCC pin 不能被控制关开,且在 sys_config.fex 上未见。还有别的办法吗? 谢谢!
我在Cubieboard4 与LED间加了硬件L298N, 使用VCC-5V电源, 解决了这个问题,与大家交流。
页:
[1]