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

wordpress主题模板视频网站电子商务网站设计的书

wordpress主题模板视频网站,电子商务网站设计的书,作弊网站,安丘市住房和城乡建设局网站目录 一、简介 1、了解IR协议 2、代码结构介绍 二、硬件原理及连接 2、芯片手册解读 三、驱动代码分析 1、设备树介绍 1#xff09;reg 2#xff09;protocol 3#xff09;pinctrl 4#xff09;map 2、linux驱动介绍 1#xff09;makefile 2#xff09;数据…目录 一、简介 1、了解IR协议 2、代码结构介绍 二、硬件原理及连接 2、芯片手册解读 三、驱动代码分析 1、设备树介绍 1reg 2protocol 3pinctrl 4map 2、linux驱动介绍 1makefile 2数据结构 3驱动代码 3、重要的代码配置 四、调试方法 1、sysfs 2、输入子系统的设备文件 3、查看模块 一、简介 本文做一些IR驱动的简要分析先来了解基本知识 1、了解IR协议 全面了解红外遥控(中文版) - 道客巴巴 1、概况一下就是遥控发送约定的红外波形根据IR协议构造的波形 → IR接收模块该红外波形→ 主控解码并响应。 2、看代码前首先理解IR的一般概念 1IR的四种码值(高低电平组合)头码、地址码、命令码、重复码 2IR的两种状态按下、持续按下(repeat) 3IR模式遥控器键值对、鼠标鼠标移动/点击 4IR配对模式 - 有些遥控会有 2、代码结构介绍 所在层次名称代码路径 kernel ir driver release/aml-comp/kernel/aml-5.4/kernel/aml-5.4/drivers/amlogic/input/ir/meson_ir_main.c //驱动的入口文件 release/aml-comp/kernel/aml-5.4/kernel/aml-5.4/drivers/amlogic/input/ir/meson_ir_core.c //核心函数实现 release/aml-comp/kernel/aml-5.4/kernel/aml-5.4/drivers/amlogic/input/ir/meson_ir_cdev.c //字符设备实现 release/aml-comp/kernel/aml-5.4/kernel/aml-5.4/drivers/amlogic/input/ir/meson_ir_sysfs.c //sysfs目录实现 release/aml-comp/kernel/aml-5.4/kernel/aml-5.4/drivers/amlogic/input/ir/meson_ir_decoder_xmp.c //xmp软件解码实现 release/aml-comp/kernel/aml-5.4/kernel/aml-5.4/drivers/amlogic/input/ir/meson_ir_raw.c //解码事件处理(软件解码用到) release/aml-comp/kernel/aml-5.4/kernel/aml-5.4/drivers/amlogic/input/ir/meson_ir_regmap.c //寄存器映射协议相关 kernelpinctrl子系统release/aml-comp/kernel/aml-5.4/kernel/aml-5.4/drivers/pinctrl/meson/*kerneldts release/aml-comp/kernel/aml-5.4/arch/arm/boot/dts/amlogic/t5d_t950d4_am301_linux_1.5g_cvte.dts //1.5g指ddr内存 release/aml-comp/kernel/aml-5.4/arch/arm/boot/dts/amlogic/t5d_t950d4_am301_linux_1g_cvte.dts release/aml-comp/kernel/aml-5.4/arch/arm/boot/dts/amlogic/t5d_t950d4_am301_linux_512m_cvtelinux.dts //以上修改的话最好一起修改覆盖不同芯片多个方案 release/aml-comp/kernel/aml-5.4/arch/arm/boot/dts/amlogic/mesont5d.dtsi release/aml-comp/kernel/aml-5.4/arch/arm/boot/dts/amlogic/meson-ir-map.dtsi bootir driver release/aml-comp/uboot/bl30/src_ao/demos/amlogic/driver/ir/ 二、硬件原理及连接 1、 IR遥控板经过RC电路接入到CPU端的IR_IN引脚 2、芯片手册解读 1硬件解码的IR模块简介 T950D4器件集成有IR控制器驱动可以配置选择硬件解码硬件自动完成波形解码只需读取对应寄存器就可以得到码值。 2引脚功能描述 三、驱动代码分析 1、设备树介绍 release/aml-comp/kernel/aml-5.4/arch/arm/boot/dts/amlogic/mesont5d.dtsi 这里的节点定义了重要的ir配置下面介绍重点配置 1reg reg硬件解码的配置寄存器。 2protocol /release/aml-comp/kernel/aml-5.4/scripts/dtc/include-prefixes/dt-bindings/input/meson_ir.h /release/aml-comp/kernel/aml-5.4/include/dt-bindings/input/meson_ir.h 从opengrok的搜索结果可以看到 REMOTE_TYPE_NEC 值为0x01 3pinctrl 1、引脚的初始化实现详见pinctrl子系统 release/aml-comp/kernel/aml-5.4/kernel/aml-5.4/drivers/pinctrl/meson/pinctrl-meson-t5d.c 2、模块名详见makefile 3、查看当前的内联模块 cat /lib/modules/$(uname -r)/modules.builtin | more | grep aml_pinctrl 4、pinctrl子系统介绍 1Linux内核之pinctrl子系统Linux内核之pinctrl子系统 - 知乎 2一文解析pinctrl一文搞懂 | Linux pinctrl/gpio子系统 - 知乎 4map map custom_maps; 会引用到以下dtsi的数据节点 release/aml-comp/kernel/aml-5.4/arch/arm/boot/dts/amlogic/meson-ir-map.dtsi 1、6套遥控解码同一协议 2、头码 3、发送repeat码的时间间隔 4、scancode硬件解码得到 和 keycode用户定义 的对应应用层得到的是keycode 2、linux驱动介绍 1makefile 通过makefile了解用到的代码文件 值得注意CONFIG_AMLOGIC_MESON_IRy 即该驱动是编进内核的。 2数据结构 IR协议结构体 3驱动代码 需要注意代码里兼容了软件解码和硬件解码我们使用硬件解码只需要关注硬解部分即可下面以硬件解码来展开 release/aml-comp/kernel/aml-5.4/kernel/aml-5.4/drivers/amlogic/input/ir/meson_ir_main.c //驱动的入口文件 1、驱动入口init 驱动模型为平台设备驱动这里实现了driver没有实现device设备信息从设备树里获取 2、meson_ir_probe初始化函数中的关键操作 1挂接回调函数 meson_ir_report_rel 为上报位置信息当模式为mouse cursor时才用到这里没有用到 2注册输入子设备 3hardware相关初始化 这里获取设备树节点信息、注册中断、中断下半部tasklet chip-set_register_config(chip, chip→protocol); 这里进行IR协议初始化 meson_ir_interrupt 如果有IR数据首先会进入中断处理 rc-protocol REMOTE_TYPE_NEC 0x01MULTI_IR_SOFTWARE_DECODE(rc-protocol) 0 //multi_ir指软件解码故会走else分支ENABLE_LEGACY_IR(rc-protocol) 0 //legacy ir指旧架构的IR模块 进入中断下半部处理 meson_ir_tasklet 进行按键上报 按键的两种一般状态 IR_STATUS_NORMAL 短按 IR_STATUS_REPEAT 长按 进入meson_ir_keydown处理 值得注意一次完整的短按包含keydown和keyup事件 打开log后观察打印可以看到如下 keyup事件在定时器超时后执行 4字符设备初始化 创建字符设备sysfs_init主要是创建各种属性包括很多调试属性文件。 3、重要的代码配置 1LEGACY_IR_TYPE_MASK(type) //legacy_ir指的是旧架构的IR模块这里为了兼容 2MULTI_IR_TYPE_MASK(type)  //multi_ir是指软件解码软件解码支持多种IR协议但硬件解码只支持一种IR协议 四、调试方法 1、sysfs 举例开启log打印 echo 1 /sys/class/remote/amremote/debug_enable echo 7  /proc/sys/kernel/printk 2、输入子系统的设备文件 cat /proc/bus/input/devices   //查看输入设备信息 input设备/sys/class/input/input2 事件设备/dev/input/event2 3、查看模块 cat /lib/modules/$(uname -r)/modules.builtin | more | grep meson_ir
http://www.huolong8.cn/news/94959/

