5.DB410c开发板button功能扩展和led功能扩展测试。
时间:10-02
整理:3721RD
点击:
上一个试用帖子中对db410c开发板自带两个按钮进行了功能测试。
通过操作"/dev/input/event0"节点,可以获得S4按钮(volume down)按下,释放的中断,通过读这个节点获得key-code为0x72(KEY_VOLUMEDOWN定义数值),与dts中的定义一致
linux,code = <KEY_VOLUMEDOWN>;只是系统input子系统event0与默认kernel的event0不一样。
后者一般都是表示keys,而我们前者是自己单独添加的驱动,这点要注意。
节点"/dev/input/event1",对应gpio_keys驱动实现。
在dts中添加下面的节点数据
按照上面的定义接线
继续写一个应用程序来读取外接button的按键操作。
跟上一个帖子中的代码几乎一样,就是修改一下节点名称,这里略过。
下面是按钮按下,然后释放的运行结果,实际中要区分按钮被按下,一直按住,和释放三张状态,根据自己的实际需求来编程。
开发板自带led功能,其他人已经测试通过,我们这里测试一下外接led的功能如何实现。
第一步是设置dts内容。
第二步外接led灯
第三步修改led测试应用程序
#define LED7 "/sys/class/leds/user-led7/brightness" 要点是这个定义。
编译运行
知识总结:
1)dts中如何设置button和led的gpio和其他属性,dts的编译,加载;
2)pinctl,gpio,gpio_key和led驱动相关知识。
通过操作"/dev/input/event0"节点,可以获得S4按钮(volume down)按下,释放的中断,通过读这个节点获得key-code为0x72(KEY_VOLUMEDOWN定义数值),与dts中的定义一致
linux,code = <KEY_VOLUMEDOWN>;只是系统input子系统event0与默认kernel的event0不一样。
后者一般都是表示keys,而我们前者是自己单独添加的驱动,这点要注意。
节点"/dev/input/event1",对应gpio_keys驱动实现。
在dts中添加下面的节点数据
按照上面的定义接线
继续写一个应用程序来读取外接button的按键操作。
跟上一个帖子中的代码几乎一样,就是修改一下节点名称,这里略过。
下面是按钮按下,然后释放的运行结果,实际中要区分按钮被按下,一直按住,和释放三张状态,根据自己的实际需求来编程。
开发板自带led功能,其他人已经测试通过,我们这里测试一下外接led的功能如何实现。
第一步是设置dts内容。
第二步外接led灯
第三步修改led测试应用程序
#define LED7 "/sys/class/leds/user-led7/brightness" 要点是这个定义。
编译运行
知识总结:
1)dts中如何设置button和led的gpio和其他属性,dts的编译,加载;
2)pinctl,gpio,gpio_key和led驱动相关知识。