ImageVerifierCode 换一换
格式:DOCX , 页数:39 ,大小:223.99KB ,
资源ID:15473488      下载积分:1 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-15473488.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于PIC单片机的红外遥控设计本科毕业设计.docx)为本站会员(b****7)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

基于PIC单片机的红外遥控设计本科毕业设计.docx

1、基于PIC单片机的红外遥控设计本科毕业设计XXXX大学本科毕业设计基于PIC单片机的红外遥控设计学生姓名 所 在 系专业名称班 级学 号指导教师XXX大学教务处年 月毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得安阳工学院及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。作 者 签 名: 日 期: 指导教师签名: 日期:

2、 使用授权说明本人完全了解安阳工学院关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。作者签名: 日 期: 基于PIC单片机的红外遥控设计学生: 指导教师:内容提要:遥控器是现代电子控制系统的重要部件。可以利用无线电波、可见光、红外光、超声波作为传输介质远距离操控电子设备。由于其功耗低、可靠性高和互相干扰小等优点,已在现实生活中得到了广泛应用。在目前的家用电器中,

3、如电视机、家庭影院和数字音像设备中,大多都采用了红外线遥控电路。而这套“基于PIC单片机的红外遥控设计”则是以Microchip公司生产的16F877a芯片为模版,价格低廉,电路结构简单,据此本设计提出了一种简单易行的红外遥控器的设计。关键词:PIC单片机 红外遥控 简单易行PIC MCU-based infrared remote control designAbstract:The remote control of modern electronic control systems are an important component. Can make use of radio wav

4、es, visible light, infrared light, ultrasonic remote control as the transmission medium of electronic equipment. Because of its low power consumption, high reliability, and interfere with each other the advantages of small, have been in real life has been widely applied. In the current household app

5、liances such as televisions, home theater and digital audio-visual equipment, most of them have adopted the infrared remote control circuit. This set of PIC-based single-chip design of the infrared remote control is based on Microchip produced chips for 16F877a template, cheap, simple circuit struct

6、ure, whereby the design of a simple infrared remote control design. Key words:PIC Single-chip infrared remote control is simple一、前言(一)开发的背景自从1800年英国天文学家赫歇尔发现红外辐射至今,红外技术的发展经历了将近两个世纪。从那时开始,红外辐射和红外元件、部件的科学研究逐步发展,但发展比较缓慢,直到1940年前后才真正出现现代的红外技术。随着科技的不断发展,各系统间的联系越来越紧密,对各系统间的数据传递的要求也越来越高,但是外部设备越多,连接用的线也越多,短

7、距离联接的发展必然要走向无线联机,目前主要的短距离无线连接技术有红外通信技术和蓝牙技术,前者采用红外线,后者采用无线电波作为信息传播的媒介。红外无线通讯的技术与蓝牙相比较,红外技术具有比较成熟,接口电路简单,成本低等诸多优点。红外遥控是通过红外设备将单片机与外部设备联系起来进行通讯,实现系统间的无线通讯。自从红外技术出现以来,美国、英国、前苏联等国竞相发展。特别是美国,大力研究红外技术在军事方面的应用。目前,美国将红外技术应用于单兵装备、装甲车辆、航空和航天的侦察监视、预警、跟踪以及武器制导等各个领域。 1993年,由二十多个大厂商发起成立了红外数据协会(IrDA),统一了红外通讯的标准,这就

8、是目前被广泛使用的IrDA红外数据通讯协议及规范。IrDA专司制订和推进能共同使用的低成本红外数据互连标准,支持点对点的工作模式。由于标准的统一和应用的广泛,更多的公司开始开发和生产IrDA模块,技术的进步也使得IrDA模块的集成越来越高,体积也越来越小。IrDA1.0可支持最高115.2kbps的通信速率,而IrDA1.1可以支持的通信速率达到4Mbps。本课题是专业知识综合用于前沿科技的一个尝试,本人坚信此次研究和设计的成果具有一定的现实意义。(二)开发的目标本系统的基本任务和目标就是,通过红外发射电路的设计,实现单片机利用红外信号,通过发射电路与外界联系,实现对外的遥控控制,其中包含了输