相关文章:

  • 深圳比较好的ui设计公司小果seo实战培训课程
  • 网站制作定制图pc网站如何做sp
  • 最新网站建设软件wordpress 虾米音乐插件
  • 建站价格会差网站空间多大
  • 学校网站资源建设方案制作排行榜的软件
  • 深圳网站专业建设公司政协门户网站建设方案
  • 本科学计算机是做网站吗网站开发费用包括美工费吗
  • 网络推广营销网站建设专家flash做网站的论文
  • 网站开发技术代码源码可以做网站吗
  • 阜阳市住房和城乡建设局网站网络营销是什么样子的
  • 产品网站免费模板下载地址做一个宣传网站的策划书
  • 360网站页面的工具栏怎么做网站移动端的设计思想
  • hype做网站动效wordpress kallyas
  • 做海淘是在哪个网站好文学写作网站
  • 开封网站推广公司业务型网站做seo
  • 在局网站 作风建设方案开发app需要的技术
  • 成都市建设相关网站做外汇看新闻在什么网站看
  • 自己做网站不推广网站开始怎么做
  • 品牌手表网站移动端网站咋做
  • 网站优化招商有哪些做平面设计好的网站有哪些
  • 我想做一个网站怎么做网站不关站备案
  • 深圳商城网站设计公司怎样做企业宣传推广
  • 成都 网站开发网站推广引流
  • 秦皇岛手机网站制作价格wordpress的pjax主题
  • 网站的内部优化网站制作公司怎么样
  • wordpress主题原理网站搜索引擎优化的步骤
  • 网站注册流程和费用网站导航栏动效怎么做
  • iis 默认网站删除成都网站优化
  • 济南建设网站哪里好wordpress主题演示导入
  • 泰兴网站开发一个企业seo网站的优化流程