红外电路收发设计(1)_第1页
红外电路收发设计(1)_第2页
红外电路收发设计(1)_第3页
红外电路收发设计(1)_第4页
红外电路收发设计(1)_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

1、测控技术工程技能训练设计报告课题: 红外电路收发设计 班级 测控1122 学号 1121203236 学生姓名 段亚喆 指导教师 李华 李洪海 淮阴工学院自动化学院2015-12红外电路收发设计目  录 前  言 .3 第1章 概 述 . 4第1.1节 基于单片机的红外遥控系统概述 . 4第1.2节 设计方案思路 . 5第1.3节 研发方向和技术关键 . 5 第1.4节 主要技术指标 .

2、 6 第2章 总体设计 . 6 第2.1节 红外遥控发射部分 . 7 第2.2节 红外遥控接收部分 . 8 第2.3节 红外编码标准 . 9 第3章 硬件设计 .11 第3.1节 主控芯片AT89C52.11 第3.2 功能概述. 12第3.3节 复位电路. 14 第3.4节 红外发射接收电路 .1

3、6 第4 章 软件设计 . 17 第4.1节 总体方案. 17第五章 仿真与调试. 18结  论 . 19附录 程序代码. 20 前  言 近年来随着计算机在社会各领域的渗透,单片机的应用正在不断地走向深入,同时也带动传统的控制、检测等工作日益更新。传统的遥控器大多采用无线电遥控技术,随着科技的进步,红外线遥控技术的进一步成熟,红外遥控也逐步成为了一种被广泛应用的通信和遥控手段。为了方便实用,传统的家庭电器

4、逐渐采用红外线遥控。工业设备中,在高压、辐射、有毒气体、粉尘等有害环境下,采用红外线遥控不仅完全可靠而且能有效地隔离电气干扰。 红外线的光谱位于红色光之外, 波长是0.761.5m,比红光的波长还长。红外遥控是利用红外线进行传递信息的一种控制方式,红外遥控具有抗干扰,电路简单,容易编码和解码,功耗小,成本低的优点。红外遥控几乎适用所有家电的控制。红外遥控是以调制的方式发射数据,就是把数据和一定频率的载波进行“与”操作,这样既可以提高发射效率又可以降低电源功耗。目前有很多种芯片可以实现红外发射,可以根据选择发出不同种类的编码。由于发射系统一般用电池供电,这就要求芯片的功耗要很

5、低,芯片大多都设计成可以处于休眠状态,当有按键按下时才工作,这样可以降低功耗芯片所用的晶振应该有足够的耐物理撞击能力。红外接收头的种类很多,引脚定义也不相同,一般都有三个引脚,包括供电脚,接地和信号输出脚。根据发射端调制载波的不同应选用相应解调频率的接收头。红外接收头内部放大器的增益很大,很容易引起干扰,因此在接收头的供电脚上须加上滤波电容,一般在22uf以上。 红外遥控的特点是不影响周边环境、不干扰其它电器设备。由于其无法穿透墙壁,故不同房间的家用电器可使用通用的遥控器而不会产生相互干扰;电路调试简单,只要按给定电路连接无误,一般不需任何调试即可投入工作;编解码容易,可进行多路遥控

6、。红外遥控虽然被广泛应用,但各产商的遥控器不能相互兼容。当今市场上的红外线遥控装置一般采用专用的遥控编码及解码集成电路,但编程灵活性较低,且产品多相互绑定,不能复用,故应用范围有限。而本文采用单片机进行遥控系统的应用设计,遥控装置将同时具有编程灵活、控制范围广、体积小、功耗低、功能强、成本低、可靠性高等特点,因此采用单片机的红外遥控技术具有广阔的发展前景。 红外线是一种光线,具有普通光的性质,可以以光速直线传播,强度可调,可以通过光学透镜聚焦,可以被不透明物体遮挡等等。特别制造的半导体发光二极管,可以发出特定波长(通常是近红外)的红外线,通过控制二极管的电流可以很方便地改变红外线的强

