led
unionpi tigher 开发板在多功能扩展接口上提供多达18个GIPO(General Purpose Input/Output Port),即通用输入输出端口。使用GPIO可以采集开关量信号或者控制开关量输出。作为输入端口的时候,可以通过读入管脚的电平状态(高电平或者是电平)来判读电平信号,比如按键的按下和松开检测。作为输出信号,可以通过管脚来控制外围电路,比如驱动继电器或者是LED的亮灭。在后续的报告里我会采用GPIO来驱动一个继电器,该继电器控制一个220V的电机。本文中主要介绍GPIO控制LED的测试。
1.主要参考资料
本文主要参考uninopi sample 参考用例里面的GPIO:https://gitee.com/openharmony/vendor_unionman/tree/master/unionpi_tiger/sample/hardware/gpio
2. 硬件连接图
根据九联科技的开发板使用只能附件2中的40PIN扩展序列图中查找到第33个管脚GPIO.23 对应的GPIO是gpio-386
通过cat /sys/kernel/debug/gpio 查看## GPIO对应关系
图1:40PIN扩展序列图
这里不是很明白的地方,GPIO对应关系``
#define UM_GPIO_01 380
#define UM_GPIO_02 381
#define UM_GPIO_03 382
#define UM_GPIO_04 383
#define UM_GPIO_05 384
#define UM_GPIO_06 385
#define UM_GPIO_07 386
#define UM_GPIO_08 387
#define UM_GPIO_09 388
#define UM_GPIO_10 389
#define UM_GPIO_11 390
#define UM_GPIO_12 391
#define UM_GPIO_13 392
#define UM_GPIO_14 393
#define UM_GPIO_15 394
#define UM_GPIO_16 395
图2: GPIO对应关系
图3 : 硬件实物连接图
3.GPIO控制
根据GPIO的对应关系将LED灯的正极的GPIO.23(UM_GPIO_07,这个对应关系还没搞清楚 )管脚,负极接到开发板的GND。这样通过GPIO输出高电平控制LED亮,输出低电平控制LED灭。
在串口调试窗口下可通过修改如下文件的值来控制GPIO
# echo 386 > /sys/class/gpio/export
# echo out > /sys/class/gpio/gpio386/direction
# echo 1 > /sys/class/gpio/gpio386/value
# echo 0 > /sys/class/gpio/gpio386/value
本来想写个脚本控制一下,无奈WIFI连接有问题,VIM/VI都用不了。下次再搞吧,再附上一个循坏控制的小视频。
|