9、入设备红外键盘,和红外传感器的使用。借助软件部分的设计,实现系统的总体功能,红外遥控。总的说来,完成此设计主要有四个模块:发射及接收电路的设计;编码及解码程序;红外传感器的选取和使用;红外键盘的设计。(三)开发的思路 设计基于单片机的红外遥控,我们要从发射接收电路,编码解码,传感器,红外键盘几个方向入手。在软件部分中,我们主要是先要画好系统原理图,还有明确系统各部分功能,发射接收电路的设计,编码及解码程序,在硬件部分中,主要是发射和接收电路的硬件设计,红外传感器的使用,以及红外键盘的设计。二、设计基础(一)PIC单片机的介绍1PIC单片机常识据统计,我国的单片机年容量已达13亿片,且每年以大约

10、16%的速度增长,但相对于世界市场我国的占有率还不到1%。这说明单片机应用在我国才刚刚起步,有着广阔的前景。培养单片机应用人才,特别是在工程技术人员中普及单片机知识有着重要的现实意义。当今单片机厂商琳琅满目,产品性能各异。针对具体情况,我们应选何种型号呢?首先,我们来弄清两个概念:集中指令集(CISC)和精简指令集(RISC)。采用CISC结构的单片机数据线和指令线分时复用,即所谓冯.诺伊曼结构。它的指令丰富,功能较强,但取指令和取数据不能同时进行,速度受限,价格亦高。采用RISC结构的单片机数据线和指令线分离,即所谓哈佛结构。这使得取指令和取数据可同时进行,且由于一般指令线宽于数据线,使其指

11、令较同类CISC单片机指令包含更多的处理信息,执行效率更高,速度亦更快。同时,这种单片机指令多为单字节,程序存储器的空间利用率大大提高,有利于实现超小型化。属于CISC结构的单片机有Intel8051系列、Motorola和M68HC系列、Atmel的AT89系列、台湾Winbond(华邦)W78系列、荷兰Pilips的PCF80C51系列等;属于RISC结构的有Microchip公司的PIC系列、Zilog的Z86系列、Atmel的AT90S系列、韩国三星公司的KS57C系列4位单片机、台湾义隆的EM-78系列等。一般来说,控制关系较简单的小家电,可以采用RISC型单片机;控制关系较复杂的场

12、合,如通讯产品、工业控制系统应采用CISC单片机。不过,RISC单片机的迅速完善,使其佼佼者在控制关系复杂的场合也毫不逊色。根据程序存储方式的不同,单片机可分为EPROM、OTP(一次可编程)、QTP(掩膜)三种。我国一开始都采用ROMless型单片机(片内无ROM,需片外配EPROM),对单片机的普及起了很大作用,但这种强调接口的单片机无法广泛应用,甚至走入了误区。如单片机的应用一味强调接口,外接I/O及存储器,便失去了单片机的特色。目前单片机大都将程序存储体置于其内,给应用带来了极大的方便。2PIC单片机的特点和工作原理(1)PIC最大的特点是不搞单纯的功能堆积,而是从实际出发,重视产品的

13、性能与价格比,靠发展多种型号来满足不同层次的应用要求。就实际而言,不同的应用对单片机功能和资源的需求也是不同的。比如,一个摩托车的点火器需要一个I/O较少、RAM及程序存储空间不大、可靠性较高的小型单片机,若采用40脚且功能强大的单片机,投资大不说,使用起来也不方便。PIC系列从低到高有几十个型号,可以满足各种需要。其中,PIC12C508单片机仅有8个引脚,是世界上最小的单片机。(2)精简指令使其执行效率大为提高。PIC系列8位CMOS单片机具有独特的RISC结构,数据总线和指令总线分离的哈佛总线(Harvard)结构,使指令具有单字长的特性,且允许指令码的位数可多于8位的数据位数,这与传统

14、的采用CISC结构的8位单片机相比,可以达到2:1的代码压缩,速度提高4倍。(3)产品上市零等待(Zero time to market)。采用PIC的低价OTP型芯片,可使单片机在其应用程序开发完成后立刻使该产品上市。(4)PIC有优越开发环境。OTP单片机开发系统的实时性是一个重要的指标,象普通51单片机的开发系统大都采用高档型号仿真低档型号,其实时性不尽理想。PIC在推出一款新型号的同时推出相应的仿真芯片,所有的开发系统由专用的仿真芯片支持,实时性非常好。就我个人的经验看,还没有出现过仿真结果与实际运行结果不同的情况。(5)其引脚具有防瞬态能力,通过限流电阻可以接至220V交流电源,可直