7、度,达到调制的目的,因此,在现代电子工程应用中,红外线常常被用做近距离视线范围内的通讯载波,最典型的应用就是家电遥控器。使用红外线做信号载波的优点很多:成本低、传播范围和方向可以控制、不产生电磁辐射干扰,也不受干扰等等。因此被广泛地应用在各种技术领域中。第1章 概 述第1.1节 基于单片机的红外遥控系统概述当今社会科学技术的发展与日俱增,人们生活水平也是日益提高,为了减少人们的工作量,所以对各种家用电器、电子器件的非人工控制的要求越来越高,针对这种情况,设计出一种集成度比较高的控制体系是必然的。现代科技的飞速发展在许多危险、不可近场合也对远程控制提出了越来越高的要求。 单片

8、机是指一个集成在一块芯片上的完整计算机系统。尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。 单片机的集成度很高,它体积小、功耗低、控制功能强、扩展灵活、微型化、使用方便等突出特点,尤其耗电少,又可使供电电源体积小、质量轻。所以特别适用于“电脑型产品”,它的应用已深入到工业、农业、国防、科研、教育以及日常生活用品(家电、玩具)等各种领域,几乎很难找到哪个领域

9、没有单片机的踪迹。单片机特别适合把它做到产品的内部,取代部分老式机械、电子零件或元器件。可使产品缩小体积,增强功能,实现不同程度的智能化。 红外线是一种光线,具有普通光的性质,可以以光速直线传播,强度可调,可以通过光学透镜聚焦,可以被不透明物体遮挡等等。特别制造的半导体发光二极管,可以发出特定波长(通常是近红外)的红外线,通过控制二极管的电流可以很方便的改变红外线的强度,以达到调制的目的,因此,在现代电子工程应用中,红外线常常被用做近距离视线范围内的通讯载波。 使用红外线做信号载波的优点很多:成本低、传播范围和方向可以控制、不产生电磁辐射干扰,也不受干扰等等。因此被广泛地应

10、用在各种技术领域中。由于红外线为不可见光,因此对环境影响很小,再由红外光波动波长远小于无线电波的波长,所以红外线遥控不会影响其他家用电器,也不会影响临近的无线电设备。最典型的应用就是家电遥控器。红外线遥控不具有像无线电遥控那样穿过障碍物去控制被控对象的能力,所以,在设计家用电器的红外线遥控器时,不必要像无线电遥控器那样,每套(发射器和接收器)要有不同的遥控频率或编码(否则,就会隔墙控制或干扰邻居的家用电器)。同类产品的红外线遥控器,也可以有相同的遥控频率或编码,而不会出现遥控信号“串门”的情况。这对于大批量生产以及在家用电器上普及红外线遥控提供了极大的方面。 本设计主要研究并设计一个

11、基于单片机的红外发射及接收系统,实现对八路开关的隔离控制并对工作状态设备计数。控制系统主要是由 AT89C52单片机、电源电路、红外发射电路、红外接收电路、LED 显示电路等部分组成,应用红外遥控系统由发射和接收两大部分组成,应用编/解码专业集成电路芯片来进行控制操作。红外接收头的种类很多,引脚定义也不相同,一般都有三个引脚,包括供电脚,接地和信号输出脚。根据发射端调制载波的不同应选用相应解调频率的接收头。单片机编码发射遥控信号经红外接收处理传送给单片机,单片机根据不同的信息码控制 LED 发光二极管各个状态,并完成相应的状态指示(如图 1.1

12、)。第1.2节 设计方案思路本设计主控芯片采用目前比较通用的AT89C52单片机。此类单片机的运算能力强,软件编程灵活,自由度大,市场上比较多见,价格便宜且技术比较成熟容易实现。 红外传输利用载波对信号进行调制从而减少信号传输过程中的光波干扰,提高数据传输效率。由单片机AT89C52定时器 T0 产生周期性的 26.3 的矩形脉冲,即每隔13us,定时器 T0 产生中断输出一个相反的信号使输出端产生周期的 38KHz 脉冲信号。再由单片机将键盘信息及系统识别码等数据调制在红外载波上经红外发射头发

13、射出去。接收方由红外一体化接收头实现对接收信号的放大解调并还原为数据流,经由单片机解码后对相关IO口进行操作。第1.3节 研发方向和技术关键随着电子技术的发展,当前数字系统的设计正朝着速度快、容量大、体积重量轻的方向发展。在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。 (1)合理设计硬件电路,使各模块功能协调; (2)红外发射信号的脉冲波形; (3)红外发射信号的编解码; (4)单片机对IO口的操作; 第1.4节&

