首页 > 系统相关 >Linux之IR驱动

Linux之IR驱动

时间:2023-11-09 16:31:30浏览次数:34  
标签:ir Linux gpio media IR 红外 rc 驱动 接收


Linux之IR驱动

背景

在光谱中波长自760nm至400um的电磁波称为红外线,它是一种不可见光。红外遥控成本很低,以前广泛应用在电视,空调等电器的控制上面,现在随着蓝牙遥控器慢慢普及,红外遥控越来越少,但在某些场景,还保留着红外通信

Linux之IR驱动_linux

红外属于media子系统里面的rc(remote control)模块,所以相关驱动代码目录为 drivers/media/rc/

相关内核文档:

  • Documentation/devicetree/bindings/media/gpio-ir-receiver.txt
  • Documentation/devicetree/bindings/media/rc.yaml

下面就从红外的接收、发送和编解码协议简单记录下

接收

红外接收的处理有很多种方式,有些soc有专门的硬件模块,有些使用的是通用的gpio,这里以常见的gpio为例,其他的都大同小异。

用通用的GPIO来接收红外原理比较简单,代码实现主要在:

  • drivers/media/rc/gpio-ir-recv.c
  • drivers/media/rc/rc-main.c
  • drivers/media/rc/rc-ir-raw.c

主要流程

。。。。。。



标签:ir,Linux,gpio,media,IR,红外,rc,驱动,接收
From: https://blog.51cto.com/winter91/8284502

相关文章

  • 世微 60V高端电流采样降压恒流驱动器 LED车灯备用灯信号灯 AP5179
    产品描述     AP5179是一款连续电感电流导通模式的降压恒流源,用于驱动一颗或多颗串联LED输入电压范围从5V到60V,输出电流最大可达2.0A。根据不同的输入电压和外部器件,可以驱动高达数十瓦的LED。内置功率开关,采用高端电流采样设置LED平均电流,通过DIM引脚可......
  • Linux程序崩溃自启动方法
     linux进程挂掉后,可以通过配置systemd来自动启动服务1.创建systemd服务文件,例如:huyang.service,需要放置在系统文件夹/etc/systemd/system2.编辑文件,填写详细信息3.操作systemd服务[Unit]Description=huyangSCRSserver#对服务的描述After=netw......
  • Linux关闭防火墙命令
    1:查看防火状态systemctlstatusfirewalldservice iptables status2:暂时关闭防火墙systemctlstopfirewalldservice iptables stop3:永久关闭防火墙systemctldisablefirewalldchkconfigiptablesoff4:重启防火墙systemctlenablefirewalldserviceiptablesrestart ......
  • 防火墙的限制规则2(Linux)
    一:设置防火墙的规则2firewalld通过守护进程(usr/sbin/firewalld)、配置文件(usr/lib/firewalld、/etc/firewalld)、配置命令forewalld-cmd(/usr/sbin/firewalld-cmd)和GUI配置应用程序firewall-config(/use/sbin/firewall-config)来提供服务。在firewalld服务中,有几种类型的......
  • Linux 服务器如何实现数据同步?
    一、简介1认识Rsync(remotesynchronize)是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件。Rsync使用所谓的“Rsync算法”来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快;Rsync支持大多数的类Unix系统......
  • 【Linux上机实验】新实验五 shell编程
    【前言】愿,所有相遇,都恰逢其时!愿,此刻心头,正满怀欣喜!---你好,朋友,欢迎你! ---对此篇博客中有任何问题和不懂的可以咨询QQ:27595909051.编写脚本,从键盘输入10个数,并计算这些数的和(用数组存放20个数)。1.输入visum.sh,创建一个名为"sum.sh"的文件......
  • Linux第十一周学习报告
    进程管道 管道也是一种重定向,重定向字符控制输出到文件,管道控制输出到其他程序;它的作用是把上一个进程的输出作为下一个进程的输入,可以把多个进程连接到一起。 1、将etc/passwd中的用户按照UID数值大小排序,显示前三行,其中“-t”指定字段分隔符。“-k”指定字段,“-n”表示按......
  • Linux杂项
    groups可以查看用户组具体的用法可以参考终端的指南。usermod-aGsudo<用户名>将用户添加到sudo组。将用户添加到指定组,这样就拥有了权限。scp传输文件:我自己使用成功的案例:scp-rC:\zzk\env\video\[email protected]:/home/test/zzk/[email protected]:/......
  • Dalvik虚拟机是在Linux内核上面运行的吗?为什么能执行安卓APK程序?
    Dalvik虚拟机确实是在Linux内核之上运行的。它是安卓系统的关键组件,专门设计来执行APK文件中的代码。这里是它的工作原理和一个生活中的例子:工作原理:基于Linux内核:安卓系统基于Linux内核,这为安卓设备提供了底层功能,如硬件抽象、网络通信、安全机制等。Dalvik虚拟机:在Linux......
  • Linux第十周学习报告
    本周学习的是上周没有学完的I/O重定向(老师把上节课讲过的一部分又讲了一遍,这里重复的就不写进来了)1、在第三个终端中使用date>/dev/pts/4使其重定向到终端四,在终端四中输出时间  2、改变描述符为2的文件的输出方向,date命令是正确的,执行结果在终端显示;输入命令如果是错误......