15、接与继电器控制电路相连,无须光电耦合器隔离,给应用带来极大方便。(6)彻底的保密性。PIC以保密熔丝来保护代码,用户在烧入代码后熔断熔丝,别人再也无法读出,除非恢复熔丝。目前,PIC采用熔丝深埋工艺,恢复熔丝的可能性极小。(7)自带看门狗定时器,可以用来提高程序运行的可靠性。(8)睡眠和低功耗模式。虽然PIC在这方面已不能与新型的TIMSP430相比,但在大多数应用场合还是能满足需要的。3PIC单片机的分类初档8位单片机:PIC12C5XXX16C5X系列PIC16C5X系列是最早在市场上得到发展的系列,因其价格较低,且有较完善的开发手段,因此在国内应用最为广泛;而PIC12C5XX是世界第一

16、个八脚低价位单片机可用于简单的智能控制等一些对单片机体积要求较高的地方,前景十分广阔。中档8位单片机:PIC12C6XX/PIC16CXXX系列PIC中档产品是Microchip近年来重点发展的系列产品,品种最为丰富,其性能比低档产品有所提高,增加了中断功能,指令周期可达到200ns,带AD,内部E2PROM数据存储器,双时钟工作,比较输出,捕捉输入,PWM输出,I2C和SPI接口,异步串行通讯(USART),模拟电压比较器及LCD驱动等等,其封装从8脚到68脚,可用于高、中、低档的电子产品设计中,价格适中,广泛应用在各类电子产品中高档8位单片机:PIC17CXX系列PIC17CXX是适合高级

17、复杂系统开发的系列产品,其性能在中档位单片机的基础上增加了硬件乘法器,指令周期可达成160ns,它是目前世界上8位单片机中性价比最高的机种,可用于高、中档产品的开发,如马达控制(二)相关背景知识 116F877a基本知识(1)16F877a的基本架构单片机是中央处理单元(CPU),存储器(Memory)及输入/输出单元三大部分组成。其中CPU可分为两部分,即算术逻辑单元(ALU)及控制单元(CU),CPU通过总线(BUS)执行程式码的Fetch、Decode、算术逻辑运算及读写时钟信号的控制。存储器单元提供存放程序与资料的空间,包含只读存储器(ROM)和随机存取存储器(RAM)。而输入/输出单

18、元提供与外界周边设备或元件的管道 ,如图一所示。 图1 单片机基本架构(2)PIC16F877a的特性说明如下:采用高性能的RISC CPU核心8位微电脑控制芯片8K14Flash程序存储器5组I/O端口(A,B,C,D,E)368Bytes数据存储器及256Bytes的EEPROM数据存储器2组8位定时器TMR0,TMR2,及1组16位定时器TMR1支持14个中断处理(3)PIC16F877a单片机核心架构PIC16F877a单片机是RISC架构单片机,它所采用的Harvard结构和过去一般单片机所采用的Von Neumann结构最大的差异在于总线的改变,如图2所示。Von Neumann结

19、构是传统的单片机结构,程序存储器和数据存储器是在同一个存储体区块,存储器与CPU之间只使用单一总线,不论是对程序存储器或数据存储器作存取都是使用此总线,因此要完成一个指令通常必须依序使用总线,从指令的提取、解码、资料读取、执行到资料的写入,最后的结果是一个指令大都需要等待好几个周期才能完成。Harvard结构改善了这样的缺点,主要是程序存储器和数据存储器使用不同的存储体区块,而且也有各自独立的总线,这样的做法就大大改善了指令执行的频宽,两条总线可以同时工作,最大的优点是当一个指令在执行时,已经可以去抓下一个指令,因此对于运作的效率会有显著的提升。 图2 Harvard架构与Von Neuman

20、n架构比较(4)存储器基本知识 PIC16F877a单片机共有3个存储器块,它们是程序存储器,数据存储器,EEPROM数据存储器。程序存储器和数据存储器有它自己的总线,各自工作而不受对方影响。 PIC16F877a有一个13位程序计数器它的寻址能力达8K14程序存储器空间,而且PIC16F877a的Flash存储器空间正好是8K14,当寻址超出上面可执行的地址范围时将导致回绕。复位向量在0000h中,而中断向量在0004h中。 数据存储器被分为4个体,它包括通用寄存器(GPR)和特殊功能寄存器(FSR),位 RP0,RP1是块抉择位。RP1 RP0 STATUS6:5=0 0 体0=0 1 体