14、#160;主要技术指标(1)遥控距离4到6m; (2)工作频率为 38KHz,即红外发射和接收的载频为 38KHz; (3)接收端可显示受控状态。第2章 总体设计红外遥控系统是集中集光、电于一体的系统。其工作原理是用户按键信号经单片机编码处理后转化为脉冲信号,经由红外发射头发送出去;接收端由红外一体化接收头实现对接收信号的放大解调并还原为数据流,经由单片机解码后对相关IO口进行操作,从而完成整个遥控操作。 整个系统主要是由电源电路、红外发射电路、红外接收电路、LED显示电路等部分组成。系统硬件由以下几部分组成:红外数据发射电路,键盘采用普通按键

15、键盘,按键统一接在单片机P1口。整体设计思路为:根据扫描到不同的按键值对发射脉冲编码赋值后 AT89C52将按照数据处理要求从 P3.4 输出控制脉冲与 T0 产生的 8KHz 的载波(周期是 26us)进行调制,经 PNP三极管对信号放大驱动红外发光管将控制信号发送出去。红外数据接收则是采用 IRLINK 一体化红外接收头,内部集成红外接收、数据采集、解码的功能,只要在接收端 INT0 检测头信号低电平的到来,就可完成对整个串行的信号进行分析得出当前控制指令的功能

16、。然后根据所得的指令去操作相应的用电器件工作,如图 2.1所示。第2.1节 红外遥控发射部分红外遥控发射部分系统框图见图2.2。发送端采用单片机的定时中断功能,由定时器 T0 产生周期为 26us 的矩形脉冲,即每隔13us定时器 T0 产生中断输出一个相反的信号使单片机输出端产生周期为38KHz的脉冲信号。脉冲图如图 4所示。系统通过直连单片机的按键获取用户遥控信息,经按键扫描确认,然后交由单片机对将要发射数据进行整理,将待发送的二进制信号编码调制在38kHz脉冲基波上,生成脉冲发射信号,最后通过红外发

17、射管发射红外信号。红外发射电路的作用是当接收到外界信号时,驱动红外发光二极管发出调制红外光。 发射系统一般要求芯片的功耗要很低,芯片大多都设计成可以处于休眠状态,当有按键按下时才工作,这样可以降低功耗。红外线通过红外发光二极管(LED)发射出去,红外发光二极管内部材料和普通发光二极管不同,在其两端施加一定电压时,它发出的是红外线而不是可见光。 单片机红外遥控发射器主要有单片机、行列式键盘、低功耗空闲方式控制电路、红外管发射电路以及单片机的一些电源、复位、震荡子电路组成。 单片机不工作时一直处于低功耗状态,采用了空闲节电工作方式。当遥控器的某一按键被按下以后,外部中

18、断1产生中断,唤醒单片机进入工作状态,查询键盘按下的是哪一个按键,当确认按键后,控制软件启动定时器T0、T1,T1作为发射时间控制器,T0作为红外线发射频率控制器,T0定时溢出时中断程序使红外管接口电平反转一次,写入定时器的初值不同,在输出端口就得到不同的发射频率。T1定时溢出时中断程序关闭关闭T0定时器,停止红外线发射。第2.2节 红外遥控接收部分红外遥控接收电路框图见图 2.4。红外接收端普遍采用价格便宜,性能可靠的一体化红外接收头(SM0038 , 它接收红外信号频率为38KHz ,周期约26s)。它能同时对信号进行放大、检波、整形,得到

19、TTL 电平的编码信号。红外接收头收到信号后单片机立即产生中断,开始接收红外信号。接收到的信号经单片机解码得到用户遥控信息并转至IO口执行,同时单片机还完成对处于工作状态的设备进行计数并显示。红外接收电路的作用是接收红外发光二极管发出的调制红外光,并通过运算放大器放大后输入到音频锁相环译码器集成电路进行选频。 单片机红外遥控接收器主要有单片机、红外遥控接收电路、状态指示电路、控制电路以及单片机的一些外围电路组成。 利用单片机中的T0作为红外脉冲计数器,T1作为计数时间控制器。当电路中红外接收管接收到第一个红外脉冲时,外部中断1被触发,启动计数器T0和定时器T1。定

