基于NEC标准的红外编码及解码原理及进程
红外遥控解码实验报告(3篇)
第1篇一、实验目的本次实验旨在通过搭建红外遥控系统,了解红外遥控的基本原理,掌握红外遥控信号的编码和解码方法,并利用单片机实现对红外遥控信号的解码,实现对红外遥控器的控制。
二、实验原理红外遥控技术是一种无线通信技术,通过发射端发送特定编码的红外信号,接收端接收该信号并进行解码,从而实现对电器的控制。
红外遥控系统主要由发射端和接收端两部分组成。
1. 发射端:由按键矩阵、编码调制电路和红外发射器组成。
按键矩阵根据按键的不同产生不同的编码信号,编码调制电路将这些信号调制在38kHz的载波上,红外发射器将调制后的信号发射出去。
2. 接收端:由红外接收器、前置放大电路、解调电路和指令信号检出电路组成。
红外接收器接收发射端发射的红外信号,前置放大电路对信号进行放大,解调电路将38kHz的载波信号去除,指令信号检出电路从解调后的信号中提取出指令信号。
三、实验设备1. 红外遥控发射器2. 红外接收模块3. 单片机开发板4. 连接线5. 电源6. 红外遥控解码程序四、实验步骤1. 搭建红外遥控系统:将红外接收模块连接到单片机开发板的相应引脚上,确保连接正确无误。
2. 编写红外遥控解码程序:根据红外遥控协议,编写解码程序,实现对红外信号的解码。
3. 程序烧录与调试:将解码程序烧录到单片机中,连接电源,进行程序调试。
4. 测试与验证:使用红外遥控器对单片机进行控制,观察单片机是否能够正确解码红外信号,并实现相应的控制功能。
五、实验结果与分析1. 红外遥控系统搭建成功:通过连接红外接收模块和单片机开发板,成功搭建了红外遥控系统。
2. 解码程序编写与调试:根据红外遥控协议,编写解码程序,实现对红外信号的解码。
在调试过程中,通过观察单片机的输出,验证了程序的正确性。
3. 测试与验证:使用红外遥控器对单片机进行控制,观察单片机是否能够正确解码红外信号,并实现相应的控制功能。
实验结果表明,单片机能够成功解码红外信号,并实现红外遥控器的控制功能。
nec红外遥控工作原理
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_1MOV 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编码方式
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协议的红外遥控原理与模拟仿真
N E C协议的红外遥控原理与模拟仿真*严洪立1,李永红2,梅容芳1(1.宜宾职业技术学院电子信息与人工智能学院,宜宾644003;2.成都信息工程大学)*基金项目:中央引导地方科技发展专项(2019Z Y D 045);宜宾职业技术学院科学研究计划资助项目(y b z ys c 1936)㊂摘要:针对通信协议较难理解㊁实现过程抽象的问题,采用红外遥控中常用的N E C 协议,详细阐述了红外遥控通信原理,并设计了一个红外遥控模拟通信实例,主要包括A T 89C 52单片机㊁矩阵键盘㊁液晶显示等㊂以P r o t e u s 仿真电路设计和K e i l 编写N E C 协议核心程序实现,联合调试仿真红外遥控通信过程㊂实验结果表明,该方式能够以通信协议原理为基础,编程算法模拟仿真实现通信效果,将抽象的通信协议直观化,加深学生对通信协议的理解,有助于其掌握并运用所学知识,提高动手能力和学习兴趣㊂关键词:红外通信;遥控;单片机;教学实验中图分类号:T N 914.2;T P 311.52 文献标识码:AI n f r a r e d R e m o t e C o n t r o l P r i n c i pl e a n d S i m u l a t i o n o f N E C Y a n H o n g l i 1,L i Y o n g h o n g 2,M e i R o n g f a n g1(1.S c h o o l o f E l e c t r o n i c I n f o r m a t i o n a n d A r t i f i c i a l I n t e l l i g e n c e ,Y i b i n V o c a t i o n a l a n d T e c h n i c a l C o l l e ge ,Y i b i n 644003,C h i n a ;2.C h e n g d u U n i v e r s i t y of I n f o r m a t i o n T e c h n o l og y)A b s t r a c t :A i m i n g at t h e p r o b l e m o f d i f f i c u l t t o u n d e r s t a n d c o mm u n i c a t i o n p r o t o c o l s a n d t h e a b s t r a c t i o n o f t h e p r o c e s s ,t h e N E C p r o t o c o l c o mm o n l y u s e d i n i n f r a r e d r e m o t e c o n t r o l i s u s e d t o e l a b o r a t e t h e p r i n c i p l e o f i n f r a r e d r e m o t e c o n t r o l c o mm u n i c a t i o n a n d d e s i gn a n e x -a m p l e o f i n f r a r e d r e m o t e c o n t r o l a n a l o g c o mm u n i c a t i o n ,w h i c h m a i n l y i n c l u d e s A T 89C 52m i c r o c o n t r o l l e r ,m a t r i x k e y b o a r d ,L C D d i s p l a ye t c .P r o t e u s s i m u l a t i o n c i r c u i t d e s i g n a n d K e i l w r i t e t h e c o r e p r o g r a m of t h e N E C p r o t o c o l t o i m p l e m e n t ,a n d j o i n t l y d e b ug an d s i m u l a t e t h e i n f r a r e d r e m o t e c o n t r o l c o mm u n i c a t i o n p r o c e s s .T h e r e s u l t s s h o w t h a t t h e m e t h o d c a n b e b a s e d o n t h e p r i n c i pl e o f c o mm u n i c a t i o n p r o t o c o l s ,a n d t h e p r o g r a mm i n g a l g o r i t h m s i m u l a t e s t h e c o mm u n i c a t i o n e f f e c t ,v i s u a l i z e s t h e a b s t r a c t c o mm u n i c a t i o n p r o t o c o l ,d e e pe n s s t u d e n t s 'u n d e r s t a n d i n g of t h e c o mm u n i c a t i o n p r o t o c o l ,h e l p s t h e m m a s t e r a n d u s e w h a t t h e y h a v e l e a r n e d ,a n d i m p r o v e s t h e i r h a n d s -o n e x p e r i e n c e a b i l i t i e s a n d l e a r n i n gi n t e r e s t s .K e y wo r d s :i n f r a r e d c o mm u n i c a t i o n ;r e m o t e c o n t r o l ;s i n g l e -c h i p m i c r o c o m p u t e r ;t e a c h i n g e x p e r i m e n t 引 言通信是指实体间依赖某种载体实现信息交流和传递,信息的准确传递往往需要遵守双方或多方共同约定的规则,通常称为通信协议[1-2]㊂在教学过程中,由于缺乏实体模拟演示,通信协议对于多数初学者仅能通过字面理解,感到抽象且复杂㊂采用红外线传输信息的红外通信,不受无线电干扰和国家无线管理委员会的限制,被广泛应用于家用遥控领域,且协议相对简单[3-4]㊂常用的红外遥控通信协议有N E C 协议㊁R h i l i p s R C 5协议㊁S o n y SI R C 协议等㊂通过对N E C 协议的约定规则详细分析,并基于此设计一个红外遥控模拟通信实例,运用单片机模拟实现N E C 协议红外遥控过程,加深对通信的理解和掌握㊂首先着重介绍分析N E C 协议,然后运用P r o t e u s 根据红外遥控实现的需要条件设计模拟仿真电路,再在K e i l 上通过C 语言编程,通过算法实现N E C 协议,最后P r o t e u s 和K e i l 联调仿真实现红外遥控通信全过程㊂1 红外遥控原理1.1 红外遥控过程红外遥控是指运用近红外线传递遥控指令,广泛应用于家电遥控器㊂红外遥控器的发射端为红外发光管,受控家用电器的接收端则为红外接收管等,其发光和受光峰值波长为0.8~0.94μm ,光谱重合匹配较佳,具有较高的传输效率和可靠性[5-6]㊂红外遥控器经按键触发,由指令编码系统端编码为指令信号,通过调制电路的载体调制,在驱动电路进行功率放大,最后由发射电路将其调制指令信号传递出去[7-10]㊂在受控家用电器接收端,首先由接收电路接收红外遥控器发送过来的调制指令信号,并经放大电路进行放大,转送解调电路将调制指令信号解调为指令信号,最后由指令译码器译码为操作命令,并通过驱动电路执行命令㊂1.2 红外遥控协议红外遥控传递的信息主要是遥控指令,在红外遥控器和受控家用电器间实现信息的传递,实质即为通信过程的实现,传输的载体即为红外线㊂遥控指令的发送与接收则只有遵守通信协议的约定规则,才能保证指令信息的准确无误㊂N E C 协议是最常用的红外遥控通信协议之一,其协议格式如图1所示㊂图1 N E C 协议格式图中,从左向右依次为引导码(9m s 高电平+4.5m s低电平)㊁地址码(A d d r e s s )㊁地址反码(A d d r e s s)㊁命令码(C o mm a n d )㊁命令反码(C o mm a n d)㊂地址码和命令码都为8位,地址反码和命令反码用于确保信息可靠,命令码即为传递的指令㊂在命令码段,可见传递的数据为01101000(低位在前,高位在后),表示1和0的区别在于低电平的间隔,具体如图2所示,逻辑1(0.56m s高电平脉冲+1.69m s 低电平),逻辑0(0.56m s 高电平脉冲+0.56m s 低电平),由此可看出N E C 协议为脉冲距离调制,载波频率为38k H z㊂图2 N E C 协议逻辑1㊁逻辑02 模拟仿真实验2.1 实验内容与要求模拟红外遥控通信实现过程如下:红外遥控端由单片机和矩阵键盘等构成,模拟家用遥控器发射遥控指令,红外接收端由显示电路和L E D 灯电路等构成,模拟家用电器接收遥控指令并执行指令操作㊂红外遥控端发送遥控指令后,在红外接收端接收指令,并将指令显示出来,同时根据不同指令点亮对应的L E D 灯㊂2.2 电路设计根据实验内容和要求,所设计的电路需由红外遥控端和红外接收端两部分组成,并分析出实验所需元器件如表1所列,首先在P r o t e u s 中,从库中将所需的器件选取出来,再开始设计电路(如图3所示)㊂表1 实验元器件清单模型名R E S R E S P A C K 8C A P C A P P O L C R Y S T A L B U T T O N L ED B A R G R A P HR E DL M 016LK E Y P A DS MA L L C A L C A T 89C 52中文名电阻排阻电容电解电容晶振轻触开关L E D 灯液晶显示屏矩阵键盘单片机红外遥控端主要由单片机最小系统㊁矩阵键盘电路和红外发射电路组成,具体如下:①单片机最小系统㊂该部分是单片机系统必不可少的部分,包括晶振电路㊁复位电路和P 0上拉电阻,分别可为单片机提供时钟周期㊁复位操作和保障P 0正常输入/输出操作㊂②矩阵键盘电路㊂该电路主要实现4ˑ4矩阵键盘行㊁列扫描操作,保证按键的准确读取识别,P 2.0~P 2.3与K E Y P A D S MA L L C A L C 的A~D 相连,用于行操作,P 2.4~P 2.7与K E Y P A D S MA L L C A L C 的1~4相连,用于列操作㊂③红外发射电路㊂由N E C 协议为脉冲距离调制,而模拟红外发射管发射也为脉冲距离调制信号,因此需要用到单片机的定时器,则将设计单片机的P 3.4口用于模拟红外发射管,标号为I R ㊂红外接收端主要由单片机最小系统㊁液晶显示电路㊁L E D 控制电路和红外接收电路组成,具体如下:①液晶显示电路㊂该电路主要显示接收的指令,选用L C D 1602液晶显示屏,即在P r o t e u s 中对应L M 016L 模型㊂V S S 为电源地,直接接地;V V D 为电源正极,接5V 电源;V E E 为对比度调整端,仿真模型悬空即可;R S 寄存器选择端接P 2.0;RW 为读写端接P 2.1;E 为使能端接P 2.2;D 0~D 7为8位数据总线,接P 0[11]㊂②L E D 控制电路㊂该电路主要实现控制10位L E D 灯等操作,L E D 灯采用共阳极方式,通过电阻R 3和R 4限流并与5V 电源相连,控制通过单片机I /O 实现,分别与P 1口㊁P 3.6和P 3.7相连,从上往下依次为L E D 灯0到9㊂③红外接收电路㊂接收电路主要接收红外发射管,发送红外脉冲个数及时长,要统计脉冲个数需要用到单片机的外部中断,统计时长则需要单片机的定时器,因此选用单片机外部中断0,即P 3.2模拟图3 设计电路图红外接收管,标号为I R ㊂2.3 软件设计红外遥控端模拟红外发射管发射的红外线,采用N E C 协议即发射出如图1所示的引导码㊁地址码㊁地址反码㊁命令码和命令反码5部分㊂而在红外接收端,实际上红外接收到的红外线所转换的电平与红外发射管发送对电平是反向的,由于仿真时,红外遥控端的发射引脚P 3.4与红外接收端的接收引脚P 3.2相连,则在模拟仿真时发射端与接收端的电平并未反向,需要注意,仿真时统一采用接收端的波形仿真,I R 初始电平为高电平㊂红外遥控端实验采用12MH z 晶振,运用定时器0,则根据12个时钟周期为一个机械周期,即机器周期为1μs ㊂仿真38k H z 载波,定时器0需实现约26μs 定时,并据此调整脉冲距离按N E C 协议格式发送数据㊂其主程序框架如下:v o i d m a i n(){ 定义和初始化变量;初始化定时器0; w h i l e (1){ 按键检测;s w i t c h(键值){ c a s e 键值:发送键值编码;b r e a k; }}}红外接收端模拟接收数据,根据N E C 协议提取指令数据,运用外部中断0统计下降沿的个数,定时器0计时统计每个下降沿间隔时长并保存,按间隔时长区分出引导码㊁逻辑0㊁逻辑1,按协议格式提取出地址码和命令码,并与对应反码检查确认信息是否无误㊂其主程序框架如下:v o i d m a i n(){ 定义和初始化变量; 初始化定时器;初始化外部中断; 初始化液晶;w h i l e (1){ 提取命令码;s w i t c h (命令码){ c a s e 命令码:命令码转换字符;控制L E D 灯;b r e a k ; } 显示字符; }}2.4 实验结果联合调试仿真,打开在P r o t e u s 软件设计的电路,将K e i l 编写好的红外遥控端和红外接收端程序生成h e x 文件,分别加载到红外遥控端单片机和红外接收端单片机中,点击仿真按钮开始仿真[12]㊂按下红外遥控端矩阵键盘上的9键,即可将9键指令发送到红外接收端,观察到在红外接收端液晶显示屏上显示K e yi s ʌ9ɔ,同时第9个L E D 灯亮,运用示波器测量标号I R 的波形如图4所示,观察到传送命令值为0x 09㊂综上说明红外发送数据实现,并完成了指令操作,实验任务完成㊂详细实验数据如表2所列㊂图4 红外通信波形图表2 实验测试结果发送值显示值灯0灯1灯2灯3灯4灯5灯6灯7灯8灯900亮灭灭灭灭灭灭灭灭灭11灭亮灭灭灭灭灭灭灭灭22灭灭亮灭灭灭灭灭灭灭33灭灭灭亮灭灭灭灭灭灭44灭灭灭灭亮灭灭灭灭灭55灭灭灭灭灭亮灭灭灭灭66灭灭灭灭灭灭亮灭灭灭77灭灭灭灭灭灭灭亮灭灭88灭灭灭灭灭灭灭灭亮灭99灭灭灭灭灭灭灭灭灭亮结 语通过论述通信概念和分析红外遥控通信N E C 协议,结合红外遥控模拟通信实例,从原理到实践操作过程,较直观地再现了通信过程,可加深学生通信协议的理解和运用㊂同时,整个实例涵盖了单片机中断㊁定时器㊁矩阵键盘㊁液晶显示等多个模块操作,可作为综合实验项目使用,提高实验和实践教学质量,对于巩固学生所学知识点㊁提高综合实践能力和学习兴趣有积极作用㊂参考文献[1]曹丹丹,景为平.P R 9200芯片的超高频R F I D 读写器通信技术[J ].实验室研究与探索,2019,38(5):6063,101.[2]杨伟,何杰,万亚东,等.物联网通信协议的安全研究综述[J ].计算机科学,2018,45(12):3241.[3]张萍,马树军,史可福.基于51单片机的指纹电子密码锁的设计与实现[J ].实验室研究与探索,2018,37(8):134138,161.[4]张杨,刘思源,孙晶华,等.基于红外遥控的三基色L E D 调光调色实验教学系统[J ].实验技术与管理,2019,36(7):7277.[5]余红梅.红外遥控原理[C ]//教育部中南地区高等学校电子电气基础课教学研究会第二十届学术年会会议论文集,2010:365369.[6]J I A N G X i u j i a o .R e m o t e A c c e s s a n d C o n t r o l S ys t e m B a s e d o n I n f r a r e d C o mm u n i c a t i o n T e c h n o l o g y [J ].A p pl i e d M e c h a n i c s a n d M a t e r i a l s ,2013(380384):35753579.[7]侯龙,刘海顺,刘庆玲.基于红外光通信的功放设计[J ].实验室研究与探索,2015,34(11):6365.[8]赖义汉,卢彬锋,王宇松.基于F P G A 红外遥控乐曲播放器设计[J ].赤峰学院学报:自然科学版,2019,35(2):6871.[9]戴娟,辛知泳,程立志,等.基于编/解码集成芯片的红外遥控车电路设计[J ].机械设计,2019,36(S 2):109111.[10]郭宏,朱昊,尉昊赟,等.基于红外光谱技术光纤通信的实验设计[J ].实验室研究与探索,2019,38(2):117120.[11]吴晓云,刘萌.红外遥控定时开关的设计与实现[J ].现代电子技术,2015,38(12):5861.[12]姚雪梅,陈永前.P r o t e u s 和K e i l 模拟交通灯的实践教学[J ].实验室研究与探索,2016,35(11):107109,136.严洪立(助教),主要从事物联网技术和医学仪器及信息处理等的教学和科研工作㊂(责任编辑:薛士然 收稿日期:2020-06-01)。
红外遥控原理与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. 发送端工作原理发送端通常由红外发射器和控制电路组成。
控制电路根据用户的操作指令生成相应的信号编码。
红外解码原来如此简单
红外解码原来如此简单硬件连接红外解码只需连下图中TSOP382的 3 根线(2 根电源 + 1 根数据)即可。
NEC 协议解码本文所述的红外编解码采用 NEC 协议。
通信的数据帧里使用高电平时间来区分 0 和 1。
对于按一下然后按住不动的情况,NEC 协议下是这么处理的:上图中Sugar 写的“固定重复指令”也叫作“重复引导码”。
对于红外通信协议,搜关键词“IR 引导码”会比较容易搜出结果。
NEC 的编码规则非常简单,如下图:Sugar 实际用逻辑分析仪抓取的波形如下,可以与上面的规则相互印证:Arduino 红外解码把上图中的代码复制到下面:•••••••••••••••••••••••••#include <IRremote.h>const int irReceiverPin = 2;IRrecv irrecv(irReceiverPin);decode_results results;decode_results res_last;void setup() { Serial.begin(9600); irrecv.enableIRIn();}void loop() { if(irrecv.decode(&results)){ if(res_last.value != results.value){ res_last.value = results.value; Serial.print('irCode: '); Serial.print(results.value, HEX); Serial.print(', bits: '); Serial.println(results.bits); } irrecv.resume(); }}STM32 红外解码一、外部中断方式参考《江涛带你玩STM32-CubeMX红外NEC解码实战(上)—外部中断方式》外部中断方式的优点在于:用哪个引脚都可以。
基于NEC标准的红外编码及解码原理及进程
基于NEC 标准的主要器件:AT89c51、HS0038HS0038工作频率为38 kHz,能对得到TTL 电平的编码信号,再送给外只有3 个引脚: VS 、GND 和原理:采用 常用电器的NEC 38KHZ (即脉宽调制的方法)信息传给单片机,再通过单片机编码:NEC 标准:用 0.56ms 用0.565ms 高电平+1.685ms 发送的格式:引导码+用户码电平+4.5ms 的低电平组成。
用第二次发送的用户码可为第一次是为了判断发送的信息是否正确注意:上面说的低电平和高电平志。
即低电平期间不发射38KH 间发射38KHZ 的红外波。
标准的红外编码及解码原理及进程0038红外接收头、红外发射管、能对收到遥控信号进行放大、检波、整形、解再送给单片机,经单片机解码并执行相关控制程1个脉冲信号输出引脚,使用方便,性能可EC 标准实现红外编码及解码。
将要发送的通法)的载波发送出去,再由一体化红外接收单片机程序实现解码。
ms 的高低平+0.565ms 的低电平代表数据中5ms 的低电平代表数据中的1。
户码+用户码+操作码+操作反码。
引导码为成。
用户码和操作码均用8位的十六进制发送。
第一次发送用户码的反码,也可不为,发送反码,操作码也一样。
高电平不是实际的电平概念,只是个代表0和38KHZ 的红外波,此时发射管可亮可灭。
高电平 形、解调,制程序,对可靠。
数据通过头接收把中的0,9ms 的高送。
反码主要1的标高电平期发射电路:如上图所示,D1为红外发射管,9014为低噪小功率NPN三极管,R1为10欧姆,R2为50欧姆,为了使发射管发射的距离加长常使R2为零,R1为4.7K欧姆。
功能:优势:通过对NEC标准红外编码的学习,可同时控制多个接收装置而不产生干扰。
因红外发射芯片的地址码为固定的一个,只能控制单独的一个装置或控制相同地址码的装置,且只能控制与遥控器上键数相同的功能,大多数为十多个。
而学习编码的优势是只用一个单片机就能至少有256个地址码(地址码不取反的话地址码将更多),一个地址码有对应的多个受控装置,可见学习红外编码可大大节约资源。
华宝空调红外遥控编码资料
华宝空调红外遥控编码资料简介华宝空调是一款广泛使用的家用空调品牌,它提供了方便的红外遥控功能,使得用户可以轻松控制空调的各种设置。
本文将介绍华宝空调红外遥控编码资料,包括红外遥控编码的原理、常用编码格式、编码数据的解析和使用方法等。
红外遥控编码原理红外遥控编码是通过发送特定的红外脉冲信号来实现对设备的控制。
华宝空调红外遥控编码原理基于脉冲宽度调制(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红外协议解码模块//---------------------------------------------#include "Infrared_nec_decode.h"/*红外接收端口根据开发板重新设置*//*红外端口根据开发板重新设置*/sbit INFRARED_RECV = P3^2;//红外接收头数据口连接的位置//---------------------------------------------//红外接收初始化//设置定时器0工作方式1 16位定时器//---------------------------------------------void infrared_nec_decode_init(){TMOD &= 0x0f;TMOD |= 0x10;IT1 = 1;EX1 = 1;EA = 1;}//---------------------------------------------// 获取高、低电平的计数值// level为0时获取低电平,1时获取高电平//---------------------------------------------unsigned int infrared_nec_get_count(unsigned level){TH1 = 0;TL1 = 0;TR1 = 1;if(level)while(INFRARED_RECV);elsewhile(!INFRARED_RECV);TR1 = 0;return (TH1 * 256 + TL1);}//---------------------------------------------// 解码NEC协议,将四字节解码结果存入缓冲区// 返回值:0成功,1失败//---------------------------------------------unsigned char infrared_nec_get_code(unsigned char* buf){unsigned int count = 0; //定时器计数unsigned char i, j;//计算是否为引导码count = infrared_nec_get_count(0); //引导脉冲低电平8500~9500usif(count < 7372 || count > 9216)return 1;count = infrared_nec_get_count(1); //引导脉冲高电平4000~5000us if(count < 3686 || count > 4608)return 1;for(i = 0; i < 4; i++) //4个字节{for(j = 0; j < 8; j++) //每个字节8位{count = infrared_nec_get_count(0); //200~800usif(count < 184 || count > 737)return 1;count = infrared_nec_get_count(1); //200~2000usif(count < 184 || count > 1843)return 1;buf[i] >>= 1;if(count > 1032)buf[i] |= 0x80;}}return 0;}。
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红外协议将会有更广泛的应用和发展。
详细解析:红外遥控编码与解码
详细解析:红外遥控编码与解码随着家用电器、视听产品的普及,红外线遥控器已被广泛使用在各种类型的家电产品上(如遥控开关、智能开关等)。
其具有体积小、抗干扰能力强、功耗低、功能强、成本低等特点,在工业设备中也得到广泛应用。
一般而言,一个通用的红外遥控系统由发射和接收两大部分组成,如图1 所示:其中发射部分主要包括键盘矩阵、编码调制、红外发射管;接收部分包括光、电信号的转换以及放大、解调、解码电路。
举例来说,通常我们家电遥控器信号的发射,就是将相应按键所对应的控制指令和系统码( 由0 和1 组成的序列),调制在32~56kHz 范围内的载波上,然后经放大、驱动红外发射管将信号发射出去。
此外,现在流行的控制方法是应用编/ 解码专用集成电路芯片来实现。
不同公司的遥控芯片,采用的遥控码格式也不一样。
在此介绍目前广泛使用较普遍的两种,一种是NEC Protocol 的PWM( 脉冲宽度调制) 标准,一种是Philips RC-5 Protocol 的PPM( 脉冲位置调制) 标准。
NEC 标准(代表芯片WD6122):遥控载波的频率为38kHz( 占空比为1:3) ;当某个按键按下时,系统首先发射一个完整的全码,然后经延时再发射一系列简码,直到按键松开即停止发射。
简码重复为延时108ms,即两个引导脉冲上升沿之间的间隔都是108ms。
如图2所示即为完整的NTC编码。
对于NTC编码,由引导码、用户编码低位,用户编码高位、键数据编码、键数据编码五部分组成,引导码由一个9ms的载波波形和4.5ms的关断时间构成,它作为随后发射的码的引导,这样当接收系统是由微处理器构成的时候,能更有效地处理码的接收与检测及其它各项控制之间的时序关系。
编码采用脉冲位置调制方式(PPM)。
利用脉冲之间的时间间隔来区分“0”和“1”。
每次8位的码被传送之后,它们的反码也被传送,减少了系统的误码率。
数据0 可用“高电平0.56ms +低电平0.56ms”表示,数据1 可用“高电平0.56ms +低电平1.68ms”表示。
红外遥控NEC解码程序
//=============================///********************************本解码程序完成于2017.07.29日,看起来不难,却花了我很多心思。
今我愿与网友分享此代码,希望能帮助跟我一样的初学者!!!此代码中定时器使用的是STC89C52的定时计数器2,位16位自动重装定时器。
此代码解码后解码数据显示在串口工具上。
********************************///=============================///********************************西安石油大学:王普********************************///=============================//#include <reg52.h>typedef unsigned char uchar;uchar count;uchar wedat[33];uchar dat[4];bit receive_flag , chuli_data_ok;sbit bus=P3^2;void init(){TMOD=0x22;//定时器1,0都是8位自动重装寄存器RCAP2H=0xfe;RCAP2L=0xff;TH2=(65535-256)/256;TL2=(65535-256)%256;EA=1;ET2=1;IT0=1; //红外外部中断EX0=1; //外部中断允许位TH1 = 0xfd; //此溢出率为波特率9600TL1 = 0xfd;TR1 = 1; //启动定时器1SM0 = 0;SM1 = 1; //设置串口工作方式1,10位异步收发器}void timer0() interrupt 5{TF2=0;count++;}void EX_INT0() interrupt 0//红外遥控信号进入中断服务程序{static uchar num;//静态变量,每次进入其值不变,num是每个脉宽的编号static uchar flag,flag1; //辅助标志位TR2=1;//当IT0下降沿发生,脉宽进入,打开定时器2if(flag == 1)//第一次flag=0,不执行下面程序,直接出中断程序,下次进入执行{if(( count < 60) && (count >= 40) )//检测起始码宽度,符合条件进入{num=0;//起始码编号为0,存入数组中flag1=1;//辅助标志位,用于进入下面程序}}if(flag1==1)//第二次进入中断后将33和脉宽依次存入数组中,编号为0~32 {wedat[num] = count; //读取T2定时器中断程序中的计数值count = 0;//都去完成后,清零num++;//编号++}flag=1;//第一次flag=0,第二次进入后为1,开始执行脉宽存储程序if(num > 32)//如果num大于32,也就是说33个脉宽都存入了,0~32,共33个。
红外线遥控器(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
发射距离测试
测试遥控器在不同距离下的信号发射效果,确保 遥控器在有效范围内能够正常工作。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于NEC 标准的
主要器件:AT89c51、HS0038HS0038工作频率为38 kHz,能对得到TTL 电平的编码信号,再送给外只有3 个引脚: VS 、GND 和原理:采用 常用电器的NEC 38KHZ (即脉宽调制的方法)信息传给单片机,再通过单片机编码:NEC 标准:用 0.56ms 用0.565ms 高电平+1.685ms 发送的格式:引导码+用户码电平+4.5ms 的低电平组成。
用第二次发送的用户码可为第一次是为了判断发送的信息是否正确注意:上面说的低电平和高电平志。
即低电平期间不发射38KH 间发射38KHZ 的红外波。
标准的红外编码及解码原理及进程0038红外接收头、红外发射管、
能对收到遥控信号进行放大、检波、整形、解再送给单片机,经单片机解码并执行相关控制程1个脉冲信号输出引脚,使用方便,性能可EC 标准实现红外编码及解码。
将要发送的通法)的载波发送出去,再由一体化红外接收单片机程序实现解码。
ms 的高低平+0.565ms 的低电平代表数据中5ms 的低电平代表数据中的1。
户码+用户码+操作码+操作反码。
引导码为成。
用户码和操作码均用8位的十六进制发送。
第一次发送用户码的反码,也可不为,发送反码,操作码也一样。
高电平不是实际的电平概念,只是个代表0和38KHZ 的红外波,此时发射管可亮可灭。
高电平 形、解调,制程序,对可靠。
数据通过头接收把中的0,9ms 的高送。
反码主要1的标高电平期
发射电路:如上图所示,D1为红外发射管,9014为低噪小功率NPN三极管,R1为10欧姆,R2为50欧姆,为了使发射管发射的距离加长常使R2为零,
R1为4.7K欧姆。
功能:优势:通过对NEC标准红外编码的学习,可同时控制多个接收装置而不产生干扰。
因红外发射芯片的地址码为固定的一个,只能控制单独的一个装置
或控制相同地址码的装置,且只能控制与遥控器上键数相同的功能,大多数为
十多个。
而学习编码的优势是只用一个单片机就能至少有256个地址码(地址码不取反的话地址码将更多),一个地址码有对应的多个受控装置,可见学习
红外编码可大大节约资源。
解码原理及编程参考上面的编码原理。
实现中的问题:搜集资料不容易,且相同标准一个协议大家说的都不尽相同,
让人很难搞准那个是对的。
焊接的电路没理想的那么好使,红外接收头的距离没开发板上的接受的距离远。
红外发射的距离更短,只有十多厘米。
进程:电路已焊接好,程序已写好,下面进入调试阶段。
电路还需改进,尽可
能使其发射的距离加长。