红外线遥控器(NEC编码方式)
红外遥控协议标准(NEC RC5)及编程
红外遥控协议标准(NEC/RC5/RC5X)及编程目录1.NEC码遥控器技术标准2.RC5/RC5X码遥控器技术标准3.解码原理及算法(NEC)4.实例代码(NEC)1.NEC码遥控器技术标准特点:8位的系统码和8位的命令码长度为了增加可靠性,地址码(即用户码)和命令码都要发送两次脉冲宽度调制载波频率为38K每一位的时间长度为1.12ms或2.25ms其逻辑1与逻辑0的表示如图所示:逻辑1为2.25ms,脉冲时间560us;逻辑0为1.12ms,脉冲时间560us。
所以我们根据脉冲时间长短来解码。
推荐载波占空比为1/3至1/4。
NEC协议格式:首次发送的是9ms的高电平脉冲,其后是4.5ms的低电平,接下来就是8bit 的地址码(从低有效位开始发),而后是8bit的地址码的反码(主要是用于校验是否出错)。
然后是8bit 的命令码(也是从低有效位开始发),而后也是8bit的命令码的反码。
地址和命令发送两次。
第二次发送时,所有的位取反,用来验证第一次发送的消息。
如果开发者不用验证,则可以忽略验证的数据,或者将地址或命令扩展为16bit以上是一个正常的序列,但可能存在一种情况:你一直按着1个键,这样的话发送的是以110ms为周期的重复码,如下图:就是说,发了一次命令码之后,不会再发送命令码,而是每隔110ms时间,发送一段重复码。
重复码由9ms高电平和2.25ms的低电平以及560us的高电平组成。
需要注意的是:1838红外一体接收头为了提高接受灵敏度。
输入高电平,其输出的是相反的低电平。
2、编程注意事项2.1红外接收头引脚信号是相反的电平。
2. 2数据从LSB(低位)开始发送,所以选择右移方式接收数据。
四个字节的数据都是先发送D0,最后发送D7。
所以接收到1位数据后,给变量的最高位赋值,右移。
或者先右移,再给变量的最高位赋值。
2.3.可以用一个数组保存32个数据的持续时间,用于后面判断高低电平。
用定时器对两个数据(中断)之间的时间计时,并保存这个持续时间用于以后判断是位1还是位0。
红外线遥控器NEC编码方式
FAE Service Department designed
遙控器IC的種類
按功能:單一、多功能 1. 單一 2. 單一簡單的(通常用AISC) 3. 單一特殊的(通常用MASK、OTP) 多功能 1. 單一多功能(通常用OTP、MASK) 2. 萬能多代碼(通常用OTP、MASK) 3. 萬能組合多合一 (通常用MASK) 按用途 1. 電視(通常MASK、ASIC、OTP) 2. VCD(通常ASIC、如6122) 3. DVD(通常ASIC、如6122) 4. VCR (通常ASIC、如6122) 5. 空調(通常OTP、MASK,是4bit.8bit) 6. 音像設備(通常ASIC、如6122)
延時程序:客戶自己加入的延時程序, 配合鍵盤掃描程序使用。
FAE Service Department designed
HT48R09E4學習型遙控器軟件流程
鍵盤掃描程序:
鍵盤掃描程序有以下步驟:
1. 查看PA(為行掃描IO口)的狀態
PA=FFH,無鍵按下。
則初始化相關變量后返回main
PA!=FFH,有鍵按下,
1Kx14
32x8
17
--
--
--
--
v
v
--
8Kx16
224x8
23
1
1
1
2
--
v
v
24Kx16
224x8
23
1
1
1
2
--
v
v
40Kx16
224x8
23
1
1
1
2
--
v
v
Note: Part numbers including "C" are mask version devices while "R" are OTP devices.
红外遥控原理与nec协议介绍
红外遥控原理与nec协议介绍
红外遥控原理与NEC协议介绍
在现代家居中,我们经常使用的电器设备多数都配备了红外遥控功能,这是一种非常方便的控制方式,它使得我们可以在不接触设备的情况下,方便地控制它们的开关、调节等操作。
那么,红外遥控是如何实现的呢?NEC协议又是什么?
红外遥控原理
红外遥控所用的信号是红外线,光波的频率高于红外线的频率,因此红外线是我们肉眼无法看到的。
当我们按下遥控器上的按钮后,遥控器内部的红外LED会发出一个特定频率的光波,这个光波会通过空气传递到电器设备中的红外接收器(IR Receiver)。
红外接收器会将接
收到的光波转化为电信号,并将其传递给设备的中央处理器,中央处理器便会根据接收到的电信号执行相应的操作。
NEC协议介绍
NEC是红外遥控信号最为常用的协议之一,它是由日本NEC公司开发的。
NEC协议采用了脉冲编码调制技术(Pulse Coded Modulation, PCM),将发送的数据进行脉冲编码,以使接收端可以正确地解码。
NEC
协议的传输速率为38kHz,每个数据包由4个字节组成,其中第一个字节表示设备地址,第二个字节表示设备地址的反码,第三个字节表示数据码,第四个字节表示数据码的反码。
NEC协议可以支持多达256个设备地址,因此可以同时控制多个设备。
总结
红外遥控技术在现代家居中得到广泛应用,它是一种方便、快捷的控制方式,使得我们可以在不接触设备的情况下控制它们。
NEC协议是红外遥控信号最为常用的协议之一,它采用了脉冲编码调制技术,能够支持多达256个设备地址,因此能够满足多设备控制的需求。
nec红外遥控工作原理 -回复
nec红外遥控工作原理-回复红外遥控是一种常见的无线通信技术,用于控制电子设备的操作。
NEC红外遥控是一种广泛应用于电视遥控器、空调遥控器、DVD遥控器等家电产品中的一种红外遥控协议。
一、红外遥控概述红外遥控是通过红外线传输信息的一种技术。
人眼无法直接看到红外线,但红外线可以被物体表面反射、传导和放射,从而实现控制信号的传输。
红外线传输具有无线、不易被干扰和适合短距离传输等特点。
二、NEC红外遥控协议NEC是一种广泛应用的红外遥控协议,其工作原理包括协议格式、信号编码、数据包传输、命令解析等。
1. 协议格式NEC的协议格式中包含了标记位、地址码、地址反码、命令码和命令反码等字段。
标记位用于标识红外遥控信号开始的位置,地址码和地址反码用于识别设备的唯一地址,命令码和命令反码用于指示遥控设备的具体操作。
2. 信号编码NEC协议使用脉宽编码方式,即通过红外信号的高电平和低电平时间来编码传输的信息。
高电平时间一般为560微秒,低电平时间分为两种,长电平时间为1.69毫秒,短电平时间为0.56毫秒。
信号编码时,通过不同组合的高低电平时间来表示不同的位数,从而实现遥控命令的传输。
3. 数据包传输NEC协议的数据包传输是通过一系列的信号编码来实现的。
通常一个完整的数据包由协议格式中的标记位、地址码、地址反码、命令码和命令反码组成。
数据包的传输时长相对固定,即通过一定时间间隔发送不同的数据包。
4. 命令解析接收端接收到红外遥控信号后,需要进行命令解析才能识别出具体的操作。
解析过程包括对信号编码的解码、校验地址码和地址反码是否相反、是否接收到正确的数据包等步骤。
通过解析命令码,可以确定需要执行的操作,从而实现对电子设备的控制。
三、NEC红外遥控的工作原理NEC红外遥控的工作原理基于红外线的传输和信号编码。
具体工作原理如下:1. 发送端工作原理发送端通常由红外发射器和控制电路组成。
控制电路根据用户的操作指令生成相应的信号编码。
ir常用编码格式 -回复
ir常用编码格式-回复什么是常用的IR编码格式?IR(红外线)编码格式是一种用来传递红外线信号的数字编码标准。
它被广泛应用于遥控设备,例如电视、音响、空调和机顶盒等。
常用的IR编码格式有多种,每种编码格式都具有自己独特的特点和用途。
1. NEC编码格式NEC编码格式是最常见和最普遍使用的IR编码格式之一。
它由NEC公司设计并广泛应用于消费类电子产品的遥控设备中。
NEC编码格式使用38kHz的红外载波频率来传输数据,并将0和1二进制逻辑编码成600μs的高电平和600μs的低电平。
NEC编码格式具有高可靠性和简单的实现方式,因此被广泛应用于各种电子设备。
2. RC-5编码格式RC-5编码格式是由荷兰公司Philips开发的一种IR编码标准。
它广泛应用于Philips以及一些其他品牌的遥控设备中。
RC-5编码格式使用36kHz 的红外载波频率,并将0和1的二进制逻辑编码成由889μs长的位周期以及不同的偏移量组成的波形。
RC-5编码格式具有较高的抗干扰能力和较长的传输距离,因此适用于一些特殊环境下的遥控设备。
3. Sony SIRC编码格式Sony SIRC(Sony Infrared Remote Control)编码格式是由索尼公司开发的一种IR编码标准。
它被广泛应用于Sony品牌的遥控设备中。
Sony SIRC编码格式使用40kHz的红外载波频率,并将每位数据编码成同样长度的波形,其中高电平的时间表示1,低电平的时间表示0。
Sony SIRC 编码格式具有较高的数据传输速率和较低的成本,因此被广泛应用于各种消费类电子产品。
4. RCMM编码格式RCMM(Remote Control Message Format)编码格式是由赛博感应公司(Cybernetic Micro Systems)开发的一种IR编码标准。
它主要应用于一些专业设备和工控设备的遥控系统中。
RCMM编码格式使用36kHz 或40kHz的红外载波频率,并将每个按键的数据编码成由预定数量的高电平和低电平组成的波形。
华宝空调红外遥控编码资料
华宝空调红外遥控编码资料简介华宝空调是一款广泛使用的家用空调品牌,它提供了方便的红外遥控功能,使得用户可以轻松控制空调的各种设置。
本文将介绍华宝空调红外遥控编码资料,包括红外遥控编码的原理、常用编码格式、编码数据的解析和使用方法等。
红外遥控编码原理红外遥控编码是通过发送特定的红外脉冲信号来实现对设备的控制。
华宝空调红外遥控编码原理基于脉冲宽度调制(PWM)技术,即通过调整脉冲信号的宽度来表示不同的控制指令。
常用编码格式华宝空调红外遥控编码使用了一种常见的编码格式,即NEC编码格式。
NEC编码格式是一种广泛应用于红外遥控领域的标准编码格式,它使用了32位二进制数据表示一个完整的红外遥控指令。
NEC编码格式的具体结构如下: - Header:8位数据,用于表示一个遥控指令的开始。
- Address:8位数据,用于表示遥控器的地址。
- Command:8位数据,用于表示具体的遥控指令。
- Inverted Command:8位数据,用于表示Command的反码。
编码数据的解析要解析华宝空调红外遥控编码数据,可以按照以下步骤进行: 1. 接收红外遥控编码数据。
2. 解析Header,判断是否为一个完整的红外遥控指令。
3. 解析Address,获取遥控器的地址。
4. 解析Command,获取具体的遥控指令。
5. 对Command进行处理,执行相应的操作。
使用方法要使用华宝空调红外遥控编码,可以按照以下步骤进行: 1. 获取红外遥控编码数据。
2. 解析编码数据,获取遥控指令。
3. 根据遥控指令,执行相应的操作,如调整温度、风速、模式等。
下面是一个示例代码,演示如何使用华宝空调红外遥控编码进行温度调节:# 导入红外遥控库import infrared_remote_control as irc# 获取红外遥控编码数据data = irc.get_infrared_data()# 解析编码数据header = irc.parse_header(data)address = irc.parse_address(data)command = irc.parse_command(data)# 判断遥控指令类型if command == "temperature_up":# 温度增加temperature = irc.get_current_temperature()irc.set_temperature(temperature + 1)elif command == "temperature_down":# 温度减少temperature = irc.get_current_temperature()irc.set_temperature(temperature - 1)else:# 其他指令pass总结华宝空调红外遥控编码资料介绍了红外遥控编码的原理、常用编码格式、编码数据的解析和使用方法。
红外NEC编码及调制解调
遥控器在按键按下后,周期性地发出同一种 32 位二进制码,周期约为 108ms。一组码本身的持续时 间随它包含的二进制“0”和“1”的个数不同而不同,大约在 45~63ms 之间。 当一个键按下超过 36ms, 振荡器使芯片激活, 将发射一组 108ms 的编码脉冲,这 108ms 发射代码由 一个起始码(9ms),一个结果码(4.5ms),低 8 位地址码(9ms~18ms),高 8 位地址码(9ms~18ms),8 位数据码(9ms~18ms)和这 8 位数据的反码(9ms~18ms)组成。如果键按下超过 108ms 仍未松开,接 下来发射的代码(连发代码)将仅由起始码(9ms)和结束码(2.5ms)组成。 3 接收器及解码 一体化红外线接收器是一种集红外线接收和放大于一体,不需要任何外接元件,就能完成从红外线 接收到输出与 TTL 电平信号兼容的所有工作,而体积和普通的塑封三极管大小一样,它适合于各种红外线 遥控和红外线数据传输。 红外一开始发送一段 13.5ms 的引导码,引导码由 9ms 的高电平和 4.5ms 的低电平组成,跟着引导 码是系统码,系统反码,按键码,按键反码,如果按着键不放,则遥控器则发送一段重复码,重复码由 9ms 的高电平,2.25ms 的低电平,跟着是一个短脉冲,本程序经过试用,能解大部分遥控器的编码! //串口通信程序 //向 pc 串口发送数据 //pc 端使用 超级终端 建立连接 //9600 8 位数据 1 位停止 #include <iom16v.h> #include <macros.h> #include "uart0.h" #define uint unsigned int #define uchar unsigned char uchar irr_b=0,s_s=0; uchar wb=0,a=0,ds=0; long da=0; uchar d1,d2,d3,d4; uchar ten_1,ten_2,ten_3,ten_4,i;
红外遥控协议分析之:NEC协议
红外遥控编码传输协议生产厂家对红外遥控的编码做了严格的规范,目前国内外主流的红外遥控编码传输协议有十多种,如NEC、Philips RC-5、Philips RC-6、Philips RC-MM、Philips RECS80、 RCA、X-Sat、ITT、JVC、Sharp、Nokia NRC17和Sony SIRC等。
国内最常用的规范有两种:NEC和Sony SIRC。
这两种规范的调制方式分别为:PPM(脉冲间隔调制)和PWM(脉冲宽度调制)。
谈到这两个概念,我需要具体讲解一下,因为我在网上查阅相关资料时甚是郁闷,好多说法相互矛盾。
有说NEC属于PWM的因为它的脉宽不同,PPM的脉宽是固定的。
而细心地朋友如果探究到NEC的典型芯片的芯片手册时,会发现上面这种说法是错误的。
比如UPD6121这款红外远程控制芯片的调制方式为PPM。
后来终于在一家国外的网站上找到了能够自圆其说的解释。
个人认为比较正确,拿来和大家分享。
要想认清红外遥控编码传输协议的具体内容,我想还是先捡其重点来讲一下,编码规范中最重要的当属调制这部分了。
而主流的调制方式有两种分别为PPM和PWM,当然其他还有好几种,这里先不讲解,免得糊涂了。
本文就先介绍下PPM和PWM的区别。
PPM(Pulse Position Modulation),其实更加准确的说法应该是PDM(Pulse Distance Modulation)即脉冲间隔调制:上图为典型编码规范NEC协议的调制图,为PPM调制。
可以看出不管是“0”还是“1”,有高频调制波的地方(下文称其为脉冲)其宽度都是相同的位560us,而脉冲间的间隔则是不同的:“1”时为(2.25ms-560us),“0”时为(1.12ms-560us)。
由此得来PPM的称号。
再来看下PWM的调制波形吧:显然可以看出,“1”的脉冲宽度为1.2ms,“0”的为600us。
而脉冲间隔不管是“0”还是“1”,均为600us。
nec红外协议
nec红外协议NEC红外协议。
NEC红外协议是一种用于红外遥控器通信的协议标准,广泛应用于家电、电子设备等领域。
它采用了38kHz的载波频率,通过调制不同的脉宽来实现数据的传输,具有传输距离远、抗干扰能力强等优点。
本文将对NEC红外协议的原理、格式、编码方式等进行详细介绍,以便对该协议有更深入的了解。
NEC红外协议的原理是通过调制38kHz的载波信号来传输数据。
在NEC协议中,逻辑“0”和逻辑“1”分别用不同的脉宽来表示,通常逻辑“0”用560us的脉宽表示,而逻辑“1”用1690us的脉宽表示。
通过这种方式,接收端可以根据脉宽的不同来解析出发送端发送的数据,从而实现通信的目的。
NEC红外协议的格式通常包括引导脉冲、地址码、反码、命令码等部分。
其中,引导脉冲是一个9ms的高电平脉冲和4.5ms的低电平脉冲交替组成,用于唤醒接收器;地址码用来表示遥控器的地址信息;反码是地址码的反码,用于提高数据传输的可靠性;命令码用来表示具体的操作命令,比如开关机、音量调节等。
通过这样的格式组织,NEC红外协议可以实现对各种遥控器指令的准确传输。
NEC红外协议的编码方式是采用了32位的编码格式,其中包括8位的地址码、8位的地址反码、8位的命令码和8位的命令反码。
这种编码方式可以保证数据的准确性和可靠性,同时也便于接收端对数据进行解析和识别。
通过这种编码方式,NEC红外协议可以实现对各种遥控器指令的精准传输。
总的来说,NEC红外协议作为一种广泛应用的红外遥控器通信协议,具有传输距离远、抗干扰能力强、编码方式简单等优点。
通过对NEC红外协议的原理、格式、编码方式等方面的介绍,相信读者对该协议有了更深入的了解,可以更好地应用于实际的产品开发和设计中。
总结一下,NEC红外协议在红外遥控器通信领域有着重要的地位,其原理简单明了,格式清晰规范,编码方式可靠性高。
相信随着科技的不断发展,NEC红外协议将会有更广泛的应用和发展。
NEC码红外遥控完整编码
NEC码红外遥控完整编码红外遥控编码程序如下:NEC .SECTION 'DATA'a_REM_CODE DB ? ;KEY DATA CODEa_CUSTOMER_1 DB ? ;遥控器头码(客户码)低八位a_CUSTOMER_2 DB ? ;遥控器头码(客户码)高八位#define CUS_6221_1 00110100b ;1234H#define CUS_6221_2 00010010b;@------------------------------------------------NEC_CODE .SECTION 'CODE';@************* SUBROUTINE[xx]: Send Remote Code ************;;遥控码发送:SEND_REMOTE_CODE:clr WDT ;清除进位标志,检测遥控发送的有效的按键SZ fg_SendActive ;SZ表示以0结尾的字符串JMP READY_SEND ;跳转到READY_SEND模块retREADY_SEND:NEC_CODE:mov A,a_KEY_NUM ;将数值发送到寄存器A中,直接寻址mov M_TBLP,ATABRDL a_REM_CODE ;查表专用指令MOV A,CUS_6221_1 ;读取遥控头码(客户码)低八位数值MOV a_CUSTOMER_1,AMOV A,CUS_6221_2MOV a_CUSTOMER_2,A以上为READY_SEND运行模块,同时是为后面NEC码发送的准备;首先将一个按键的数值已以直接寻址方式发送到寄存器A中,将寄存器A 的是发送到M_TBLP中,然后查表a_REM_CODE,将CUS_6221_1的值发送到寄存器中,在赋值给遥控器头码(客户码)低八位a_CUSTOMER_1,同理,将CUS_6221_2赋值给遥控器头码(客户码)低八位a_CUSTOMER_2,随后即开始发送NEC遥控码。
红外遥控编码格式
红外遥控编码格式红外遥控器的编码格式通常有两种格式:NEC与RC5NEC格式的特征:1:使用38 kHz载波频率2:引导码间隔就是9 ms + 4、5 ms3:使用16位客户代码4:使用8位数据代码与8位取反的数据代码下面的波形就是从红外接收头上得到的波形:(调制信号转变成高低电平了)不过需要将波形反转一下才方便分析:NEC 协议通过脉冲串之间的时间间隔来实现信号的调制(英文简写PPM)。
逻辑“0”就是由0、56ms的38KHZ载波与0、560ms的无载波间隔组成;逻辑“1”就是由0、56ms的38KHZ载波与1、68ms的无载波间隔组成;结束位就是0、56ms的38K载波。
下面实例就是已知NEC类型遥控器所截获的波形:遥控器的识别码就是Address=0xDD20;其中一个键值就是Command=0x0E;注意波形先就是发低位地址再发高位地址。
所以0000,0100,1011,1011反转过来就就是1101,1101,0010,000十六进制的DD20;键值波形如下:也就是要将0111,0000反转成0000,1110得到十六进制的0E;另外注意8位的键值代码就是取反后再发一次的,如图0111,0000 取反后为1000,1111。
最后一位就是一个逻辑“1”。
RC5编码相对简单一些:下面的遥控器地址就是1A,键值就是0D的波形同样由于取自红外接收头的波形需要反相一下波形以便于分析:反相后的波形:根据编码规则:得到一组数字:110,11010,001101 根据编码定义第一位就是起始位S 通常就是逻辑1第二位就是场位F通常为逻辑1,在RC5扩展模式下它将最后6位命令代码扩充到7位代码(高位MSB),这样可以从64个键值扩充到128个键值。
第三位就是控制位C 它在每按下了一个键后翻转,这样就可以区分一个键到底就是一直按着没松手还就是松手后重复按。
如图所示就是同一按键重复按两次所得波形,只有第三位就是相反的逻辑,其它的位逻辑都一样。
红外遥控协议 NEC
∙方便理解所看到的波形是从红外接收管出来的信号,跟协议所说的信号高低(0或1)刚好相反。
∙NEC协议是众多红外遥控协议的其中一种,除NEC外,还有RC5、RC6等其它的。
市面上买到的非学习型万能电视遥控器大多集成一种或多种编码是NEC型的,我买的二个遥控器中就有三种以上编码是NEC的。
∙NEC编码的一帧(通常按一下遥控器按钮所发送的数据)由引导码、地址码及数据码组成,,如下图所示,把地址码及数据码取反的作用是加强数据的正确性。
∙
∙引导码及数据的定义如下图所示,当一直按住一个按钮的时候,会隔110ms左右发一次引导码(重复),并不带任何数据
∙
∙以下是用示波器采集到的一直按住某个按钮时的波形:
∙
∙按一下按钮的波形:。
红外线遥控器(NEC编码方式)课件
NEC编码方式采用了独特的冗余校验机制,大大提高了数据传输的可靠性。
高可靠性
低误码率
抗干扰能力强
由于采用了高效的调制解调技术,NEC编码方式的误码率极低,保证了数据传输的准确性。
NEC编码方式具有较强的抗干扰能力,能够在较为复杂的环境中保持稳定的传输性能。
03
02
01
NEC编码方式的实现需要特定的硬件支持,包括红外线发射管和接收管等。
Arduino是一种基于C/C的开源硬件和软件平台,适用于快速原型设计和开发红外线遥控器等物联网设备。
Arduino
Python
05
CHAPTER
红外线遥控器调试与测试
调试工具
示波器、信号发生器、频谱分析仪等。
调试方法
使用示波器观察红外线信号波形,调整信号发生器参数,使波形符合NEC编码标准。
测试环境
无障碍物的空旷场地,确保测试过程中无其他干扰源。
测试方法
将红外线遥控器对准接收器,按下按键,观察接收器是否正常响应。
问题1
红外线信号传输距离过短。
解决方案
调整信号发射角度,增加发射功率。
问题2
红外线信号受到干扰。
解决方案
检查周围是否存在干扰源,如其他电器设备,更换抗干扰能力更强的接收器。
问题3
THANKS
感谢您的观看。
红外线遥控器接收器软件编程是指通过编写代码来控制接收器接收、解调红外线信号并解析出控制指令的过程。
接收器软件编程概述
接收器代码需要实现信号接收、解调、解码等过程,以便将控制指令转换为可执行的命令。
接收器代码实现
为了简化编程过程,可以使用一些常用的库和框架来辅助实现接收器的功能。
红外线遥控器(nec编码方式)
抗干扰优化
通过调整编码方式或增加滤波器等手段,增强遥控器的抗干扰能 力。
测试结果与结论
测试结果显示,该红外线遥控器 在有效范围内能够正常工作,按 键响应准确,抗干扰能力较强。
通过调试优化,进一步提高了遥 控器的性能和稳定性。
结论:该红外线遥控器符合预期 要求,可以用于实际应用中。
在NEC编码中,脉冲的宽度和间隔时间 被分为两种不同的比例,即1:2和1:1, 通过这两种比例的不同组合,可以表示 出0和1两种不同的二进制位。
当发送数据时,首先发送起始位,然 后是数据位,最后是停止位。起始位 是一个较长的脉冲和一个较短的间隔 时间,数据位由一系列的脉冲和间隔 时间组成,停止位是一个较短的脉冲 和一个较长的间隔时间。
红外线遥控器(NEC编码方式)
目 录
• 红外线遥控器简介 • NEC编码方式简介 • 红外线遥控器(NEC编码方式)的电路设计 • 红外线遥控器(NEC编码方式)的软件设计 • 红外线遥控器(NEC编码方式)的测试与调试
01 红外线遥控器简介
红外线遥控器的原理
红外线遥控器利用红外线作为信号传输介质,通过调制信号来控制设备的开关或功 能。
THANKS FOR WATCHING
感谢您的观看
01
采用NEC编码算法,将按键信息转换为红外线信号。
解码算法
02
将接收到的红外线信号解码为按键信息。
测试与调试
03
对编码和解码算法进行测试和调试,确保其正确性和稳定性。
05 红外线遥控器(NEC编码 方式)的测试与调试
测试方法
1 2
发射距离测试
测试遥控器在不同距离下的信号发射效果,确保 遥控器在有效范围内能够正常工作。
NEC红外编码
HT49CVX 遥控接收软件模块设计指南文件编码:HA0077s概述本软件模块用于接收译码编码格式为NEC格式(见图1) 的红外遥控器信号,由于使用了RMT TIMER,所以适用于带有RMT TIMER功能的HT49CVX系列。
功能及原理本软件模块适用译码NEC格式的红外编码,NEC格式如下图所示:图1 NEC编码格式使用时请将红外信号接到PC.7/RMT引脚,由波形的上升和下降缘触发RMTTIMER来记录高、低准位的宽度,每记录一对高低准位后,再采用相对宽度的方法,即判断高准位与低准位的宽度的相对大小,来判定接收到该bit的信号是bit ″0″或bit ″1″。
在接收Lead Code和Repeat Code的时候,则是采用判断相对宽度和判断高低准位的宽度是否在给定的范围里面相结合的方法,例如,在系统频率为4MHz时,如果lo_count>hi_count 并且 lo_l<lo_count<lo_h并且hi_l<hi_count<hi_h,则认为接收到的该bit为Lead Code或者为RepeatCode。
(注:实际应用时,一般情况下,实际接收到的波形与图1所示的波形,高低准位正好相反。
lo_count为实际低准位宽度,hi_count为实际高准位宽度,如图2;lo_l,lo_h,hi_l,hi_h分别是低准位和高准位的宽度范围)。
使用者应注意的是,在自己的系统频率不是4MHz时,应相应地修改在receiver_define.asm文件里的lo_l,lo_h,hi_l,hi_h四个常数,否则程序不能正常运行!图2在接收到第一对高低准位后,随即判断该bit是否为Lead Code,如果不是,则软件模块将自行初始化;如果是,则继续接收以后的讯号,在接收完全部的Custom Code和Data Code后,将判断接收到的Custom Code是否与预置的一致并且Data Code的高低字节是否互反,如果不是,则软件模块将自行初始化;如果接收有效,则设立旗标为有效值,并继续判断是否有Repeat Code进入,若有,则设立对应旗标为有效值。
红外遥控信号传输协议
红外遥控信号传输协议
红外遥控信号传输协议
NEC协议:
NEC协议是众多红外遥控信号传输协议中的一种,其它包括RC5协议,RC6协议等。
主要特征如下:
8位地址码,8位命令码。
地址码和命令码均发送2次,一次原码,一次反码,以确保可靠。
PWM方式,载波频率38KHz。
每一位用时1.12ms或者2.25ms.
NEC协议编码方式:
起始码 + 客户码 + 数据 + 结束码
起始码:9ms的传号+4.5ms的空号。
(Sam理解位:9ms的高点平+4.5ms的低电平)
客户码(地址码):8位的地址码和8位的地址反码。
(即相加等于0xFF) 数据(命令码):8位的命令码和8位的命令反码。
结束码(尾脉冲):
任何客户码和命令码如果发现其和反码不对应,则说明传输错误。
NEC协议对KeyPass的处理:
NEC协议规定:在按键期间,命令信号只发送一次,只要按键不释放,每隔108ms发送一次重码。
重复码由9ms的传号和2.25ms的空号,以及560us的一个脉冲组成。
NEC协议中也包含多种:
uPD6121G,D6121/BU5777/D1913, LC7461M-C13。
红外遥控编码格式
红外遥控编码格式红外遥控器的编码格式通常有两种格式:NEC和RC5NEC格式的特征:1:使用38 kHz载波频率2:引导码间隔是9 ms + ms3:使用16位客户代码4:使用8位数据代码和8位取反的数据代码下面的波形是从红外接收头上得到的波形:调制信号转变成高低电平了不过需要将波形反转一下才方便分析:NEC 协议通过脉冲串之间的时间间隔来实现信号的调制英文简写PPM;逻辑“0”是由的38KHZ载波和的无载波间隔组成;逻辑“1”是由的38KHZ载波和的无载波间隔组成;结束位是的38K载波;下面实例是已知NEC类型遥控器所截获的波形:遥控器的识别码是Address=0xDD20;其中一个键值是Command=0x0E;注意波形先是发低位地址再发高位地址;所以0000,0100,1011,1011反转过来就是1101,1101,0010,000十六进制的DD20;键值波形如下:也是要将0111,0000反转成0000,1110得到十六进制的0E;另外注意8位的键值代码是取反后再发一次的,如图0111,0000 取反后为1000,1111;最后一位是一个逻辑“1”;RC5编码相对简单一些:下面的遥控器地址是1A,键值是0D的波形同样由于取自红外接收头的波形需要反相一下波形以便于分析:反相后的波形:根据编码规则:得到一组数字:110,11010,001101 根据编码定义第一位是起始位S 通常是逻辑1第二位是场位F通常为逻辑1,在RC5扩展模式下它将最后6位命令代码扩充到7位代码高位MSB,这样可以从64个键值扩充到128个键值;第三位是控制位C 它在每按下了一个键后翻转,这样就可以区分一个键到底是一直按着没松手还是松手后重复按;如图所示是同一按键重复按两次所得波形,只有第三位是相反的逻辑,其它的位逻辑都一样;其后是五个系统地址位:11010=1A。
STM32----9----红外遥控(NEC协议)
STM32----9----红外遥控(NEC协议)文章发表于:2011-05-10 18:192011-5-9 STM32----11----红外遥控---------------------------------------------------------------------------------------------------------------------一、NEC协议说明NEC协议特点:8位地址和8位命令为提高可靠性,地址和命令都传输2次,脉冲间隔调制38kHz载波频率(1)NEC的0和1的脉冲定义在发送端:①每一位时间为1.12mS(560us+560个低电平)或2.25ms(560us+1680us),调制采用脉冲间隔时间长短调制每一位。
②每一个脉冲都是由560uS长度的38kHz载波脉冲构成的,占空比为1/4或1/3(约21个周期)。
逻辑1:2.25mS 逻辑0:1.12mS而在接收端:没有脉冲的时候为高电平,接收到脉冲的时候为低电平,故逻辑1为560us低+1680us高,逻辑0变为560us低+560us高。
(因为560us是载波脉冲,故为低了,剩余的没有脉冲,故为高了,从而根据接收到的高电平的脉宽可以区分0与1);由这里我们可以得出在0与1之间,1高电平持续时间为1.6 8ms,0吃血的时间为0.56ms.(2)NEC协议图片在附件中上图是NEC协议的一个典型脉冲发送图。
此协议LSB最低位先传送,所以接收的时候最先接收的是低位。
此图传送的地址是$59、命令是$16.协议说明:①一个信息发送是由9mS的AGC自动增益控制脉冲开头,在早期的IR红外接收器中用来设置增益。
接着是4.5mS空闲,然后是地址、命令。
②地址和命令都传送2次,第二次的地址和命令是反码,可以用来校验接收到的信息。
总的传输时间是固定的,因为每一位都有反码传送。
③一个命令只发送一次,即使遥控器上的按键一直按着。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
遙控器的發展 紅外遙控器系統 實例分析 紅外遙控器的常見異常與處理分析
FAE Service Department designed
遙控器的發展
第一階段:單一遙控器 第二階段:萬能及學習型遙控器 第三階段:網路及RF型遙控器
FAE Service Department designed
FAE Service Department designed
紅外遙控器的常見協議分析
常用的红外线信号传输协议有 ITT 协议、 NEC 协议、 Nokia NRC 协议、 Sharp 协议、 Philips RC-5 协议、Philips RC-6协议, Philips RECS-80协议,以及 Sony SIRC 协议等。
红外遥控器的控制距离约 10 米
FAE Service Department designed
遙控器IC的種類
按功能:單一、多功能 1. 單一 2. 單一簡單的(通常用AISC) 3. 單一特殊的(通常用MASK、OTP) 多功能 1. 單一多功能(通常用OTP、MASK) 2. 萬能多代碼(通常用OTP、MASK) 3. 萬能組合多合一 (通常用MASK) 按用途 1. 電視(通常MASK、ASIC、OTP) 2. VCD(通常ASIC、如6122) 3. DVD(通常ASIC、如6122) 4. VCR (通常ASIC、如6122) 5. 空調(通常OTP、MASK,是4bit.8bit) 6. 音像設備(通常ASIC、如6122)
Package
52QFP
52QFP, 64LQFP
Part No.
HT6221 HT6222 HT6230 HT6240002
Encoder/Decoder
VDD
Addr. No.
Addr. / Data No.
Encoder
1.8V~3.5V
16
8
Encoder
1.8V~3.5V
16
8
Encoder
紅外線的基本特性
1. 紅外光按波長範圍分為近 紅外、中紅外、遠紅外、 極紅外4類。
2. 紅外線遙控是利用近紅外 光傳送遙控指令的,波長 為0.76um~1.5um。
3. 用近紅外作為遙控光源, 是因為目前紅外發射器件 與紅外接收器件的發光與 受光峰值波長一般為 0.8um~0.94um,這樣可以 獲得較高的傳輸效率及較 高的可靠性。
LCD
Segment Share
I/ Outpu
O
t
Timer
8bi t
16 bit
RT C
Interrupt
Ext Int
.
.
IR Carrie
r
LV R
Stac k
21x2
HT49RA0 HT49CA0
2.0V ~
3.6V
4MHz
2Kx14
96x8
8
,
8
21x3 0
,
8
1
20x4
32x4
HT49RA1 HT49CA1
2.0V ~
3.6V
4MHz
4Kx15
160x8
8
,
8
33x3 4
,
8
1
1
v
2
4
v
v
4
33x2
Note: Part numbers including "C" are mask version devices while "R" are OTP devices.
FAE Service Department designed
NEC碼分析
2. 编码采用脉冲位置调制方式(PPM),利用脉冲之间的时间间隔 来区分“0”和“1”。
3. 重複發送,如果第一次指令傳輸結束后,還簡測到該按鍵仍然按 著,則每隔108ms重複發送一次,但代碼變了。如下:
第一次傳送 的指令
FAE Service Department designed
RET
學習程序
FAE Service Department designed
HT6221/HT6222遙控器晶片簡介
HT6221/HT6222是我們公司專門為遙控器系統設計的編碼器。它不屬於 MCU。它是依據NEC協議進行編碼,即產生引導碼,16bit的地址碼,8bit的 命令碼及其反碼。且其16bit的地址碼可由用戶設定。
睡眠程 序
鍵盤掃 描程序
其他程 序
1. RAM初始化:將RAM的内部清空。
2. 睡眠程序:IC進入HALT模式。
3. 鍵盤掃描程序:用於取鍵值。有鍵按 下,進入鍵盤掃描,沒有鍵按下,進 入省電模式。
4.
延時程 序
5.
其他程序:定時重發,保留給用戶, 用戶根據自己的需要加入程序,配合 鍵盤掃描程序使用。
先由s8~s15和ROM2進行或運算,得到 complement。
根據complement的值,對A0~A7進行取 反操作,0取反,1保持不變。轉變后的 值即為A8~A15。
FAE Service Department designed
HT6221應用電路介紹電低源頻濾耦波合,
FAE Service Department designed
HT48RA3 HT48CA3
HT48RA5 HT48CA5
2.0V ~
3.6V
2.0V ~
5.5V
2.0V ~
5.5V
2.0V ~
5.5V
400kHz ~
4MHz
400kHz ~
8MHz
400kHz ~
8MHz
400kHz ~
8MHz
1Kx14
32x8
17
--
--
--
--
v
v
--
8Kx16
224x8
則進行列掃描,并查表取值
2. 根據所取的值,由其高8位判斷它的按鍵類型。 有三種類型的按鍵: 學習鍵,基本功能鍵,掃描鍵。
FAE Service Department designed
HT48R09E4學習型遙控器軟件流程
鍵盤掃描程序
初始化
否
取數據 發送數據
發射完成
是
RET
發送數據程序
鍵盤掃 描程序 取載波 取數據 保存EEPROM
FAE Service Department designed
紅外遙控系統
紅外遙控系統主要由紅外遙控發射裝置、紅外接收 設備、遙控微處理機等組成。
1. 紅外遙控發射裝置,其主要元件為紅外發光二極體。 单只红外发光二极管的发射功率约 100mW。
2. 接收電路的紅外接收管是一種光敏二極體,使用時 要給紅外接收二極體加反向偏壓,它才能正常工作 而獲得高的靈敏度。
Data Memory
I/ O
8bit
16bit
Ext.
Int.
IR Carrier
LVR
PFD
Stack
400kHz
~
15
2.0V ~
4MHz
1Kx14
32x8
--
--
--
--
v
v
--
1
3.6V
4MHz
16
Package 20SSOP
HT48RA0-1 HT48CA0-1
HT48RA1 HT48CA1
FAE Service Department designed
學習型遙控器的分類
二、波形拷貝式
——把原遙控器所發出的信號進行完全拷貝,而不管遙控器是什麼格 式,進行適當的壓縮後,存儲在記憶體內,當需要發射時,再由儲存 器內讀出解壓後還原原始信號。 工作过程: 1. 发射信号波形的测量,需要高速主控制芯片和較大的RAM 2. 分析信号 3. 压缩编码,根据常用高低电平的时间,特殊高低电平的时间,发送周 期,对原始信号进行压缩编码。 4. 存储信号,把压缩编号后的数据存储到EEPROM中。
1. 特徵 * 工作電壓: 1.8V~3.5V * Dout輸出38KHz * 最小發射字: 一個字 * 一個455KHz的陶瓷或晶體 * 16bit地址碼 * 8 bit命令碼 * ppm調製方式 * 最大活動鍵 HT6221: 32 鍵
HT6222: 64 鍵
2. 應用 * 電視和錄影答錄機控制器 * 夜盜警報系統 * 煙火警報系統 * 車門控制器 * 汽車警報系統 * 安全系統 * 其他遙控系統
23
1
1
1
2
--
v
v
24Kx16
224x8
23
1
1
1
2
--
v
v
40Kx16
224x8
23
1
1
1
2
--
v
v
Note: Part numbers including "C" are mask version devices while "R" are OTP devices.
1
24SOP/SSOP
8
28SOP/SSOP(209mil)
優點:這種學習型遙控器對硬體的要求相對簡單,對主控制器(主控IC)的 工作頻率要求不太高,因為信號的發送頻率,DUTY,編碼方式等等 都是已知的,只要對採集的信號進行判別即可;另外對記憶體的容量 也比較低,因為它不存在壓縮的問題,按照最原始的最簡編碼進行存 儲。
缺點:只能對已知的遙器(或者說已經收集到的信號)有效,對於新開發, 新型的編碼格式就無能為力了。
2.4V~5.2V
5
6
Encoder
2.2V~3.6V