20、时溢出,中断程序关闭计数器T0,读入计数值并进行判断,确定操作对象(遥控按键)对其进行反转操作,控制电路对所控制的负载进行开或关。还可对接收电路实行上锁功能,对控制电路上锁后,遥控器不能对控制电路实施遥控功能。 红外线接收头的种类很多,引脚定义也不相同,一般都有三个引脚,包括供电脚,接地和信号输出脚。根据发射端调制载波的不同应选用相应解调频率的接收头。 红外线接收头内部放大器的增益很大,很容易引起干扰,因此在接收头的供电脚上须加上滤波电容,一般在22uf以上。有的厂家建议在供电脚和电源之间接入330欧电阻,进一步降低电源干扰。接收电路可以使用一种集红外线接收和放大于一体的一

21、体化红外线接收器,不需要任何外接元件,就能完成从红外线接收到输出与TTL电平信号兼容的所有工作,而体积和普通的塑封三极管大小一样,它适合于各种红外线遥控和红外线数据传输。第2.3节  红外编码标准2.3.1 二进制信号的调制二进制信号的调制仍由发送单片机来完成,如图2.7所示,A是二进制信号的编码波形,B 是频率为38KHz (周期为26s) 的连续脉冲,C 是经调制后的间断脉冲串(相当于C = A ×B) ,用于红外发射二极管发送的波形。图2.7 中,待发送的二进制数据为1

22、01。图中脉冲个数仅为示意非真实情况。2.3.2 二进制信号的解调二进制信号的解调由一体化红外接收头SM0038来完成,它把接收到的红外信号(图2.8 中波形D ,也是图9 中波形C) 经内部处理并解调复原,在输出脚输出图2.8 中波形E (正好是对图2.7 中波形A 的取反) ,SM0038 的解调可理解为:在输入有脉冲串时,输出端输出低电平,否则输出高电平。可直接与单片机串行输入口及外中断相联,以实现随时接收遥控信号并产生中断,然后由单片机对编码还原。2.3.3 二进制信

23、号的解码 解码是指用特定方法把数码还原成它所代表的内容或将电脉冲信号、光信号、无线电波等转换成它所代表的信息、数据等的过程。解码在无线电技术和通讯等方面广泛应用。 进而二进制信号的解码由接收单片机来完成,它把红外接收头送来的二进制编码波形通过解码,还原出发送端发送的数据。如图2.8 ,把波形E 解码还原成原始二进制数据信息101。第3章 硬件设计第3.1节 主控芯片AT89C52  AT89C52是美国ATMEL公司生产的低功耗,高性能CMOS8位单片机,片内含4k bytes的可系统编程的Flash只读程序存储器

24、,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准8051指令系统及引脚。它集Flash程序存储器既可在线编程(ISP)也可用传统方法进行编程及通用8位微处理器于单片芯片中。 3.1.1 主要特性 AT89C52 CPU与MCS-51 兼容  图3.1  AT89C524K字节可编程FLASH存储器(寿命:1000写/擦循环) 4.05.5V的工作电压范围 全静态工作:0Hz-33MHz 三级程序存储器保密锁定  128*8位内部RAM 32条可编程I

25、/O线                                  6个中断源 全双工串行UART通道 可编程串行通道 低功耗的闲置和掉电模式 片内振荡器和时钟电路低功耗空闲和掉电模式  

26、60;             灵活的在系统编程3.2 功能概述AT89C52 提供以下标准功能:4k 字节Flash 闪速存储器,128字节内部RAM,32个IO 口线,看门狗(WDT),两个数据指针,两个16 位定时计数器,一个5 向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C52可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的

27、工作,但允许RAM,定时计数器,串行通信口及中断系统继续工作。掉电方式保存RAM 中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。 AT89C52其他主要功能列举如下: (1)为一般控制应用的 8 位单芯片 (2)晶片内部具时钟振荡器(传统最高工作频率可至 12MHz) (3)内部程式存储器(ROM)为 4KB(4)内部数据存储器(RAM)为 128B (5)外部程序存储器可扩充至 64KB (6)外部数据存储器可扩充至 64KB

28、60;(7)32 条双向输入输出线,且每条均可以单独做 I/O 的控制 (8)5 个中断向量源 (9)2 组独立的 16 位定时器 (10)1 个全多工串行通信端口 (11)8751 及 8752 单芯片具有数据保密的功能 (12)单芯片提供位逻辑运算指令 3.1.3 引脚功能说明Vcc:电源电压(5V)。 GND:电源接地。 P0 :P0口是一组8位漏极开路型双向I0口,也即地址数据总

