版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、苏州大学本科生毕业设计(论文)USB红外遥控设计 摘 要遥控技术根据控制方式的不同,一般分红外遥控、声控和无线遥控,俗称三遥。而红外线遥控是目前使用广泛的一种通信和遥控手段。由于红外线遥控装置具有体积小、功耗低、功能强、本钱低等特点,因而,继彩电、录像机之后,在录音机、音响设备、空调机、电脑以及玩具等其它小型电器装置上也纷纷采用红外线遥控。红外遥控技术的出现,不仅大大提高了劳动生产率,降低了本钱,而且减轻了人们的劳动强度,改善了劳动条件。而微机技术的出现,那么使现代科学研究得到了质的飞跃,给现代工业测控领域带来了一次新的革命,给人类生活带来了根本的改变。而两者的有机结合,将给人类带来更美好的明
2、天。而 关键词:USB红外遥控、ATmeag8单片机、编码、解码 ABSTRACTRemote control mode according to the different techniques, the general dividends outside remote control, voice and wireless remote control, commonly known as three remote. The infrared remote control is widely used as a means of communication and remote contr
3、ol. As the infrared remote control device has small size, low power consumption, strong function, and low cost, which, after color TVs, VCRs, after the tape recorders, audio equipment, air conditioners, computers and toys and other small electrical devices also have infrared remote control. Infrared
4、 Remote Control technologies, not only greatly increased labor productivity, reduce costs, and reduce the peoples labor intensity and improve the working conditions. The emergence of computer technology, then the modern scientific research has been a qualitative leap in the field to the modern indus
5、trial measurement and control has brought a new revolution, to human life brought about fundamental change. The combination of both, will lead to a better future for mankind. The research design in this paper the USB infrared remote control is in the use of USB in the PC, operation, instead of the p
6、revious remote control, allowing more convenient infrared remote control for easy operation. Keywords:USB Infrared remote control、ATmeag8 Single-chip computer、Encoding、 Decoding 1苏州大学本科生毕业设计(论文)前 言 随着人们生活水平的提高,人们对生活环境和生活质量的要求也在不断提高。空调、音响、以及一些电动玩具应运而生。而在其中,红外遥控在其中扮演了不可或缺的角色,并且已经在日常家用电器得到了广泛应用,其使用方便,功
7、耗低,抗干扰能力强的优点也越来越在智能仪器系统中受到重视。由于红外线在频谱上居于可见光之外,所以抗干扰性强,具有光波的直线传播特性,不易产生相互间的干扰,是很好的信息传输媒体。信息可以直接对红外光进行调制传输,例如,信息直接调制红外光的强弱进行传输,也可以用红外线产生一定频率的载波,再用信息对载波进调制,接收端再去掉载波,取到信息。从信息的可靠传输来说,后一种方法更好,这就是我们今天看到的大多数红外遥控器所采用的方法。红外遥控根本原理:一般的红外遥控系统是由红外遥控信号发射器,红外遥控信号接收器和微控制器及其外围电路等三局部构成。在软件解码红外遥控系统中,解码的核心是CPU.它接收解调出的串行
8、二进制码,在内部根据本系统遥控信号编码格式将串行码对应成遥控器上的按键,便于利用,易于兼容。本论文的主要任务是研究、了解USB红外遥控的原理,熟悉单片机根本理论,设计USB红外遥控器与单片机的硬件接口使之结合起来,利用现有PC 强大的功能,结合红外线控制技术来实现对设备的智能控制,从而给出软件解码的方法,简单介绍学习原理与应用。 2苏州大学本科生毕业设计(论文)第一章 AVR单片机的根底知识 由于微电子技术和数字技术的飞速开展,二十多年来计算机、尤其是微型计算机及其应用技术取得极其广泛和深刻的进步。其中单片微机由4位、8位,迅速开展到16位、32位,在运算速率、总线控制、存储容量,接口功能及数
9、量、开发工具、软件支持等方面都取得了长足的进步。单片微机具有体积小、价格低、高性能、应用开发简捷等优点,在工业控制、生产自动化、机械、电器、智能仪器仪表、信息家电、航空航天、通讯导航、汽车电子等领域,得到异乎寻常、日益广泛的应用。 1.1单片微机的技术开展 1975年,4位单片机诞生,揭开了单片机的历史。1976年,Intel公司的MCS-48系列单片机的出现,使单片机进入了8位机的历史阶段。几年后,Motorola公司、仙童公司、国家半导体公司和日立等公司也先后推出了8位单片机。这些单片机主要应用于工业控制及多机控制系统,用来满足各种对象的控制要求。 因此,单片机必须具有各种不同规格的接口,
10、如传感器、各种驱动功率接口、数据的串/并接口。所以8位单片机在功能上有了很大的开展。1983年,Intel公司又推出了16位单片机,如MC3-96系列产品。MC3-96系列集成度到达12万的晶体管/片。它的性能相当好。近几年,有些公司又推出了32位单片机,如HITACHI公司的SH7000系列,NEC的MPD77230。这种单片机也称高级信号处理器。它被用作数字滤波、高速数据调制、高速控制、图像处理、图形传送、语音处理等。 1.2 AVR单片机的特点 单片机按CPU的处理能力分类目前有4位、8位、16位、32位,位数越高的单片机在数据处理能力和指令系统方面就越强,AVR、51、PIC都属于8位
11、机。8位单片机也是目前应用最广泛的单片机,在各个领域上都可以看到它的身影。AVR单片机是1997年由ATMEL公司研制开发的一种新型的8位单片机,AVR单片机分抵挡的ATtiny系列、中档的AT90S系列、高档的ATmega系列,我推荐初学者选择学习的芯片型号是ATmega48/88/168或者ATmega16;不推荐使用中档的AT90S系列,因为它们都是比拟早期的产品,现在它们早已经停产了。AVR单片机全部型号(个别老型号除外)都支持ISP在线编程烧写、芯片可以反复擦 3苏州大学本科生毕业设计(论文)写,这样学习AVR就变得非常的方便,设计者可以通过下载线直接在目标电路板上对芯片进行编程、调
12、试,而不需要把芯片放在专用的编程器或者仿真器上烧写与调试。 1.3 AVR 1、在相同的系统时钟下AVR运行速度最快;2、所有AVR单片机的FLASH、EEPROM蓄存器都可以反复烧写、支持在ISP在线编程(烧写),入门费用非常少;3、片 MLF32,所以其价格仅与低档单片机相当,再加上AVR单片机的系统内可编程特性,使得无需购置昂贵的仿真器和编程器也可进行单片机嵌入式系统的设计和开发,同时也为单片机的初学者提供了非常方便和简捷的学习开发环境。与51、PIC单片机的比拟1.4 Atmega8的根本性能 ATmega8是基于增强的AVR RISC结构的低功耗8位CMOS微控制器。由于其先进的指令
13、集以及单时钟周期指令执行时间,ATmega8的数据吞吐率高达1 MIPS/MHz,从而可以缓减系统在功耗和处理速度之间的矛盾。 ATmega8的主要性能如下:4苏州大学本科生毕业设计(论文)1.高性能、低功耗的8 位AVR 微处理器2.先进的RISC 结构 130条指令大多数指令执行时间为单个时钟周期 32个8 位通用工作存放器 全静态工作 工作于16 MHz 时性能高达16MIPS 只需两个时钟周期的硬件乘法器3.非易失性程序和数据存储器 8K字节的系统内可编程Flash擦写寿命: 10,000 次 具有独立锁定位的可选Boot 代码区通过片上Boot 程序实现系统内编程真正的同时读写操作
14、512字节的EEPROM擦写寿命: 100,000 次 1K字节片内SRAM 可以对锁定位进行编程以实现用户程序的加密4.外设特点 两个具有独立预分频器和比拟器功能的8位定时器/ 计数器, 其中之一有比拟功能 一个具有预分频器、比拟功能和捕捉功能的16位定时器/ 计数器 具有独立振荡器的实时计数器RTC 三通道PWM TQFP与MLF 封装的8 路ADC8 路10 位ADC PDIP封装的6 路ADC8 路10 位ADC 面向字节的两线接口 两个可编程的串行USART 可工作于主机/ 从机模式的SPI 串行接口 具有独立片内振荡 片内模拟比拟器5.特殊的处理器特点 上电复位以及可编程的掉电检测
15、5苏州大学本科生毕业设计(论文) 片内经过标定的RC 振荡器 片内/ 片外中断源 5种睡眠模式: 空闲模式、ADC 噪声抑制模式、省电模式、掉电模式、以及Standby 模式6.I/O 和封装 23 个可编程的I/O 口 28引脚PDIP 封装, 32引脚TQFP 封装, 32引脚MLF 封装7.工作电压 2.7 - 5.5V (ATmega8L) 4.5 - 5.5V (ATmega8)8.速度等级 0 - 8 MHz (ATmega8L) 0 - 16 MHz (ATmega8)9.4 Mhz 时功耗, 3V, 25C 工作模式: 3.6 mA 空闲模式: 1.0 mA 掉电模式: 0.5
16、 A 1.5 Atmega8的引脚图分布 图1.1 Atmega8引脚图 6苏州大学本科生毕业设计(论文)第二章 红外遥控根底知识 2.1 什么是红外线 红外线是太阳光线中众多不可见光线中的一种,由英国科学家霍胥尔于1800年发现,又称为红外热辐射,他将太阳光用三棱镜分解开,在各种不同颜色的色带位置上放置了温度计,试图测量各种颜色的光的加热效应。结果发现,位于红光外侧的那支温度计升温最快。因此得到结论:太阳光谱中,红光的外侧必定存在看不见的光线,这就是红外线。也可以当作传输之媒界。 太阳光谱上红外线的波长大于可见光线,波长为0.751000m。红外线可分为三局部,即近红外线,波长为0.751.
17、50m之间;中红外线,波长为1.506.0m之间;远红外线,波长为6.0l000m 之间。2.2 红外遥控的特点 红外线在频谱上居于可见光之外,所以抗干扰性强,具有光波的直线传播特性,不易产生相互间的干扰,是很好的信息传输媒体。信息可以直接对红外光进行调制传输。红外遥控的特点是不影响周边环境的、不干扰其他电器设备。由于其无法穿透墙壁,故不同房间的家用电器可使用通用的遥控器而不会产生相互干扰;电路调试简单,只要按给定电路连接无误,一般不需任何调试即可投入工作;编解码容易,可进行多路遥控。因此,现在红外遥控在加用电器、室内近距离小于10米遥控中得到了广泛的应用。 2.3红外遥控的工作原理 红外遥控
18、系统主要分为发射和接收二局部,如图2.1 所示: 图2.1红外遥控系统 发射局部的主要元件为红外发光二极管。它实际上是一只特殊的发光二极管;由于其 7苏州大学本科生毕业设计(论文)内部材料不同于普通发光二极管,因而在其两端施加一定电压时,它便发出的是红外线而不是可见光。目前大量的使用的红外发光二极管发出的红外线波长为940nm左右,外形与普通发光二极管相同,只是颜色不同。红外发光二极管一般有黑色、深蓝、透明三种颜色。判断红外发光二极管好坏的方法与判断普通二极管一样:用万用表电阻挡量一下红外发光二极管的正、反向电阻即可。红外发光二极管的发光效率要用专门的仪器才能精确测定,而业余条件下只能用拉距法
19、来粗略判定。红外传输一般分为两种:(l)有载波:就是把基带信号就是“0,“1调制到38k的载波上去,由红外发光管发射同发光二极管出去;然后在接收端用红外光敏二极管或三极管或者红外一体化接收头接收。(2)用光敏二极管或三极管接收需要用程序或IC如:cx20216等解调。然后再对基带信号进行处理。这种方法主要用于载波需要有多种频率的场合。光电探测器用来将接收到的红外脉冲信号转换成相应的电信号。接收光电管在没收到红外光信号时,光电管中通过的电流很小,即只有很小的“暗电流, 负载上无电脉冲信号输出;当有红外脉冲信号照射时,光电管的内阻急剧减小,电流增大,并在负载电阻上得到相应的电脉冲信号。由于检测出的
20、信号微弱,需要经高增益电压放大器放大,然后经整流滤波电路后输出正极性脉冲信号,加至触发电路如双稳态触发器,使触发器可靠翻转,并输出标准的控制信号,驱动执行器件。接收局部的红外接收管是一种光敏二极管。在实际应用中要给红外接收二极管加反向偏压,它才能正常工作,亦即红外接收二极管在电路中应用时是反向运用,这样才能获得较高的灵敏度。红外发光二极管一般有圆形和方形两种。由于红外发光二极管的发射功率一般都较小100mW左右,所以红外接收二极管接收到的信号比拟微弱,因此就要增加高增益放大电路。前些年常用pc1373H、CX20216A等红外接收专用放大集成电路。最近几年不管是业余制作还是正式产品,大多都采用
21、成品红外接收头。成品红外接收头的封装大致有两种:一种采用铁皮屏蔽;一种是塑料封装。红外接收头的引脚排列因型号不同而不尽相同,可参考厂家的使用说明。成品红外接收头的优点是不需要复杂的调试和外壳屏蔽,使用起来如同一只三极管,非常方便。但在使用时注意成品红外接收头的载波频率。红外遥控常用的载波频率为38kHz这是由发射端所使用的455kHz晶振来决定的。在发射端要对晶振进行整数分频,分频系数一般取12,所以455kHz12 37.9kHz 38kHz。也有一些遥控系统采用36 kHz、40 kHz、56 kHz等,一般由发射端晶振的振荡频率来决定。接收端的输出状态大致可分为脉冲、电平、自锁、互锁、数
22、据五种形式。“脉冲输出是当按发射端按键时,接收端对应输出端输出一个“有效脉冲,宽度一般在100ms左右。“电平输出是指发射端按下键时,接收端对应输出端输出“有效电平,发射端松开键时, 8苏州大学本科生毕业设计(论文)接收端“有效电平消失。此处的“有效脉冲和“有效电平,可能是高、也可能是低,取决于相应输出脚的静态状况,如静态时为低,那么“高为有效;如静态时为高,那么“低为有效。大多数情况下“高为有效。“自锁输出是指发射端每按一次某一个键,接收端对应输出端改变一次状态,即原来为高电平变为低电平,原来为低电平变为高电平。此种输出适合用作电源开关、静音控制等。有时亦称这种输出形式为“反相。“互锁输出是
23、指多个输出互相去除,在同一时间内只有一个输出有效。电视机的选台就属此种情况,其它如调光、调速、音响的输入选择等。“数据输出是指把一些发射键编上号码,利用接收端的几个输出形成一个二进制数,来代表不同的按键输入。一般情况下,接收端除了几位数据输出外,还应有一位“数据有效输出端,以便后级适时地来取数据。这种输出形式一般用于与单片机或微机接口。 除以上输出形式外,还有“锁存和“暂存两种形式。所谓“锁存输出是指对发射端每次发的信号,接收端对应输出予以“储存,直至收到新的信号为止;“暂存输出与上述介绍的“电平输出类似。 9苏州大学本科生毕业设计(论文)第三章 红外遥控的编码 3.1红外遥控的编码标准 目前
24、市面上出现的遥控编码有很多种,但常用的红外遥控编码主要是NEC标准和PHILIPS标准,其它都是这两类的变种。其它变种的编码类型像TC9028、PT2212、PT2213等芯片的码型与NEC标准类似,只是引导码变为4.5ms高电平+4.5ms低电平,简码4.5ms高电平+4.5ms低电平+0.56ms高电平1.68ms低电平1.56ms高电平组成。像PT2461、LC7461等芯片的码型也是与NEC标准类似,数据帧长度变长了,引导码13位用户码13位用户反码8位键数据码8位键数据反码。简码为9ms高电平4.5ms低电平+0.56ms高电平组成。以NEC编码为例:编码芯片有PT2221/PT22
25、22、HT6221/HT6222等此标准下的发射端所发射的一帧码含有一个引导码、8位用户码、8位用户反码,8位键数据码、8位键数据反码。引导码由一个9ms的高电平和4.5ms的低电平组成。当按下持续时间超过108ms时,那么发送简码简码由9ms高电平和2.25ms的低电平组成来告之接收端是某一个按键一直按着,象电视的音量和频道切换键都有此功能,简码与简码之间相隔是108ms。“1和“0的区分采用脉冲位置调制方式PPM。如下列图所示: 图3.1脉冲位置调制方式 3.2如何对红外遥控进行编码 10苏州大学本科生毕业设计(论文)现有的红外遥控包括两种编码格式:PWM脉冲宽度调制和PPM脉冲位置调制。
26、两种形式编码的代表分别为NEC和PHILIPS的RC-5、RC-6以及将来的RC-7。PWM脉冲宽度调制:以发射红外载波的占空比代表“0和“1。为了节省能量,一般情况下,发射红外载波的时间固定,通过改变不发射载波的时间来改变占空比。例如常用的电视遥控器,使用NEC upd6121,其“0为载波发射0.56ms,不发射0.56ms;其“1为载波发射0.56ms,不发射1.68ms;此外,为了解码的方便,还有引导码,upd6121的引导码为载波发射9ms,不发射4.5ms。upd6121总共的编码长度为108ms。但并不是所有的编码器都是如此,比方TOSHIBA的TC9012,其引导码为载波发射4
27、.5ms,不发射4.5ms,其“0为载波发射0.52ms,不发射0.52ms,其“1为载波发射0.52ms,不发射1.04ms。PPM脉冲位置调制:以发射载波的位置表示“0和“1。从发射载波到不发射载波为“0,从不发射载波到发射载波为“1。其发射载波和不发射载波的时间相同,都为0.68ms,也就是每位的时间是固定的。通过以上对编码的分析,可以得出以某种固定格式的“0和“1去学习红外,是很有可能不成功的。即市面上所宣传的可以学习64位、128位必然是不可靠的。另外,由于空调的状态远多于电视、音像,并且没有一个标准,所以各厂家都按自己的格式去做一个,造成差异更大。比方:美的的遥控器采用PWM编码,
28、码长120ms左右;新科的遥控器也采用PWM编码,码长500ms左右。如此大的差异,如果按“位的概念来讲,应该是多少位呢?64?128? 显然都不可能包含如此长短不一的编码。 3.3红外遥控的编码方式 红外遥控发射的数据“0和“1一般不直接使用上下电平表示,而是通过一定的协议进行编码,这样可以提高抗干扰能力,常用的编码方式有两种:1 双相位编码方式双相位编码技术是把每位数据的传输时间定义为一个时间窗口。把一个时间窗口内的上升沿定义为“1,下降沿定义为“0,每位数据的时间长度是相等的。如图3.2所示:图3.2双相位编码方式 11苏州大学本科生毕业设计(论文)2脉冲位置编码方式数据“0和“1具有相
29、同脉冲宽度,“1和“0的区分取决于脉冲之间的时间,称之为脉冲位置编码方式,每位数据的时间长度是不相等的,如图3.3所示:图3.3脉冲位置编码方式 红外遥控发射数据时采用调制的方式,即把数据和一定频率的载波进行“与操作,这样可以提高发射效率和降低电源功耗。调制载波频率一般在30kHz到60kHz之间,大多数使用的是38kHz,占空比1/3的方波,如图3.4所示,这是由发射端所使用的455kHz晶振决定的。在发射端要对晶振进行整数分频,分频系数一般取12,所以455kHz1237.9 kHz38kHz。下列图为调制载波频率图形图。图3.4调制载波频率图形 调制与编码两局部合在一起就是脉码调制(PC
30、M)。按编码产生方式分为专用芯片编码方式和自定义编码方式两种。(1)专用芯片编码方式:有固定的调制方式和帧结构,可用硬件、也可以用软件来实现解码。(2)自定义编码方式:调制方式和帧结构都由自己定义,采用这种编码方式时一般都需要采用软件解码。有许多专用的遥控发射芯片把按键识别、编码、调制功能集成在一块芯片中,输出发射信号,只要经过驱动即可通过红外二极管把遥控信号发射出去。这种发射方式简单可靠、根本不用调试即可使用,如PT系列的PT2262、Holtek公司的HT6221。大多数发射芯片采用低功耗设计,特别适用于手持式遥控器中。虽12苏州大学本科生毕业设计(论文)然专用芯片使用简便,但对于某些场合
31、却并不适用。最简单的例子就是空调遥控器,用户必须从遥控发射端知道空调当前的设置状态,而遥控器的按键数目又不可能太多,在这种情况下,我们发射出去的温度调节信号就不能只是简单的“加/“减和“开/“关,还应该把设置的温度值一起发射出去。这时就要使用以MCU为核心的遥控发射电路。在以MCU为核心的遥控发射电路中,MCU完成按键的识别、编码工作,调制既可由硬件电路完成也可以由软件模拟完成。因为如前所述,红外遥控的载波频率比拟低,才几十KHz,MCU的速度完全可以满足要求。产生出来的发射信号同样只要经过驱动即可发射出去。3.4红外遥控的解码 红外遥控接收头解调出的编码是串性二进制码,包含着遥控器按键信息
32、。但CPU还无法对它进行读取识别 ,因此需要先对这些串行二进制码进行解码 。当遥控器无键按下时。红外发射二极管不发出信号,遥控接收头输出信号1。有键按下时,O和1编码的高电平经遥控头倒相后会输出信号O,由于与单片机的中断脚相连,将会引起单片机中断(单片机预先设定为下降沿产生中断)。单片机在中断时使用定时器0或定时器1开始计时,到下一个脉冲到来时,即再次产生中断时,先将之前计时值取出后清零,然后再开始计时,通过判断当前中断与上一次中断之间的时间间隔。便可知接收到的是引导码0还是1。如果计时值为9ms。接收到的是引导码,如果计时值等于1.12ms,接收到的是编码O。如果计时值等于2 .25ms接收
33、到的是编码1。在判断时间时,应考虑一定的误差值。因为不同的遥控器由于晶振参数等原因,发射及接收到的时间也会有很小的误差。单片机红外解码软件要保证正确无误地复原遥控码,其主要功能包括以下几局部:(1)过滤附加信息,得到有效信息位。(2)排除系统内外各种干扰信号。(3)丢弃接收到的不完整信息帧。(4)检验接收信息的正确性。根据功能要求,设计分为3局部:校验程序、T0中断效劳程序和INT0中断效劳程序。校验程序主要完成接收信息的校验。将正确的接收代码保存在变量中以备使用。T0中断效劳程序主要完成系统接收到超长信号时定时器T0的复位。INT0中断效劳程序是整个解码软件的核心,它要排除各种干扰信号,正确
34、将遥控器发出的16位编码的每一位的时间长度存入设定的RAM缓冲区,供系统主程序解码复原。 一般的解码方法如下:(1)设外部中断0(或者1)为下降沿中断,定时器0(或者1)为16位计时器初始值均为O。(2)第一次进入遥控中断后,开始计时。(3)从第二次进入遥控中断起,先停止计时。并将计时值保存后,再重新计时。如果计时值等于前导码的时间,设立前导码标志。准备接收下面的一帧遥控数据,如果计时值不等 13苏州大学本科生毕业设计(论文)于前导码的时间,但前面已接收到前导码,那么判断是遥控数据的O还是1。(4)继续接收下面的地址码、数据码、数据反码。(5)当接收到32位数据时,说明一帧数据接收完毕。此时可
35、停止定时器的计时,并判断本次接收是否有效如果两次地址码相同且等于本系统的地址,数据码与数据反码之和等于0FFH,那么接收的本帧数据码有效。否那么丢弃本次接收到的数据。(6)接收完毕,初始化本次接收的数据,准备下一次遥控接收。下列图为解码的中断处理程序流程图。图3.5中断处理程序流程图 由上述可知,这种软件方法电路极为简单,无需外围器件,当发射器的类型不同时,只需对中断处理程序稍加改动即可。 14苏州大学本科生毕业设计(论文)第四章 学习型红外遥控 4.1学习型红外遥控 目前大多数红外遥控采用的方法都是用一体化接收头做为信号的接收,然后把解调出来的信号送入单片机进行学习记录各个上下电平的时间长度
36、,然后存入EEPROM内,学习OK后再发送的是把EEPROM的上下电平的时间数据读取并与38KHz载波进行调制然后发送出去。 例如:由AVR系列单片机ATmega8、一体化红外接收头HS0038、存储器、复原调制与红外发光管驱动电路组成。一体化红外接收头负责红外遥控信号的解调,将调制在38kHz上的红外脉冲信号解调并反向后再输入到ATmega8的INT0引脚,边沿触发方式,并由单片机计数器进行高电平与低电平宽度的测量。这里使用具有I2C总线接口的E2PROM 芯片AT24C32作为存储器,其容量为4KB,用来保存识别出来的遥控信号的高电平与低电平宽度数据。通常遥控信号的二进制脉冲码长为32位,
37、每位由一个高电平与一个低电平组成,应保存的信号宽度数据为64个,再加上引导码2个数据,共计66个数据,每个数据用一个字节来表示,一个遥控信号命令就需要66个字节来保存。考虑到不同的遥控系统有一定的区别,有些遥控信号命令长度较长,所以存储空间应适当留有余量。在实际应用中,可根据红外遥控设备的数量及每个设备的遥控命令数量等具体情况来决定E2PROM 芯片的容量和型号。在设计中采用计数器对信号上下电平计时的方法来采集数据并保存。当系统识别到起始码的低电平时,系统启动设计的采集信号对低电平进行采集,同时计数器开始计数,当起始码的低电平结束时,并保存计数器此时的值,记录下起始码的低电平信号脉冲宽度值。然
38、后依次保存采集到的编码信号脉冲宽度值,如果采集到编码信号位数大于设定值M(程序中设定值),就认为编码采集已经结束,学习子程序结束。利用上述的方式,结合红外线与单片机便可以制作出带有学习功能的红外遥控器。学习型红外遥控器已经进入了我们的生活中,如:数字电视遥控器,汽车红外报警遥控器等。 我们还可以利用学习型红外遥控器实现电灯的开关和各种家用电器的运行等。 下列图为一个简单的红外收发模拟电路图: 15苏州大学本科生毕业设计(论文) 图4.1模拟实验电路图 当按下接收开关时D2灯亮,系统进入红外接收学习阶段,接收进入的红外线通过单片机解码,再通过三极管放大,最后显示在液晶屏幕上。按下另一开关,D1灯
39、亮,系统进入红外发射阶段。 以下为学习型红外遥控电路的局部程序代码。void main(void)INT8U ucLen, j;INT8U s; init_devices();IniKeyBoard(); ReadConfig(); #asm("sei") 16苏州大学本科生毕业设计(论文)TIMSK |= 0x01; /timer interrupt sources TIMSK |= 0x10;TIMSK |= 0xC0; TCCR0 = 0x05; /start timer/TCCR1B = 0x03; /start Timer /*g_ucIR_PulseCode0
40、= 0x68;g_ucIR_PulseCode1 = 20;for(j = 0; j < 120; j+ )g_ucIR_PulseCodej + 8 = 50; Parse_IR_PressKeyCount = 121;Send_Parse_IR_Data(0);/*/ while (1)#asm("wdr") switch(g_ucSysState)case 0: / COMif(key_fun) HandlerKey();break; case 1:case 2: / Parse IR and save if(Parse_IR_Valid)17 processo
41、r_revbuf();苏州大学本科生毕业设计(论文)ucLen = Parse_IR_PressKeyCount - 1;g_ucIR_PulseCode0 = 0x68;g_ucIR_PulseCode1 = ucLen;for(j = 0;j < ucLen;j+)g_ucIR_PulseCodej + 8 = Parse_IR_SeqKeyBufj; PORT_LED = 1;Flash_MSec500 = 0;g_ucLedFlashCount = 0; /flash countg_ucLedState = 1; / flash led s = SREG;#asm("c
42、li")key_fun = 0;g_ucSysState = 0; UCSRB = 0xD8;GICR &= 0x40;GIFR = 0x40;SREG = s; / Send_Parse_IR_Data(0);break; switch(g_ucLedState)18苏州大学本科生毕业设计(论文)case 0: /off ledPORT_LED = 1;break; case 1: /flash ledif(Flash_MSec500 >= 20)Flash_MSec500 = 0; PORT_LED = !PORT_LED;g_ucLedFlashCount+;if
43、(g_ucLedFlashCount >= 6) g_ucLedState = 0; break; case 2: /delay 5s offif(ucS >= 5)g_ucLedState = 0; s = SREG;#asm("cli")key_fun = 0;g_ucSysState = 0; UCSRB = 0xD8;GICR &= 0x40;GIFR = 0x40;SREG = s;break; 19苏州大学本科生毕业设计(论文)case 3: /delay 0.2s off if(Flash_MSec500 >= 20) g_ucLed
44、State = 0; break; 20苏州大学本科生毕业设计(论文)第五章 USB红外遥控 5.1 简述: 随着科技的进步,用到的红外遥控器件越来越多,并且这些器件也大都需要遥控器来实现对其功能的操作。然而,对于现在社会而言,在很多地方如果还是单纯使用遥控器来控制电子设备的话,那将会变得十分麻烦,不能及时的解决问题。因此,本章将会利用芯片pl2303与单片机的连接来实现通过PC机的USB接口红外远程遥控电子设备,从而使操作变得简便而高效。 5.2 PL2303 USB转RS232 控制器: PL2303 用于实现USB 和标准RS-232串行端口之间的转换,两个独立的大型缓冲用于两种总线的连
45、接.大型数据缓冲器用于USB 的批量数据传输. 自动握手模式可用于串行通讯, 因而可以到达远大于标准UART 控制器的波特率.PL2303 支持USB电源管理和远程唤醒协议.当主机挂起时消耗极小的电能.所有功能集 成在SOIC-28 封装内.芯片亦可以安装在电缆线中,用户只要简单地把联在电脑主机或USB HUB 上,就可以实现与RS-232 器件的通信.图5.1 PL2303接口图 21苏州大学本科生毕业设计(论文)5.3 PL2303-UART转USB桥接器 1.UART (Universal Asynchronous Receiver/Transmitter,通用异步收发器)是用于控制计算
46、机与串行设备的芯片。有一点要注意的是,它提供了RS-232C数据终端设备接口,这样计算机就可以和调制解调器或其它使用RS-232C接口的串行设备通信了。作为接口的一局部,UART还提供以下功能:将由计算机内部传送过来的并行数据转换为输出的串行数据流。将计算机外部来的串行数据转换为字节,供计算机内部使用并行数据的器件使用。在输出的串行数据流中参加奇偶校验位,并对从外部接收的数据流进行奇偶校验。在输出数据流中参加启停标记,并从接收数据流中删除启停标记。处理由键盘或鼠标发出的中断信号键盘和鼠标也是串行设备。可以处理计算机与外部串行设备的同步管理问题。有一些比拟高档的UART还提供输入输出数据的缓冲区
47、,现在比拟新的UART是16550,它可以在计算机需要处理数据前在其缓冲区内存储16字节数据,而通常的UART是8250。现在如果购置一个内置的调制解调器,此调制解调器内部通常就会有16550 UART。2.PL2303是Prolific公司的推出的RS232转USB或者USB转RS23的接口转换芯片,在数据采集系统一方完全是对串口RS232的操作,而在数据处理系统一方完全是对虚拟串口的操作,数据却是按照USB协议传输的,双方的程序都可以不做大的修改。3.pin24-VDD_PLL,pin25-GND_PLL:PLL是一种电路,可将振荡器生成的输出信号的频率和和相位与基准信号或输入信号同步,在
48、同步或称为锁定的状态下,振荡器的输出信号和基准信号之间的相位误差为零,或保持不变,如果误差变大,那么控制机制将作用于振荡器,是相位误差再次减到最小值,实际上在这种反应控制系统中,输出信号的相位被锁定成基准信号的相位,锁相环的名称就是由此而来。4.关于异/同步通信模式:同步通信要求接收端时钟频率和发送端时钟频率一致,发送端发送连续的比特流(bit- stream);异步通信时不要求接收端时钟和发送端时钟同步,发送端发送完一个字节(byte)后,可经过任意长的时间间隔再发送下一个字节,异步通信的通信开销较大,但接收端可使用廉价的、具有一般精度的时钟来进行数据通信。5.pl2303支持默认ROM和外部EEPROM两种不同的存储方法,存储包括PID(Product ID)、VID(Vender ID)和芯片收发器控制和状态等信息,如果不希望采用默认的设置那么需要外括一个EEPROM(eg.AT24C02)。6.PL2303需要一个12MHz的外部晶体为自己提供时钟,外部并联的匹配电容需根据晶体厂商的负载电容选取。5V的锁相环电源电压与地之间最好接上一个0.1uF的去耦电容,同理PL2303附近的其余电源引脚也需要单
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年软件开发项目经理劳动合同3篇
- 2025年度城市广场草坪修剪与夜间经济合同3篇
- 2024甲乙双方关于区块链技术研发与应用的合同
- 2024年财产分割协议:无共同债权双方自愿离婚协商书3篇
- 2024年环保新材料研发与应用合作协议
- 2024年车间租赁合同:工业用途
- 2025宾馆股权转让与旅游产品开发协议3篇
- 2024年砌墙工程质量检测合同
- 2024年食堂食品安全追溯系统委托运营管理协议3篇
- 2024长租公寓协议标准格式版A版
- 【7地XJ期末】安徽省宣城市宁国市2023-2024学年七年级上学期期末考试地理试题(含解析)
- 设备操作、保养和维修规定(4篇)
- 2025年度日历台历黄历模板
- 医疗行业十四五规划
- 有毒有害气体岗位操作规程(3篇)
- 施工临建布置方案
- 2021-2022学年四川省南充市九年级(上)期末数学试卷
- 15万吨双加压法稀硝酸工艺安全操作规程
- 中小学膳食经费管理的目标与原则
- 广东省深圳市2023-2024学年高一上学期期末考试物理试题(含答案)3
- 《华润集团全面预算管理案例研究》
评论
0/150
提交评论