当前位置: 首页 > news >正文

秦皇岛高端网站设计企业建站系统漏洞

秦皇岛高端网站设计,企业建站系统漏洞,外行学习个人网站建设,wordpress前台浏览量插件Linux版本号4.1.15 芯片I.MX6ULL 大叔学Linux 品人间百味 思文短情长 本节笔记主要内容是学会如何使用Linux自带的按键驱动程序。 一、自带按键驱动程序源码简析 配置选项路径如下#xff1a; - Device Drivers - - Device Drivers         - Input device support                 - Generic input layer (needed for keyboard, mouse, ...) (INPUT [y])                         - Keyboards (INPUT_KEYBOARD [y])                                 -GPIO Buttons 如果要使用设备树来描述 KEY 设备信息的话设备节点的 compatible 属性值要设置为“gpio-keys”。 当设备和驱动匹配以后 gpio_keys_probe 函数就会执行 pdata gpio_keys_get_devtree_pdata(dev); 调用 gpio_keys_get_devtree_pdata 函数从设备树中获取到 KEY 相关的设备节点 信息。 input devm_input_allocate_device(dev); 使用 devm_input_allocate_device 函数申请 input_dev。 726 input-name pdata-name ? : pdev-name; 727 input-phys gpio-keys/input0; 728 input-dev.parent pdev-dev; 729 input-open gpio_keys_open; 730 input-close gpio_keys_close; 731 732 input-id.bustype BUS_HOST; 733 input-id.vendor 0x0001; 734 input-id.product 0x0001; 735 input-id.version 0x0100; 初始化 input_dev。 __set_bit(EV_REP, input-evbit); 设置 input_dev 事件这里设置了 EV_REP 事件。 error gpio_keys_setup_key(pdev, input, bdata, button); 调用 gpio_keys_setup_key 函数继续设置 KEY此函数会设置 input_dev 的EV_KEY 事件码(也就是 KEY 模拟为哪个按键)。 error input_register_device(input); 调用 input_register_device 函数向 Linux 系统注册 input_dev。 gpio_keys_setup_key 函数此函数内容如下 input_set_capability(input, button-type ?: EV_KEY, button-code); 调用 input_set_capability 函数设置 EV_KEY 事件以及 KEY 的按键类型也就是 KEY 作为哪个按键我们会在设备树里面设置指定的 KEY 作为哪个按键。 事件上报是在 gpio_keys_irq_isr 函数中完成的 input_event(input, EV_KEY, button-code, 1); 向 Linux 系统上报 EV_KEY 事件表示按键按下。 input_sync(input); 使用 input_sync 函数向系统上报 EV_REP 同步事件。 综上所述 Linux 内核自带的 gpio_keys.c 驱动文件思路和我们前面编写的 keyinput.c 驱动 文件基本一致。都是申请和初始化 input_dev设置事件向 Linux 内核注册 input_dev。最终在 按键中断服务函数或者消抖定时器中断服务函数中上报事件和按键值。 二、自带按键驱动程序的使用 在设备树中添加指定的设备节点即可节点要求如下 ①、节点名字为“gpio-keys”。 ②、 gpio-keys 节点的 compatible 属性值一定要设置为“gpio-keys”。 ③、所有的 KEY 都是 gpio-keys 的子节点每个子节点可以用如下属性描述自己 gpios KEY 所连接的 GPIO 信息。         interrupts KEY 所使用 GPIO 中断信息不是必须的可以不写。         label KEY 名字         linux,code KEY 要模拟的按键 ④、如果按键要支持连按的话要加入 autorepeat。 1 gpio-keys { 2 compatible gpio-keys; 3 #address-cells 1; 4 #size-cells 0; 5 autorepeat; 6 key0 { 7 label GPIO Key Enter; 8 linux,code KEY_ENTER; 9 gpios gpio1 18 GPIO_ACTIVE_LOW; 10 }; 11 }; 第 5 行 autorepeat 表示按键支持连按。 第 6~10 行 ALPHA 开发板 KEY 按键信息名字设置为“GPIO Key Enter”这里我们将开发板上的 KEY 按键设置为“EKY_ENTER”这个按键也就是回车键效果和键盘上的回车键一样。         最后设置 KEY 所使用的 IO 为 GPIO1_IO18一定要检查一下设备树看看此 GPIO 有没有 被用到其他外设上如果有的话要删除掉相关代码 重新编译设备树然后用新编译出来的 imx6ull-alientek-emmc.dtb 启动 Linux 系统系统启 动以后查看/dev/input 目录看看都有哪些文件结果如图 可以看出存在 event1 这个文件这个文件就是 KEY 对应的设备文件使用hexdump 命令来查看/dev/input/event1 文件输入如下命令 hexdump /dev/input/event1 然后按下 ALPHA 开发板上的按键终端输出图 如果按下 KEY 按键以后会在终端上输出图所示的信息那么就表示 Linux 内核的按 键驱动工作正常。 本文为参考正点原子开发板配套教程整理而得仅用于学习交流使用不得用于商业用途。
http://www.dnsts.com.cn/news/192712.html

相关文章:

  • 企业网站怎么做才好鼎豪网站建设
  • 领优惠券的网站是怎么做的crm永久免费
  • 《两学一做 榜样》网站做网站网站多久会被抓
  • 上海网站建站建设价格查询
  • 果女做拍的视频网站网站开发软件h开头的
  • php网站开发平台温州网页设计制作
  • 网站建设安全性没有网站可以做网络推广吗
  • 建设网站最便宜多少钱p2p网站如何建设
  • 茶叶电子商务网站建设的结论深圳品牌沙发
  • 个人网站建设模板做APP好还是建设网站好
  • 承德网站建设怎么做磁力搜索器在线
  • 网站跟app的区别是什么html代码自动生成
  • 网站打不开横岗网站建设公司
  • 网站做电商销售需要注册吗毕设做网站答辩会要求当场演示吗
  • 网站建设与维护一年多少钱注册网约车主需要什么条件
  • 人才网站建设经费用途萍乡的电子商务网站建设公司
  • wordpress评论生成保定百度推广优化排名
  • 中文网站模板公司的网站建设价格低
  • 哪个基层司法所网站做的比较好西宁网站设计企业
  • wordpress网站前端优化手机网站设计只找亿企邦
  • h5企业网站只做青岛手机端建站模板
  • 百度网盟推广有哪些网站龙岩网站建设方案书
  • 制作一个在线收费网站小型网站制作
  • 锦州网站建设新闻网博士智能建站
  • 深圳o2o网站建设互联网设计公司网站
  • 松江做营销网站美图秀秀在线修图
  • 怎么免费建立自己的网站步骤温州旅游 网站建设
  • 网站建设存在哪些问题一个门户网站需要多大的空间
  • 宁波中科网站建设有限公司oppo软件商店更新
  • 做网站高亮wordpress 淘宝分享插件