29、线复用口。作为输出口用时,每位能驱动8个TTL逻辑门电路,对端口写“l”可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在F1ash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。 P1 :Pl 是一个带内部上拉电阻的8位双向IO口,Pl的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“l”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)

30、。Flash编程和程序校验期间,Pl接收低8位地址。 P2 :P2 是一个带有内部上拉电阻的8 位双向IO 口,P2 的输出缓冲级可驱动(吸收或输出电流)4 个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。 在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVXDPTR指令)时,P2口送出高8位地址数据。在访问8 位地址的外部数据存储器(如执行MOVXRi 

31、指令)时,P2 口线上的内容(也即特殊功能寄存器(SFR)区中P2寄存器的内容),在整个访问期间不改变。 Flash编程或校验时,P2亦接收高位地址和其它控制信号。 P3 :P3 口是一组带有内部上拉电阻的8 位双向I0 口。P3 口输出缓冲级可驱动(吸收或输出电流)4 个TTL逻辑门电路。对P3口写入“l”时,它们被内部上拉电阻拉高并可作为输入端口。作输入端时,被外部拉低的P3口将用上拉电阻输出电流(IIL)。P3口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。P3口除了作为一般的I0口线

32、外,更重要的用途是它的第二功能,如下表3.1所示:表3.1  P3口的第二功能 端口引脚 第二功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 INT0(外部中断0)P3.3 INT1(外部中断1)P3.4 T0(定时/计数器0外部输入)P3.5 T1(定时/计数器1外部输入) P3.6 WR(外部数据存储器写选通) P3.7 RD(外部数据存储器读选通) RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单

33、片机复位。WDT 溢出将使该引脚输出高电平,设置SFR AUXR的DISRT0 位(地址8EH)可打开或关闭该功能。DISRT0位缺省为RESET输出高电平打开状态。 ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。即使不访问外部存储器,ALE 仍以时钟振荡频率的16 输出固定的正脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。 对F1ash存储器编程期间,该引脚还用于输入编程脉冲(PROG)。 如

34、有必要,可通过对特殊功能寄存器(SFR)区中的8EH 单元的D0 位置位,可禁止ALE 操作。该位置位后,只有一条M0VX和M0VC指令ALE才会被激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE无效。 PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89S51 由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。当访问外部数据存储器,没有两次有效的PSEN信号。 EA/VPP:外部访问允许。欲使CPU仅访问外部程序存储器(地址为0000HFFFFH),EA端必

35、须保持低电平(接地)。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平(接Vcc端),CPU则执行内部程序存储器中的指令。 F1ash存储器编程时,该引脚加上+12V的编程电压Vpp。 XTALl:振荡器反相放大器及内部时钟发生器的输入端。 XTAL2:振荡器反相放大器的输出端。3.3 复位电路单片机复位电路包括片内、片外两部分,片外复位电路通过引脚加到内部复位电路上,内部复位电路在每个机器周期S5P2对片外信号采样一次,当RST引脚上出现连续两个机器周期的高电平时,单片机就完成一次复位。外部复位电路就是为内部复位电路提供

36、两个机器周期以上的高电平而设计的,AT89C2051通常采用上电自动复位和按键手动复位两种方式。 上电复位电路在通电瞬间,在RC电路充电过程中,RST端出现正脉冲,从而使单片机复位。 复位电路的基本功能是系统上电时提供复位信号直至系统电源稳定后撤销复位信号,为可靠起见电源稳定后还要经一定的延时才撤销复位信号以防电源开关或电源插头分-合过程中引起的抖动而影响复位。复位是单片机初始化操作,其主要功能是把PC初始化为0000H,使单片机从0000H单元执行程序。除了进入系统的正常初始化之外,当程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也需要按复位键重新启动。

37、0; 复位操作有上电自动复位和按键手动复位两种方式。本设计采用了按键手动复位方式。图3.4 所示的RC 复位电路可以实现上述基本功能。图3.3按钮开关为手动复位开关, C3 可避免高频谐波对电路的干扰。第3.2节 显示模块在模拟电子和数字电子中,经常用到的显示方法有LED数码管显示和LCD显示。 本设计中采用的是LED-MPX显示。第3.3节 键盘模块在键盘中按键数量较多时,为了减少I/O口的占用,通常将按键排列成矩阵形式。在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。这样,一个端