21、1 =1 0 体2 =1 1 体3 每个块的范围达到7Fh(128bit),每个块的较低位存储单元保存SFRS,在SFRS上面是GPRS作为静态RAM操作的。所有执行的块包括SFR。一些经常使用的SFRS可以从一个体镜像到另一个体来减少代码和实现快速访问。 在实际应用编程中会经常使用到两个比较特殊的寄存器:INDF和FSR。它们是实现间接寻址所必需的两个寄存器。位于RAM数据存储器的的最顶端、地址码最小的INDF寄存器,它虽有地址编码,但其实不是一个物理上的寄存器。间接寻址通过使用INDF寄存器而成为可能。任何使用INDF寄存器的指令其实是通过文件选择寄存器FSR来访问所指向的寄存器。在PIC

22、16F877a中所采用的这种独特而巧妙的构想,可以使指令集得到很大程度的精简。 电源控制寄存器PCON电源控制寄存器的内容包括2个有效位,用其中一个来记录和区分是否发生了上电复位、外部引脚输入低电平引起的人工复位、还是看门狗超时溢出复位。在本系统的设计中就会用到该寄存器中的位进行判断进入哪个程序模块。 电源上电复位标志位 =1 没有发生上电复位 =0 发生了上电复位。当发生上电复位之后,应该用软件及时将其置1,以便下次利用该比特来判断是否发生了电源上电复位。2.FLASH程序存储器的背景知识 存储器是任何计算机系统都不可缺少的一类重要的外围器件或部件。在计算机系统中应用的存储器有外部存储器(又

23、叫辅助存储器)和内部存储器(又叫主存储器)之分。外部存储器有:磁带存储器(多用于大型计算机)、软磁盘存储器、硬磁盘存储器、只读光盘存储器、可读写光盘存储器、卡式存储器(例如IC卡)等;内部存储器目前都用半导体存储器。而常见的半导体存储器器件分为RAM、ROM和NVRAM,而它们往下又细分为多个分支,FLASH程序存储器就是ROM中的一种,其内容断电后也不丢失,可反复檫写多次,并且容易实现在线檫写,其檫写速度基本同于EEPROM,但是其制造成本更低、芯片面积更小。适应于不仅要求内容可以修改而掉电后又不丢失,而且又要求成本更低、存储容量更大的电器设备中。虽然EEPROM和FLASH存储器都可以多次

24、电檫和电写,但EEPROM的读写次数要高的多。因此,FLASH存储器适合用来烧写那些改动不太频繁的用户程序或参数,有利于降低单片机成本。PIC16F87X单片机内部同时具备两种电檫和电写存储器,分别是用于存储数据的EEPROM和用于固化用户程序的FLASH,它们都能够在适合PIC单片机正常工作的VDD电压范围内实现读写操作。也就是说,单片机内部自带电荷泵升压电路,即使是烧写操作也不需要外加高电压。FLASH程序存储器的读写操作是以14位的单指令字节为单位进行的,对于其的写操作实际是对某一指定单元进行的“先檫除,后写入”的操作。对于程序存储器的读写操作允许进行“校验和”的计算,以便提高可靠性。烧

25、写到FLASH程序存储器中的内容,不一定都是有效指令代码,也可以利用这个14位宽的存储器,存放一些固定参数等。当CPU执行到存放着这些无效指令代码的区域是,产生与执行空操作指令NOP同样的结果。但是对于FLASH程序存储器进行单个指令字节的写入操作,将会暂停其他指令的执行,直到写操作完成,并在写操作进行期间,不能对程序存储器的任何单元进行取指操作,即在此期间不能执行任何指令。原因是,FLASH是一个整体,当对其任何一个单元进行烧写操作时,升压电荷泵启动工作,对FLASH整体施加了高电压,在这个不适合FLASH正常读取操作的高电压存续期间,FLASH暂时失去了程序存储器的角色。总之,FLASH不

26、能同时扮演“被烧写存储器”和“取指令存储器”双重角色。为了解决这个矛盾,在PIC16F87X系列单片机中采用的解决方案是,作为一个整体的FLASH程序存储器,在对一个单元进行烧写并且电源自动切换到电荷泵供电时,CPU自动停顿而进入等待状态。在一次烧写操作完毕,FLASH工作电压再自动切换到正常值时,CPU才继续执行FLASH中的程序。对于PIC16F87X,在烧写FLASH时,虽然不能执行FLASH中的指令,但是系统时钟仍然振荡,片内各个外围模块仍然正常工作,可以检测到中断事件的发生,并进行排队等待,直到写操作完成之后才会得到响应。具体处理过程是,一旦写操作完成,如果中断源对应的各个中断屏蔽位

