基于vhdl红外遥控编译码器设计说明书.doc_第1页
基于vhdl红外遥控编译码器设计说明书.doc_第2页
基于vhdl红外遥控编译码器设计说明书.doc_第3页
基于vhdl红外遥控编译码器设计说明书.doc_第4页
基于vhdl红外遥控编译码器设计说明书.doc_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

长春工程学院毕业设计(论文)目 录1 前言11.1 红外遥控编译码器的现状和发展趋势21.2 本设计的特点21.3 本论文的设计任务及结构31.4 本章小结42 系统的软件设计52.1 VHDL语言的介绍52.2 VHDL语言的优点62.3 函数的流程72.4 本章小结93 红外遥控控制原理103.1 红外103.2 红外遥控原理103.3 红外发送系统的基本组成123.4 红外接收电路的设计133.5 本章小结144 编码与译码154.1 红外遥控的编码发送154.2译码器的基本原理174.3 硬件解码与软件解码的比较184.4 本章小结195 系统的硬件设计205.1 硬件的功能描述205.2 发送控制的设计205.3 接收控制的设计215.4 仿真分析215.5 本章小结226 总结23参考文献24致谢25附录26 23 1 前言目前市面上的编译码器多种多样,而其主要用于家电设备及一些电子产品当中,而红外遥控编译码器也是极其常见的,然而技术和经济的发展使得数字化趋势越来越强烈,很多时候已经不能满足用户要求。红外遥控编译码器就是在普通编译码器的基础上,应市场需求而产生的,它能控制不同种类的设备,并且操作方便,深受顾客的欢迎,这也决定了红外遥控编译码器具有广阔的应用前景9。红外遥控由于其发射和接收方便、结构简单、成本低、可靠性较高, 因而早已在家用电器中得到广泛应用。目前在智能仪器和工业控制系统中的应用也越来越广泛。红外遥控本质属于红外信息传输的一种应用形式。红外传输大体分为数据的传输和控制信息(指令) 的传输二类。数据的传输一般来说传输的信息量会较大, 因此一般会要求有较高的传输速度, 对于可靠性的要求则针对数据的具体应用而异, 在计算机、PDA 等设备上采用的IRDA 界面就是这种应用的典型代表。12发射二极管发射次数和频率对其使用寿命的影响, 这种应用中发射系统的使用寿命是设计者需要考虑的因素之一。控制信息传输的特点是信息量小, 但是可靠性要求高。目前广泛应用的红外遥控就属于这种情况。VHDL的英文全Very-High-Speed Integrated Circuit HardwareDescription Language,诞生于1982年2VHDL和Verilog作为IEEE的工业标准硬件描述语言,又得到众多EDA公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。有专家认为,在新的世纪中,VHDL于Verilog语言将承担起大部分的数字系统设计任务。 VHDL主要用于描述数字系统的结构,行为,功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法是十分类似于一般的计算机高级语言。VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个组件,一个电路模块或一个系统)分成外部(或称可是部分,及埠)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。在对一个设计实体定义了外部接口后,一旦其内部开发完成后,其它的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。ModelSim是业界最优秀的混合HDL语言仿真调试环境,提供最佳的仿真性能和调试特征,成为众多ASIC和FPGA厂商推荐的仿真调试工具,也是广大FPGA、ASIC设计工程师实施混合HDL语言RTL级、门级电路仿真以及布局布线后时序仿真的首选。全面支持所有HDL标准,支持广泛的建模技术,提供直观的图形用户界面运行方式,也支持高性能的批处理模式。Quartus II 是Altera公司出品的优秀的设计工具,它兼容第三方设计工具,为高密度FPGA设计提供了最高效和最快速的实现途径,与传统高密度FPGA设计流程相比,其设计效能显著提高1.1 红外遥控编译码器的现状和发展趋势编译码器其实离我们很近,像电视机的遥控器、手机、录音电话的远程提取留言等等,这些设备无一例外都和编译码电路有着直接的关系。当今的编译码电路已经朝着高度集成化和微电脑化发展,像前几年大量使用的PT2262/2272编译码芯片组,就是一种相当典型和有着代表意义的电路。该芯片组可以在315V的电压范围内可靠工作,外围仅需一时钟振荡电阻。单体便可提供531441种寻址能力。目前国外(主要是欧美市场)的编译码器几乎都是多功能的,它们能够控制全球的绝大部分电子产品。而这些编译码器一般其价格一般都比较贵,达上百美金。值得一提的是,目前全球的编译码器的80%是由中国大陆代工贴牌生产的,但关键芯片是别人的。国外的编译码器主要通过科技商场等管道进行销售,消费者可以根据自己的需要进行选择,其发展趋势是根据市场的需要编译码器拥有更多的功能和更人性化的设计。而在国内市场,编译码器器绝大部分是单一型的,这与我国经济状况和消费习惯有关。红外遥控编译码器只是单一型的编译码器的补充,在一般的主流管道是没有红外遥控销售的,许多消费者也就不知道有或者如何购买红外遥控编译码器,因此红外遥控编译码器的销量是相对很少的。也缘于此编译码器的质量是参差不齐的,大部分使用不方便,或者名为红外遥控编译码器但对很多设备却难以控制。但正如西方的情况,我国也会经历从使用单一型遥控器走向多功能的编译码器,尤其是在信息化迅速发展的情况下,编译码器有着广阔的需求和发展空间。启动这一块市场的关键是使红外遥控编译码器确实好用,能够完全替代单一型遥控器的功能以及有效的市场推广。1.2 本设计的特点因为VHDL工具软件平台的强大功能,使得设计的许多工作都能在计算机上以软件仿真的形式完成,这样不仅可以大大缩短产品的开发周期,还可以随时根据实际需要更改或者添加新的功能,设计模式更加灵活。从而他为各类红外控制应用系统提供了一类实用的参考。选用集成专用编译码器件,此器件成功地研制出了多信道红外遥控系统。专用芯片设计制作红外发射和接收,并实现编译码功能,该电路为CMOS大规模数字集成多路编译码器。该生产线有各种大电机设备,环境电磁辐射强,又处于南方高温、高湿地区,对遥控系统整体性能要求很高。在综合分析的基础上,我们采用红外线编码方式设计,使系统具备了良好的抗电磁干扰的能力。通过对系统电路、组装进行的精心设计处理,获得了稳定、可靠的使用效果,目前已经在全自动生产线无故障运行。编码器PT2248发射控制器由电源部分、振荡电路及红外发射管组成。1.3 本论文的设计任务及结构本题要求采用合适的红外遥控专用芯片,制作多路红外遥控系统的编码器,其译码器采用VHDL语言编程、可编程逻辑器件实现,完成多路红外遥控系统的设计。主要技术要求:1. 设计完成多路红外遥控系统的编码发送部分;2设计完成多路红外遥控系统的接收部分;3用VHDL语言编程、可编程逻辑器件实现其译码电路部分;4完成系统输出显示部分。本设计的任务主要完成红外遥控编译码器的系统架构设计以及关键技术问题上的解决办法;用VerilongHDL语言对红外遥控编译码器的进行解码。接收解码用VHDL语言编写程序,在EDA实验板上实现解码,要求具有以下功能:(a)将一体化红外接收解调器的输出信号解码(12个单击键、6个连续键,单击键编号为7-18,连续键编码为1-6),在EDA实验板上用七段数码管显示出来;(b)当按下遥控器1-6号连续键时,在EDA实验板上用发光二极管点亮作为连续键按下的指示,要求遥控器上连续键接下时指示灯点亮,直到松开按键时才熄灭,用于区别单击键。(c)EDA实验板上设置四个按键,其功能等同于遥控器上的1-4号按键,当按下此四个按键时七段数码管分别对应显示“1”、“2”、“3”、“4”。(d)每当接收到有效按键时,蜂鸣器会发出提示音。(e) 通过遥控器跳线改变用户码,EDA实验板上用三个发光二极管正确显示发送端的用户码。本论文分为六章:第一章概要阐述红外遥控编译码器的现状和本设计的特点。第二章对VHDL语言的介绍。第三章主要阐述红外遥控系统结构与控制原理。第四章介绍关于编码与译码所选择的器件的特点。第五章详细说明红外遥控编译码器的设计以及硬件实现。第六章总结。1.4 本章小结本章是对我所做的是设计基于vhdl的红外遥控编译码器的总体概述,分析了当下国内和国外的红外遥控编译码器的发展和现况,介绍了本设计内容的特点,列出了本设计的任务。 2 系统的软件设计2.1 VHDL语言的介绍VHDL的英文全写是:VHSIC(VeryHighSpeedIntegratedCircuit)Hardware Descriptiong Language。翻译成中文就是超高速集成电路硬件描述语言。因此它的应用主要是应用在数字电路的设计中。目前,它在中国的应用多数是用在FPGA/CPLD/EPLD的设计中。当然在一些实力较为雄厚的单位,它也被用来设计ASIC。 关于用VHDL和原理图输入进行CPLD/FPGA设计的粗略比较:在设计中,如果采用原理图输入的设计方式是比较直观的。你要设计的是什么,你就直接从库中调出来用就行了。这样比较符合人们的习惯。但是这样做需要设计人员要在两方面有较高的素质: 1.对电路的知识要比较丰富。 2.对CPLD/FPGA的结构比较熟悉。 有了这两个条件才能在设计的过程中选用适当的器件从而提高设计的可靠性、提高器件的利用率及缩短设计的周期。但是有一个重大的问题是在于,如果你的产品有所改动,需要采用另外的CPLD/FPGA时,你将需要重新输入原理图。(改用不同的器件在今天这种竞争环境下是会经常发生的。头儿们为了提高产品的性能或者是降低产品的造价,提高保密性等等,都会考虑选用不同的器件。对他们而言只是做出一个决定,对我们而言却是要我们付出更多的心血)。 但是当你采用VHDL等高级语言来设计时这些问题都会得到较好的解决。由于在使用VHDL等高级语言时,有专用的工具来实现将语言描述的电路功能转换为实际的电路所以你就用不着对底层的电路很熟悉,也用不着对CPLD/FPGA的结构很熟悉(因为有专用的工具针对你的描述采用相应的器件哦)。当你要换器件时,你只需要将原来设计好的VDHL文件在新器件的设计工具中再次实现就行了。用高级语言设计电路的流程: 在用高级语言来设计电路时,主要的过程是这样的: 1. 使用文本编辑器输入设计源文件(你可以使用任何一种文本编辑器。但是,为了提高输入的效率,你可以用某些专用的编辑器,如:HdlEditor,TuborWriter或者一些EDA工具软件集成的HDL编辑器)。 2. 使用编译工具编译源文件。HDL的编译器有很多,ACTIVE公司,MODELSIM公司,SYNPLICITY公司,SYNOPSYS公司,VERIBEST公司等都有自己的编译器。 3. (可选步骤)功能仿真。对于某些人而言,仿真这一步似乎是可有可无的。但是对于一个可靠的设计而言,任何设计最好都进行仿真,以保证设计的可靠性。另外,对于作为一个独立的设计项目而言,仿真文件的提供足可以证明你设计的完整性。 4. 综合。综合的目的是在于将设计的源文件由语言转换为实际的电路。但是此时还没有在芯片中形成真正的电路。这一步就好像是把人的脑海中的电路画成原理图。-这是我的个人观点,似乎在好多文献中都没有提到“综合”的准确定义。至少,我读过的几本书中就没有。这一部的最终目的是生成门电路级的网表。 5. 布局、布线。这一步的目的是生成用于烧写(编程Programming)的编程文件。在这一步,将用到第4步生成的网表并根据CPLD/FPG厂商的器件容量,结构等进行布局、布线。这就好像在设计PCB时的布局布线一样。先将各个设计中的门根据网表的内容和器件的结构放在器件的特定部位。然后,在根据网表中提供的各门的连接,把各个门的输入输出连接起来。最后,生成一个供编程的文件。这一步同时还会加一些时序信息到你的设计项目中去,以便与你做后仿真。6. 后仿真。这一步主要是为了确定你的设计在经过布局布线之后,是不是还满足你的设计要求。如果设计的电路的时延满足要求的话,则就可以到第7步啦!7烧写器件(编程)。 软件的部分应该完成对所设计的下位机硬件红外码接收电路的实现,即完成对红外码的数据采集功能。需要选择合理的开发工具和高级语言,本论文选择VHDL语言。2.2 VHDL语言的优点VHDL语言是国际上流行的、很有发展前途的计算机高级语言。VHDL语言的优点:(1)语言简洁、紧凑、使用方便、灵活。程序书写形式自由,主要为小写字母表示,压缩了一切不必要的成分。(2) 运算符丰富。VHDL语言的运算符包含的分为很广.(3) 数据结构丰富,具有现代化的各种数据结构。(4) 具有结构化的控制语句。能很好的使用函数来实现程序的模块化。(5) 语法限制不太严格,程序的设计自由度大。(6) VHDL语言允许直接访问物理地址,能进行为操作,能实现汇编语言的大部分功能,可以直接对硬件进行操作。(7) 生成目标代码质量高,执行效率高。2.3 函数的流程数字系统的设计方法从整体和局部的先后顺序上分,可以分为自顶向下(top-down)的设计和自底向上(bottom-up)的设计。 这里采用自顶向下的设计,首先从整体上规划整个系统的功能和性能,然后对系统划分,分解为规模较小、功能较为简单的局部并确立它们之间的相互关系。主函数作为软件的入口,合理的配置单片机的特殊功能寄存器,以合理的工作方式实现数据采集和固定的波特率进行串口通信。主函数的工作流程:定时器初始化等待红外码中断服务程序系统初始化是否中断结束 否是发送数据 是否发送完成否 是返回 图2-3 主函数的工作流程面向对象的编程语一言将客观事物看作具有属性和行为的对象,通过抽象找出同一类对象的共同属性和行为形成类。结构化程序设计的思路是:自顶而下、逐步求精;其过程结构是按功能划分为若干个基本模块,这些模块形成一个树状结构;各模块之间的关系尽可能简单,在功能上相对独立;每一模块内部均是由顺序、选择和循环三种基本结构组成;其模块化实现的具体方法是使用子程序。而面向对象的方法:将数据及对数据的操作方法放在一起,作一个相互依存、不可分离的整体。部分程序:library ieee;use ieee std- logic- l 164 all;entity sels isport ( d0, d1, d2, d3, a, b:in std_logic:out1 out std_logic ) :end sels;architecture sels_arc of sels issignal sel: std_logic_vector ( 1 downto 0) :beginsel=b&a:outl= d0 when sel= 00 elsedl when sel= 01 elsed2 when sel= 10 elsed3 when sel= l1 elseZ :End如输入端为低电平, 则仿真结果中temp _high 为0 ,temp _low 为1 。反之,temp high为1temp low 为0根据temp_ high 和temp _low的值来决定当前的工作状态, 并给出相应的制输出信号。可见程序是相当简单而且逻辑清晰的,这种自顶向下的设计方法使一个大型的系统设计分解为若干个可操做的模块, 易于分工合作, 并且可以对这些模块分别进行模拟仿真。由于设计的主要模拟仿真是在高层上实现的.所以能及早地发现系统中的错误并改正, 提高设计的效率。2.4 本章小结本章的主要内容是对软件系统的设计,给出了函数的流程图及部分程序,说明了软件系统在本设计中的应用和作用,主要对vhdl语言做了细致的描述,它的优点给本设计带来极大的方便。3 红外遥控控制原理3.1 红外红外光的有效传送距离正比于驱动峰值功率,红外发射二极管为电流型器件, 其功率与所通过的峰值电流成正比, 为了增加传输距离, 可加大峰值驱动电流。选用不同功率的发射管, 遥控距离可从几米到几十米。红外光发射的指向性较强, 作用角度较小。其指向性与发射二极管的封装形状也有关系, 球面形封装就比平面形封装的指向性强。要改善接收范围, 在选用合适的封装形式的器件基础上, 还可采用多个发射管串联或并联, 并间隔一定距离并列安装的方式。红外光是波长比红色光的波长(0.76m)还长的光波。将电磁波谱中间隔为0.76/1000pm的波谱段称为红外光谱区。一般将红外光谱分为四个区域,即近红外(0.76-3.0pm)、中红外(3.0-6.0pm)、中远红外(6.0-20pm)、远红外(20-1000“m)区。目前工业或民用的红外光探测遥控中所使用的红外光谱主要集中在0.76-1.60/m的近红外区4。采用近红外光作为红外探测遥控的光源,主要因为:(1) 一般的接收用的光电二极管、光敏三极管大都采用硅半导体材料制作而成,这类管子的接收峰值波长为780-155Onm,即管子对波长为780-1550nm的红外光的探测灵敏度最高。(2) 红外光发射器件,其发射波长在88017O0mn范围内,这与光电接收器件的响应波长相匹配,使探测灵敏度高,工作效率高38。3.2 红外遥控原理3.2.1 识码与编码一个红外遥控系统一般由红外遥控器和红外接收器、微控制器及一些外围电路组成12。其中红外发送器用来产生与指令/按键对应的控制信号,并在信号发射前预先对指令或按键信号进行识别或编码,并经过调制以串行数据的形式发送出去。其常用的识别或编码方式有两种:即频分制和码分制。频分制就是以不同频率的信号代表不同的指令或按键。遥控信号的频率范围在几百赫兹到几千赫兹之间。这样识别编码方式可以使发送出去的遥控信号抗干扰能力强,但由于不同的指令或按键要占不同的频带,所以在遥控指令集比较复杂的场合它需要较多的遥控通道,也就使要占更多的频率资源。而这种方法只适合指令集简单的场合。当指令集复杂时,一般采用码分制。码分制红外遥感是以不同的脉冲或者脉冲组合来代表不同的指令按键。与频分制相比码分制电路简单,使用灵活,在实际应用中多彩用这样的方式。编码方式主要有频率调制、脉宽调制和脉位调制,实际上各种红外系统的主要区别在于编码方式的不同。为了要达到远距离遥控,除了增加发射机的发射功率外,还采取了增加发射扇区的措施,并对接收机接收到的红外控制信号进行了一定的聚焦处理,使达到接收机较分散的红外光束能聚焦于一个较小的面积,以提高接收功率,增强接收效果。为了解决全自动生产线的控制问题,选用集成专用编码器件PT2248成功地研制出了多信道红外遥控系统。该生产线有各种大电机设备,环境电磁辐射强,又处于南方高温、高湿地区,对遥控系统整体性能要求很高。在综合分析的基础上,我们采用红外线编码方式设计,使系统具备了良好的抗电磁干扰的能力。通过对系统电路、组装进行的精心设计处理,获得了稳定、可靠的使用效果,目前已经在全自动生产线无故障运行。多信道遥控系统由发射控制器和接收控制器组成,可以实现一个控制发射机编码控制多个控制点的目的,非常适合自动控制的各种场合,也可以应用于防盗报警等,具有广泛的推广使用价值。红外遥控作为一种单向红外通讯技术, 因其具有性能稳定、使用方便以及成本低廉等特点,已经在消费类电器中得到普遍的应用. 随着对电器产品的智能化和使用便利性要求的进一步提高, 红外遥控的应用已开始从其传统的家用电器领域向智慧设备等新领域扩展。 由于集成电路制造工艺和设计水平的不断提高,将此类传统的分立电路功能集成到嵌入式的系统中已成为可能。 本文根据嵌入系统的要求进行了红外遥控器控制系统的设计. 设计中脉冲信号调制采用了PPM 方式,红外遥控器的控制系统采用了超高速集成电路硬件描述语言(VeryHigh speed integrated ci rcuit hardware DescriptionLanguage, VHDL ) , 并通过现场编程门阵列器件( Field Pvogrammable Gate Ar rays , FPGA) 实现系统能。3.2.2 设计方案 方案一:该系统选取PT2248 作为构成发送器的芯片7。大可用作18 路红外遥控系统的编码,只需外接3 6 的矩阵式按键、红外发光二极管及其驱动电路等少量元器件便可完成编码发送的功能。有2 个电容均为120 pF ,晶振频率为455 kHz。另外, PT2248 内部己集成了38 kHz 的红外载波振荡及相应的数字脉码调制电路,他的编码方式采用脉位调制( PPM) ,将遥控指令编码成脉冲序列,然后再调制以高频信号,最后以红外光的形式发送出去。其遥控指令的1是以占空比为3/4 的正脉冲表示,0则用占空比为1/4 的正脉冲表示,其中一个为位码周期的1/4 ,一个a 占有的时间长度为PT2248 内部红外载波振荡周期的16 倍,即a = 16/(38 kHz) 。由于PT2248 采用了38 kHz 载波振荡及脉码调制电路,因而接收端采用频率与之对应的MIM-R1AA 红外一体化接收解调器。MIM -R1AA 对接收到的信号除了进行了放大、限幅、检波,直至得到遥控指令的脉冲信号外,还对解调出的信号进行了整形和反向输出10。方案二:选用集成专用编译码器件ED5026,此器件成功地研制出了多通道红外遥控系统。专用芯片设计制作红外发射和接收,并实现编译码功能,该电路为CMOS大规模数字集成多路编译码器。其中ED5026为编码器。该生产线有各种大电机设备,环境电磁辐射强,又处于南方高温、高湿地区,对遥控系统整体性能要求很高。在综合分析的基础上,我们采用红外线编码方式设计,使系统具备了良好的抗电磁干扰的能力。通过对系统电路、组装进行的精心设计处理,获得了稳定、可靠的使用效果,目前已经在全自动生产线无故障运行。编码器ED5026可作三态编码,也可以作四态编码。译码器部分有相应的12位编码线。发射控制器由电源部分、PLC编码控制器、光电隔离电路、集成编码器、振荡电路及红外发射管组成。基于对以上两种方案的分析,本课题决定选用方案一。因为方案二不仅设计起来便捷,在技术方面也远超乎于方案一。3.3 红外发送系统的基本组成 3.3.1 整体结构 PT2248作为构成发送器的芯片。整个系统框图及外围电路中,两个电容均为120pF,晶振频率为455kHz。PT2248最大可用作18路红外遥控系统的编码,其内部已集成了38kHz的红外载波振荡及相应的数字脉码调制电路。故在设计时,只需外接36的矩阵式按键、红外发光二极管及其驱动电路等少量元器件便可完成编码发送功能。由于PT2248采用了38kHz载波振荡及脉码调制电路,因而接收端采用频率与之相应的MIM-RIAA红外一体化接受解调器。而解调出来的基带信号解码则由CPLD来实现。PT2248的编码方式采用脉位调制(PPM)方式来将遥控指令编码成脉冲序列,然后再调制以高频信号,最后一红外光的形式发送出去。其遥控指令1以占空比为3/4的正脉冲表示,0则用占空比为1/4的正脉冲表示。其中a为位码周期的1/4,一个a占空的时间长度为PT2248内部红外载波振荡周期的16倍,即a=16/(38kHz)。另外,MIM-RIAA对接收到的信号除了进行放大、限幅、检波,甚至知道了遥控指令的脉冲信号外,还会对解调出的信号进行整形和反向输出。一般,遥控器的每个按键编码都是由12位遵照以上编码规则所代表的“0”、“1”组成,时间长度为124a=48a。这样,当按下遥控器的7到18号单击按键时,系统将以12位为一组发送两次编码,其中60a为自按下按键到发送编码的等待时间,80a是重复发送12位48a编码的间隔时间,接收解调器在此时的输出和没有收到红外编码一样(为高电平)。而7到18号单击按键无论发送端按键时间持续多长,都只发送一次这样形式的两组相同的12位编码。当按下1到6号连续按键时,编码格式连续发送。3.3.2 红外发射方式红外遥控信号的发射由编程控制器、指令编码、信号的调制及红外发射四部分组成。每一部分既可由具有相应功能的芯片分步完成, 也可以由专用芯片或MCU 一次完成2。使用发光二极管获得红外光是相当简便的。红外发光二极管是一种NP结构成的注入电流型发光器件,加上合适的正向偏置电压后,就可以发出一定波长的近红外光。根据电流驱动方式可分为:(1) 平均发射方式:通过启动直流供电电源直接驱动发光二极管发出恒定的外光。红外发光二极管的功率一般比较小,而平均发射方式的功耗较大,且抗干扰能力较差。(2) 脉冲发射方式:采用脉冲电流驱动方式,发出一定占空比的脉冲信号。射脉冲编码信号可降低功耗,提高发射效率。3.4 红外接收电路的设计接收解码部分用CPLD通过VHDL实现,使用的CPLD为ALTERA公司的MAX7128SLC84-15芯片。本红外遥控解码系统设计采用模块化设计思想,具体模块的划分为:l 解码控制、串行转并行移位寄存器l 数据同步控制计数器l 译码器、误码辨别器l 输出锁存器l 蜂鸣驱动器l 按键消抖电路l 按键译码器模块有三个输入端,分别为CLK系统时钟,DATAIN数据输入端,异步清零端,分别接有源晶振、红外接收解调器输出和来自数据同步控制计数器的清零信号,三个输出分别为DATAOUT 12位并行解码输出、CON数据接收指示端、READ输出锁存器DFF_PR的触发信号。该模块把来自红外接收解调器的信号解码成“0”和“1”,通过移位寄存器把串行数据转成并行数据输出,在接收数据其间CON间歇性地输出高电平(此信号用处下文详述),并在接收完十二位串行信号时READ输出高电平,使DFF_PR在该信号的上升沿处更新触发器的数据。根据ED5026芯片“0”和“1”的编码规则可知,接收端收到1个a时间的低电平3a的高电平表示“0”,当收到3a的高电平1个a的低电平即为“1”,由此设计了这样的一个状态机,在每位数据到来时进入计数状态,计数器在数据低电平时计数,通过判断计数器的计数数值可得知数据低电平的脉宽,从而实现“0”、“1”解码.3.5 本章小结本章是对红外遥控控制系统做出了的设计,其中分为红外发送和红外接收系统的组成,包括红外发送和接收电路的总体框图以及框图中各部分的介绍,最后对键扫描电路做出了说明。4 编码与译码遥控系统中传输的数据是一串编码脉冲,也就是一组连续的串行二进制代码,只是该脉冲是用调制过的载波表示的。对于一般的遥控系统,此串行码由红外接收头解调后,作为微控制器的遥控输入信号,由CPU完成对遥控指令的译码,设计人员通常利用红外编码译码专用芯片或者单片机研制各种红外遥控系统,对各种电气设备进行遥控。4.1 红外遥控的编码发送目前市场上有成百上千的编码方式并存,没有一个统一的国际标准,只是各芯片厂商事实上的标准,在自己的遥控器中使用自己指定的标准。但由于早期的生产遥控芯片的厂家较少,主要集中在欧洲和日本,他们所使用的编码标准成为后续很多厂家遵循或者模仿的标准,也就是说很多厂家生产出自己的遥控器,但只是在脉冲宽度、数据位的个数上有一些变化,在整个码型结构上还是遵循的老厂家的标准。随着单片机技术的发展,很多公司使用通用单片机编码然后通过红外光调制后发射。本设计采用PT2248为编码器,如图4-1所示:图4-1 PT2248表4-2 PT2248管脚说明K1K6地址管脚,用于进行地址编码 T1T3数据输入端,有一个“1”即为编码发出 X1、X2晶振 TE编码启动端 VCC电源正端OUT编码输出 PT2248的特点: CMOS工艺制造,低功耗。 外部元器件少。RC振荡电阻。地址码可达531441以上。应用范围:车辆防盗系统。家庭防盗系统。遥控玩具。其他电器遥控。编码器由红外遥控专用芯片PT2248作为编码及发送部分,PT2248最大可用作18路红外遥控系统的编码,其内部己集成了38kHz的红外载波振荡及相应的数字脉码调制电路,只需外接36的矩阵式按键、红外发光二极管及其驱动电路等少量元器件便可完成编码发送的功能。PT2248组成的十八路遥控发送器其编码规则如下:(1)设a为一个时间单位,时间长度是38kHz的16个时钟周期,即a138kHz160.421ms 编码是以串行形式发送的,在接收(38kHz解调器)接收到如下形式的1位的编码时分别表示“0”和“1”:a3a3aa1个a的低电平,3个a的高电平表示编码“0”3个a的低电平,一个a的高电平表示编码“1”(2) 遥控器的每个按键编码由12位按以上编码规则所代表的“0”、“1”组成,时间长度为48a,如下所示:4.2 译码器的基本原理红外遥控接受器的主要功能使用来接收来自红外遥控发送器的发送信号,并对接收到的信号进行放大、整形、直至从载波上解调出基带信号,对于专用设备,还包括基带信号的解码过程。接收器的结构功能很大程度上决定于发送器的结构和对信号的处理方式。因而产生了专用的解码芯片和自行设计的解码芯片。接收解码部分用CPLD通过VHDL实现,把红外接收头送来的二进制编码通过解码还原出发送端的发送数据。具体模块的划分如下图所示:4-3 译码系统的描述1. 数据同步控制计数器由编码规则可知,在接收编码其间高电平时间不会超过3a,如果超过3a则可判定为无编码发送时间,在此时对状态机及寄存器清零可获得正确的数据同步。因此该计数器进位信号作为解码控制、串行转并行移位寄存器模块的异步清零信号。2. 译码器、误码判别器该模块把来自解码控制、串行转并行移位寄存器的十二位解码信号译成1至18的五位BCD码输出,并在正确译码时OK输出高电平,按键为1至6号连续按键时SI输出高电平,若输入的十二位解码信号不符合1至18号按键的编码时(此情况发生在来自解码控制、串行转并行移位寄存器模块的十二位码在移位时以及其它原因造成误码时)五位BCD码的输出保持原来的值,OK输出低电平。3. 输出锁存器该输出锁存器是一个具有优先预置数的5位触发器。PR为优先预置数控制端,当PR输入为高电平时,输出端将随预置数输入端INPUT_PR的变化而变化,当PR为低电平时,数据被锁存。在PR为低电平期间,在触发信号输入端CLK上升沿时输出OUTPUT5将对输入端INPUT5的输入数据锁存。4. 蜂鸣驱动器 蜂鸣驱动器可以说是一个单稳态触发器,当输入使能端EN为高电平时进入暂态,BELL输出为高电平并维持49个时钟周期,以驱动蜂鸣器发出短暂的“嘟”声音。5. 按键消抖电路按键消抖电路对四位机械按键的输入进行弹跳消抖,当每一位按键被按下时输出为低电平,按键输入端KEY只要低电平时间超过两个时钟周期则对应位上输出一个时钟周期的低电平,对于小于两个时钟周期的干扰脉冲不作响应,而大于两个时钟周期的长时间连续低电平也只输出一个时钟周期的低电平。6. 按键译码器 按键译码器的功能是把四位按键信号译成相应1、2、3、4的BCD码,并向输出锁存器发出优先预置数的锁存信号。当没有按键按下时四位按键经消抖电路输出“1111”,若有键按下,对应位上输出为“0”,如1键被按下,四位按键经消抖电路输出“1110”,经此按键译码器译成四位BCD码为“0001”,并且PR输出高电平向输出锁存器发出锁存信号。 4.3 硬件解码与软件解码的比较硬件译码可分为专用译码集成电路和自行设计的译码电路两种。专用译码芯片一般与专用编码芯片配对设计制造。按其编码与译码功能可分为以下三类:(1) 控制数据地址加密编码与译码器:这类电路的特点是在地址加密编码的同时还可以进行控制数据的编译码。其编码容量大,保密性好。适用于安防、工业控制等对可靠性要求较高的场合。(2) 地址加密编码与译码器: 这一类电路无控制数据编码仅有加密地址编译码功能。适用于可靠性要求较高, 但只进行简单的开关或增减控制的场合。(3) 控制数据编码与译码器: 这类电路无加密地址编码仅有控制数据的编译码。适用于群控或者应用环境本身就保证了其它信号发射源不会同时出现的场合, 如在一个密闭的设备内部。使用专用的硬件编码译码对芯片, 简便可靠, 使用广泛。专用芯片编码译码简便可靠, 但缺乏灵活性。软件编码适用于遥控命令较为复杂的场合, 而软件译码则给整个系统的更改和升级提供了极大的灵活性。4.4 本章小结本章对编译码器做出了总体的设计,重点介绍了PT2248专用芯片的功能,及引脚的介绍,从而有了编码和解码的设计思路,最后对解码方式做了分析,把其分为硬件解码和软件解码,并对这两种解码方式做出了对比,软件解码以其可靠,灵活以及成本低的优势。5 系统的硬件设计5.1 硬件的功能描述遥控专用集成电路是发射系统的核心部分,它能产生键位扫描脉冲信号,并能译出按键的键码,再经遥控指令编码器得到某键位的遥控指令(遥控编码脉冲),由38KHZ的载波进行脉冲幅度调制,载有遥控指令的调制信号激励红外二极管发出红外遥控信号。当编码控制器工作时时,发送电路就产生对应的编码,经过调制后,在输出端产生串行编码的脉冲。这些脉冲经过驱动电路后由红外二极管发射出去。当接收端接收到光信号后,先经过光放大器再经过专用译码芯片将其还原(解调)为串行编码脉冲,然后由接收电路按照编码译码的协议转换为相应的控制电平,最后由执行电路驱动开关等完成要求的操作。要想红外遥控译码,首先要知道所选编译码器的编码原理。在不知道编译码器的编码原理时,可以采用示波器观察遥控器的编码方式及连发码的编码波形,测出高、低电平的脉宽,从而可以更快地编写译码的单片机程序,实现译码及连发码处理。红外专用接收集成电路集红外前置放大、限幅、检波、积分和比较整形于一体,具有集成度高、功能强、性能可靠、耗电低、体积小、外围元器件少、性价比高等优点。常用的有两类:一类是内含前置放大器以及限幅、检波和整形电路等,但芯片上无带通滤波器,选频时需外接LC选频网络;另一类是除具有第一类的功能外,其内部设置有带通滤波电路,外部不需要接体积大的电感元件等,使得外围电路更简单8。5.2 发送控制的设计编码器PT2248发射控制器由电源部分、振荡电路及红外发射管组成。数字编码信号并不直接用于调制红外光产生的红外数据信号, 而是预先对38 kHz左右的载波信号进行调制,再以此信号驱动红外管发光, 即采用二次调制技术, 这样做的好处是: 可使红外发光管的脉冲电流很大而直流平均电流较小, 管芯不至发热并且有利于收端检出有效信号, 抑制相近光谱的干扰, 提高信噪声比和作用距离。数据信号的预调制通常采用幅度调制。此调幅信号即可加到红外发光管驱动电路来产生红外光数据信号, 通常驱动电路都采用三极管来实现11。设计中为了增大发射功率,我们采用了达林顿驱动四只发射管,增加了发射控制的范围。并设计了发射状态指示,一旦有发射信号,状态指示亮,便于管理人员检查管理。本设计的发送控制电路见附录中的电路图。5.3 接收控制的设计接收模块有三个输入端,分别为CLK系统时钟,DATAIN数据输入端,异步清零端,分别接有源晶振、红外接收解调器输出和来自数据同步控制计数器的清零信号,三个输出分别为DATAOUT 12位并行解码输出、CON数据接收指示端、READ输出锁存器DFF_PR的触发信号。该模块把来自红外接收解调器的信号解码成“0”和“1”,通过移位寄存器把串行数据转成并行数据输出,在接收数据其间CON间歇性地输出高电平(此信号用处下文详述),并在接收完十二位串行信号时READ输出高电平,使DFF_PR在该信号的上升沿处更新触发器的数据。根据ED5026芯片“0”和“1”的编码规则可知,接收端收到1个a时间的低电平3a的高电平表示“0”,当收到3a的高电平1个a的低电平即为“1”,由此设计了这样的一个状态机,在每位数据到来时进入计数状态,计数器在数据低电平时计数,通过判断计数器的计数数值可得知数据低电平的脉宽,从而实现“0”、“1”解码17。图5-2 接收控制模块5.4 仿真分析在完成了多功能红外遥控器各模块的代码设计以后,接下来要做的工作就是仿真。在工程上,HDL语言描述的硬件仿真类型可分为功能仿真和时序仿真。功能仿真是在未经过布局、补线之前,使用HDL源程序作为被仿真程序的激励文件进行的仿真。时序仿真,则是将HDL语言描述的电路源代码综合之后,再由FPGA适配器映射于具体芯片后得到的文件进行仿真,该文件中加入了具体芯片和连线间的延迟信号,因此该仿真最接近真实电路。功能仿真的作用在于一方面检查源代码语法上的错误,另一方面检验功能的正确性。在设计初期,源代码的修改和功能仿真会不断地重复以求得正确的结果。功能仿真不能对时序作任何的验证,因为仿真器仅对设计的逻辑行为进行模拟测定,而没有把器件的延时特性考虑进去,仿真器给出的结果就仅仅是逻辑功能,所有信号在仿真时都是立即改变状态。在进行功能仿真之前,必须先建立仿真文件。所谓的仿真文件就是按设计者自己的意愿,依据模块的功能,在某些特定的时间对输入信号赋予一些值,然后经过仿真器运行以后查看输出波形,检验功能的正确性。建立仿真文件的方法有很多种,比较常用的有:建立仿真宏文件、测试激励文件、创建波形仿真文件等等,三者的作用相同。波形仿真文件比较直观而且设计方便,但是对于复杂的功能强大的模块就没有宏文件和测试台来得方便411。本设计对各模块的仿真采用了测试激励文件形式。激励文件里面的信号都是与设计模块端口的信号一一对应,而每个激励文件都与一个模块映射。激励文件的源程序也是HDL语言描述的,只不过描述的功能是模块端口输入信号在何时赋何值。激励文件里面允许有时间常数,而正常的HDL文件里面是不允许的。在建好仿真文件以后就是进入仿真环境,设计中使用的仿真工具是Modelsim6.0SE。在运行了激励文件以后,仍然在仿真环境下观察模块输出端口信号的值,从而验证基于FPGA多功能红外遥控器系统功能的正确性。激励文件的设计难点是如何全面并且适时地给模块输入信号赋值,从而能够保证将程序运行的所有可能的情况包括在里面,全面地验证模块的功能。5.5 本章小结本章介绍了本设计的硬件系统的设计,对发送控制电路和接收控制电路做出分析,对其工作过程也给出了介绍,从而了解到了红外遥控编译码的功能,本设计也即将成形。6 总结红外技术在我们的日常生活中得到了越来越多的应用,给我们带来了极大的便利,红外遥控系统应用很广泛,了解一些红外遥控的知识是有必要的。该红外遥控系统已经得到实践验证,而且该系统的仿真是由FPGA 来完成的。由于VHDL 和EDA工具软件平台的强大功能,他使得设计的许多工作都能在计算机上以软件仿真的形式完成,这样不仅可以大大缩短产品的开发周期,还可以随时根据实际需要更改或者添加新的功能,设计模式更加灵活。从而他为各类红外控制应用系统提供了一类实用的参考。基于这样的背景,设计研制了本项目,以下就是所做设计的具体成果。1. 在本项目的研制过程中,首先学习了红外技术的原理特别是红外脉冲的发送模式。2. 根据高低电平的脉冲信号,结合单片机的应用技术,设计了硬件电路,完成对红外脉冲信号的数据采集。3. 基于本项目要解决的兼容进行实验,通过接收各种红外遥控器按键的红外码,进行分析寻找红外码的编码原理、传送方式等等,并由此得到译码算法完成。4. 了解了PT2248的工作原理及功能。5. 对VHDL语言有了深入的认识和运用。在本系统中,选用集成专用编译码器件ED5026成功地研制出了多信道红外遥控系统。硬件电路极为简单,原理简单、工作稳定可靠、易于兼容。当发射器的类型不同时只需对中断处理程序的部分参数稍加改动即可,就可以适用于多种红外遥控器信号的接收和译码,极大地节约了硬件实现的资源开销。本设计采用软件译码方法和抗干扰技术对遥控信号进行分析判断和译码,实现了远程控制。所开发的系统具有较强的灵活性和实用性,为新型遥控器材的研制做了有益的探索,具有一定的参考和借鉴作用。在整个系统的开发调试中,得到了很多收获也解决了很多的问题。然而本设计依然有很多不足之处,在仿真技术上需要大大加强。参考文献1潘松.VHDL实用教程.成都:电子科技大学出版社.2000。2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论