38、口(如P1口)就可以构成4*4=16个按键,比之直接将端口线用于键盘多出了一倍,而且线数越多,区别越明显,比如再多加一条线就可以构成20键的键盘,而直接用端口线则只能多出一键(9键)。由此可见,在需要的键数比较多时,采用矩阵法来做键盘是合理的。  行扫描法又称为逐行(或列)扫描查询法,是一种最常用的按键识别方法,如图3.6所示键盘,介绍过程如下。  (1)判断键盘中有无键按下 将全部行线k1-k4置低电平,然后检测列线的状态。只要有一列的电平为低,则表示键盘中有键被按下,而且闭合的键位于低电平线与4根行线相交叉的4个按键之中。若所有列线均为高电

39、平,则键盘中无键按下。  (2)判断闭合键所在的位置 在确认有键按下后,即可进入确定具体闭合键的过程。其方法是:依次将行线置为低电平,即在置某根行线为低电平时,其它线为高电平。在确定某根行线位置为低电平后,再逐行检测各列线的电平状态。若某列为低,则该列线与置为低电平的行线交叉处的按键就是闭合的按键。图3.6 键盘电路第3.4节 红外发射和接收电路图3.7为仿真发射接收电路,由于proteus仿真无线传输,故利用中断在单片机产生频率为38KHZ的载波信号,把发射部分和接收部分用红外接收发射管连接,再在单片机内部进行解调。图3.7 红外发射接收电路第4

40、60;章 软件设计第4.1节 总体方案基于单片机的红外遥控电路系统设计中编码解码部分全部由单片机实现。即本设计为软件编解码。因此软件设计也是设计的一大重点。编码标准章节 3.3 红外编码标准已详细介绍。这里将具体讲述编解码的软件实现过程。 MCS-51单片机通常使用汇编语言和C语言来进行软件开发。汇编语言是一种简单易掌握、效率较高的开发语言。其程序结构简单,执行速度快,实时性好,程序易优化,编译后占用存储空间校少,是简单的单片机应用系统开发中最常用的程序设计语言。本设计采用汇编语言进行编程,编译器采用Keil Vision 

41、V4.00a,该编译器是51系列单片机程序设计的常用工具,既可用汇编,也支持C语言编译。同时具有完善的调试功能。图 4.1为红外发送子程序的流程图。它每被调用一次便将累加器中的八位二进制数据发送出去。程序从高位开始依次发送累加器中的二进制数据。为0则先发送1.68ms的低电平,为1则先发送0.56ms的低电平。然后打开中断,利用八位自动重装初值定时器使T0口为产生周期26ms的脉冲,脉冲持续时间为0.56ms。脉冲发送完毕,关中断。直至八位数据发送完,本次发射子程序退出。第五章 调试与仿真系统的软件仿真主要采用Proteus软件。 Proteus软件是英国公司出版

42、的EDA工具软件。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP

43、430等。在编译方面,它也支持IAR、Keil和MPLAB等多种编译器。 发射模块的硬件电路在Proteus中按电路图完成搭建,并在单片机的中断口T1口接上软件提供的虚拟示波器,以显示其输出波形。仿真的主要部分放在了红外发射功能,即通过遥控发射电路与遥控发射程序的联合调试验证模块是否能按要求输出波形,通过此仿真模拟了通过红外电路遥控家用电器的部分模块。图5.1 仿真效果图结 论 通过这次设计,在老师和同学的耐心辅导与帮助下,我得到了很好地锻炼,实现了我的设计内容。 本设计在分析了当前红外遥控的现状和前景的基础上,在Proteus平台上设计一种红外遥控控制LED的方

44、案,利用单片机的定时器资源模拟红外编解码的格式,并通过键盘输入和控制电路实现了,通过键盘输入控制LED的编号,通过红外发射发送,红外一体化接收头接收到后解码并点亮相应的LED,经过仿真达到了设计的要求。由于时间、水平和经验有限,在信号的发射、编码、抗干扰及功耗控制等方面仍有不足之处,有改进的余地。例如设计中可通过增加红外线发射功率进而增加遥控距离,改进信号编码方式以提高数据的传输速度,使用小型单片机以降低功耗等。另外在系统的调试方面,由于时间和设备的原因,只进行了短距离的调试,更多参数有待进一步的调试。附录:代码/*作品:红外线发射 单片机:STC89C52RC 晶振:12M编译环境:Keil

45、 uVision4 V9.00*/发射引脚(接PNP三极管b极)/PNP三极管e极接2电阻,c极接红外发射管 #include <REG51.h>#include <intrins.h>#define uchar unsigned char #define uint unsigned int #define SBM 0x80 /识别码#define m9 (65536-9000) /约9mS#define m4_5 (65536-4500) /约4.5mS#define m1_6 (65536-1630) /约1.65mS#define m_65 (65536-580)