27、都是开放的,并且该中断源的中断请求发生在写操作期间,那么,在执行完预先抓取到指令寄存器中的指令之后,将立刻转向中断矢量地址去执行中断服务子程序。FLASH不是直接影射到RAM存储器地址空间的,也就是说,它并不与RAM统一编址。因此,FLASH两者都不能被用户程序直接访问,而只能通过专用寄存器进行间接的访问。为了达到间接访问它们的目的,额外增加了6个特殊功能寄存器:EEADR、EEADRH、EEDATA、EEDATH、EECON1、EECON2。FLASH程序存储器允许以指令字节(14位)进行读写操作,但是写操作会暂停CPU对FLASH区中指令的执行,直到写操作完成。当CPU间接访问FLASH程

28、序存储器时,EEADRA和EEADRH一起用来存放指向某一单元的13位(或12位或11位)地址码,EEDATA和EEDATH一起用来存放即将被写入或读出的14位数据(实际是用户程序的指令代码)。依据内部配置FLASH的容量不同,又可以分为以下3种情况。 对于PIC16F876877而言,配置的FLASH容量8K14。用到了EEADR和EEADRH寄存器对的低13位, 213 =8K。虽然最高3位没有用到,但是必须将这几位清0。原因是,当EEADR和EEADRH内部16位地址码超出8K时,寻址范围并不会绕回到FLASH的低地址单元上。例如,当EEADR和EEADRH内部16位地址码为2000H时

29、,寻址到的单元并不是0000H号单元。这样做也便于用户程序在PIC16F87X不同型号之间的移植和兼容。 对于PIC16F873874而言,配置的FLASH容量为4K14,为PIC16F876877的一半。所以仅用到了EEADR和EEADRH内部16位地址码的低12位,212=4K。虽然最高4位没有用到,但是必须将这4位清0,理由同上。 对于PIC16F870871872而言,配置的FLASH容量仅为2K14,为PIC16F876877的1/4。所以,仅用到了EEADR和EEADRH内部16位地址码的低11位,211=2K。虽然最高5位没有用到,但是必须要将这5位清0,理由同上。 3.片内FL

30、ASH程序存储器结构和操作原理图3 FLASH数据存储器结构图PIC16F877a单片机内部,用于固化用户程序的FLASH 。也把它当作一个外围模块来看待,对于它的操作与操作EEPROM数据存储器也基本相同,只是其数据宽度和地址宽度都需要增加,因此,地址寄存器和数据寄存器都增加到了一对。FLASH与单片机内部总线之间,利用地址寄存器对EEADR:EEADRH和数据寄存器对EEDATA:EEDATH,作为用户程序与FLASH存储器打交道的对话窗口。从图中可以发现,以上述4个寄存器为界,其左边,在工作寄存器W和4个寄存器之间经过内部数据总线进行的是数据传送,是由CPU执行用户程序分4次来完成的;而

31、右边,在4个寄存器与FLASH之间的数据传送则是靠硬件自动实现的。单片机向FLASH程序存储器烧写的程序代码或数据,常常是最先来自于单片机外部,方法是可以经过端口模块(如USART、SPI、I2C等),与外界进行通信并获取程序代码或数据,然后写入FLASH。烧写FLASH与向EEPROM中烧写数据的操作过程相比,主要的不同之处有:地址码有13位、12位或11位(分别对应876877、873874和872871870),需要2个地址寄存器并行工作;数据有14位,也需要2个数据寄存器并行工作。对于以FLASH为对象的烧写操作,与CPU以FLASH为指令来源的程序执行,两种操作行为之间存在着互斥关系

32、。也就是说,这两种操作绝对不能发生在同一时刻,其中的道理前面分析过。在对于FLASH写操作期间,系统时钟继续振荡,所有外设模块继续工作,如果中断处于使能状态,发生的中断请求将排队等候。一旦写操作完成,CPU将继续执行被中止的程序。能否烧写FLASH,还与系统配置字的WRT位有关。在用程序烧写器经过在线串行编程(ICSP)引脚,对单片机进行烧写编程时如果将WRT位清0,此后就不能再以执行用户程序来操纵控制寄存器EECON的方式,烧写FLASH程序存储器,如表1所列。我们在此可以主要关注内部写操作与WRT的对应关系。表1 内部FLASH程序存储器的读写状态表配置位FLASH程序存储器区间内部ICSPCP

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2