46、 /约0.65mS#define m_56 (65536-560) /约0.56mS#define m40 (65536-40000) /约40mS#define m56 (65536-56000) /56mS#define m2_25 (65536-2250) /约2.25mSsbit IR = P36; /定义发射引脚(接PNP三极管基极)sbit LED = P37; /发射指示灯uchar KEY(void);void SanZhuan(void);void ZZ(uchar x);void Z0(uchar temp);void TT0(bit BT,uint x);void YS(

47、uchar time);/*函数功能:主函数*/void main(void) TMOD = 0x01; /T0 16位工作方式 IR=1; /发射端口常态为高电平 while(1) SanZhuan(); /*函数功能: 4×4矩阵键盘 键值 P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 13 14 15 16 9 10 11 12 5 6 7 8 1 2 3 4 */uchar KEY(void) uchar H,L; /行值,列值 H=0; L=0; P1 = 0xf0; /将键盘端口行值设为1,列值设为0 if(P1!= 0xf0) /检测是

48、否有按键按下,如果有则hangval必不为0x0f YS(10); /按键去抖动,延时10毫秒 if(P1!=0xf0) /确实有按键按下 H = P1&0xf0; /按键后得到按键的行标志位,将行标志位赋值给hangval P1 = 0x0f; /翻转键盘接口输出 L = P1&0x0f; /得到列标志位 return (H+L); return 0;/*函数功能:散转程序入口参数:v/ 13 14 15 16/ 9 10 11 12/ 5 6 7 8/ 1 2 3 4*/void SanZhuan(void) uchar v; v = KEY(); switch(v) ca

49、se 0x77:ZZ(0x01);v=0;break;/" " case 0xb7:ZZ(0x02);v=0;break;/" " case 0xd7:ZZ(0x03);v=0;break;/" " case 0xe7:ZZ(0x04);v=0;break;/" " case 0x7b:ZZ(0x05);v=0;break;/" " case 0xbb:ZZ(0x06);v=0;break;/" " case 0xdb:ZZ(0x07);v=0;break;/" &

50、quot; case 0xeb:ZZ(0x08);v=0;break;/" " case 0x7d:ZZ(0x09);v=0;break;/" " case 0xbd:ZZ(0x10);v=0;break;/" " case 0xdd:ZZ(0x11);v=0;break;/" " case 0xed:ZZ(0x12);v=0;break;/" " case 0x7e:ZZ(0x13);v=0;break;/" " case 0xbe:ZZ(0x14);v=0;break;/

51、" " case 0xde:ZZ(0x15);v=0;break;/" " case 0xee:ZZ(0x16);v=0;break;/" " default:v=0; /*函数功能:发送主程序*/void ZZ(uchar x) TT0(1,m9); /高电平9mS TT0(0,m4_5); /低电平4.5mS /* 发送4帧数据 */ Z0(SBM); Z0(SBM); Z0(x); Z0(x); /* 结束码 */ TT0(1,m_65); TT0(0,m40); /* 重复码 */ while(KEY() TT0(1,m9);

52、 TT0(0,m2_25); TT0(1,m_56); TT0(0,m40);TT0(0,m56);LED = !LED; /指示灯 LED = 1; /*函数功能:单帧发送程序入口参数:1帧数据*/void Z0(uchar temp) uchar v; for (v=0;v<8;v+) /循环8次移位 TT0(1,m_65); /高电平0.65mS if(temp&0x01) TT0(0,m1_6); /发送最低位 else TT0(0,m_56); temp >>= 1; /右移一位 /*函数功能:38KHz脉冲发射 + 延时程序入口参数:(是否发射脉冲,延时约 x (uS))*/void TT0(bit BT,uint x) TH0 = x>>8; /输入T0初始值 TL0 = x; TF0=0; /清0 TR0=1; /启动定时器0 if(BT = 0) while(!TF0);/

温馨提示

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

评论

0/150

提交评论