1、 1电气工程学院微机原理与接口技术 课程设计2微机原理与接口技术 课程设计成绩评定表姓 名 学 号课程设计题目: 红外通信课程设计答辩或提问记录:成绩评定依据:课程设计预习报告及方案设计情况(30):课程设计考勤情况(15):课程设计调试情况(30):课程设计总结报告与答辩情况(25):最终评定成绩(以优、良、中、及格、不及格评定)指导教师签字: 年 月 日3微机原理与接口技术 课程设计任务书一、课程设计题目:红外通信控制器二、课程设计要求1. 根据具体设计课题的技术指标和给定条件,独立进行方案论证和电路设计,要求概念清楚、方案合理、方法正确、步骤完整;2. 查阅有关参考资料和手册,并能正确选
2、择有关元器件和参数,对设计方案进行仿真;3. 完成预习报告,报告中要有设计方案,设计电路图,还要有仿真结果;4. 进实验室进行电路调试,边调试边修正方案;5. 撰写课程设计报告最终的电路图、调试过程中遇到的问题和解决问题的方法。三、进度安排1时间安排序 号 内 容 学时安排(天)1 方案论证和系统设计 12 完成电路仿真,写预习报告 13 电路调试 24 写设计总结报告与答辩 1合 计 5设计调试地点:电气楼 4102执行要求微机原理与接口技术课程成绩优秀的可以自拟题目,其余的同学都是指定题目。 ,每组不得超过 2 人,要求学生在教师的指导下,独力完成所设计的详细电路(包括计算和器件选型) 。
3、严禁抄袭,严禁两篇设计报告雷同。4摘要本文所要介绍的内容就是如何利用单片机,结合红外线器件设计构造出一套简易的红外线通信系统,以实现在中短距离内的红外无线通信的功能。应用 AT89C51 单片机,通过对单片机的编、解码程序来实现红外信号的发送与接收,从而实现红外通信功能。应用红外发射管和接收管,完成数据的发射和接收。发射管和接收管接在普通的 I/O 口。要求 2 个按键,一个按键是数据的 0 和 1 的变换,另一个按键是发送键。数据在 1 个数码管上显示。 关键词:单片机;红外通信;发射;接收;串行接口 AbstractThis paper will introduce the content
4、 is how to use microcontroller, combined with the infrared device design to construct a set of simple infrared communication system, in order to realize the infrared wireless communication in short distance within the function. Application of C51 microcontroller, SCM through the coding, decoding pro
5、cess to achieve the infrared signal sending and receiving, so as to realize the communication function of infrared remote control.Application of infrared transmitting tube and the receiving tube, complete the sending and receiving data. The transmitting tube and the receiving tube is connected to th
6、e common I/O port. 2 buttons, a button is data of 0 and 1 transformation, another key is the send button. Data show that in the 1 digital tube.Key words: Microcontroller; Infrared Communication; Transmit; Receive; The Serial Interface5目录第一章 系统方案设计11.1 电路整体设计思路11.2 红外通信发送模块设计1第二章 系统仿真82.1 仿真电路图82.2 仿
7、真结果及分析9第三章 电路调试10第四章 结论154.1 实验结论154.2 PCB 设计154.3.1 PCB 原理图154.3.2 PCB 布线图16第五章 心得体会与建议175.1 心得体会175.2 建议17参考文献181第一章 系统方案设计1.1 电路整体设计思路红外通信是利用 950nm 近红外波段的红外线作为传递信息的媒体,即通信信道。发送端采用脉时调制(PPM)方式,将二进制数字信号调制成某一频率的脉冲序列,并驱动红外发射管以光脉冲的形式发送出去;接收端将接收到的光脉转换成电信号,再经过放大、滤波等处理后送给解调电路进行解调,还原为二进制数字信号后输出。 简而言之,红外通信的实
8、质就是对二进制数字信号进行调制与解调,以便利用红外信道进行传输;红外通信接口就是针对红外信道的调制解调器。原理图如下:由于本实验是利用实验室的实验板模拟红外数据的发送和接收,因而在最终程序的调试时,将 TXD 和 RXD 短接,即将 TXD 所发出的的数据传给 RXD,并显示在数码管上。红外通信中,当红外二极管发送调制频率为 38KHz 的红外光时,才能被红外接受二极管识别并接收,红外接收波特率为 1200 波特,即每秒发送 1200 位,每位宽度为 1/1200 秒,即 833us。由于实验要求只发送 0 或 1,因此,发送一位 0,可表示为发送宽度为833us 的调制频率为 38KHz 的
9、脉冲波;发送一位 1 可表示为发送宽度为 833us的高电平。1.2 红外通信发送模块设计1.2.1 单片机最小系统ATMEL 公司生产的 AT89C51 单片机它是硬件电路的核心部分,时钟电路晶振使用 11.0592MHZ,复位电路采取按键复位方式。1、 主要元器件介绍单片机 AT89C51:单片机主控电路的主要元件是 AT89C51,其外型如图 1:2图 1:AT89C51 引脚图AT89C51 是一个低电压,高性能 CMOS 8 位单片机,片内含 4K BYTES 的可反复擦写的只读程序存储器(PEROM)和 128 BYTES 的随机存取数据存储器(RAM),器件采用 ATMEL 公司
10、的高密度、非易失性存储技术生产,兼容标准MCS-51 指令系统,片内置通用 8 位中央处理器和 FLASH 存储单元,内置功能强大的微型计算机的 AT89C51 提供了高性价比的解决方案。AT89C51 是一个低功耗高性能单片机,40 个引脚,32 个外部双向输入/输出(I/O)端口,同时内含 2 个外中断口,2 个 16 位可编程定时计数器,2 个全双工串行通信口,AT89C51 可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和 FLASH 存储器结合在一起,特别是可反复擦写的 FLASH 存储器可有效地降低开发成本。2、管脚说明:VCC:供电电压。GND:接地。P0 口:P0
11、 口为一个 8 位漏级开路双向 I/O 口,每脚可吸收 8TTL 门流。当P1 口的管脚第一次写 1 时,被定义为高阻输入。P0 能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在 FIASH 编程时,P0 口作为原码输入口,当 FIASH 进行校验时,P0 输出原码,此时 P0 外部必须被拉高。P1 口:P1 口是一个内部提供上拉电阻的 8 位双向 I/O 口,P1 口缓冲器能接收输出 4TTL 门电流。P1 口管脚写入 1 后,被内部上拉为高,可用作输入,P1 口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH 编程和校验时,P1 口作为第八位地址接收。
12、P2 口:P2 口为一个内部上拉电阻的 8 位双向 I/O 口,P2 口缓冲器可接收,输出 4 个 TTL 门电流,当 P2 口被写“1”时,其管脚被内部上拉电阻拉高,且3作为输入。并因此作为输入时,P2 口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2 口当用于外部程序存储器或 16 位地址外部数据存储器进行存取时,P2 口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2 口输出其特殊功能寄存器的内容。P2 口在 FLASH 编程和校验时接收高八位地址信号和控制信号。P3 口:P3 口管脚是 8 个带内部上拉电阻的双向 I/O
13、口,可接收输出 4 个TTL 门电流。当 P3 口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3 口将输出电流(ILL)这是由于上拉的缘故。P3 口也可作为 AT89C51 的一些特殊功能口,如下表所示:口管脚 备选功能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(外部数据存储器读选通)P3 口同时为闪烁编程和编程校验接收一些控制信号。R
14、ST:复位输入。当振荡器复位器件时,要保持 RST 脚两个机器周期的高电平时间。/ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在 FLASH 编程期间,此引脚用于输入编程脉冲。在平时,ALE 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的 1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个 ALE 脉冲。如想禁止 ALE 的输出可在 SFR8EH 地址上置 0。此时, ALE 只有在执行 MOVX,MOVC 指令是 ALE 才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态 ALE
15、禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN 有效。但在访问外部数据存储器时,这两次有效的/PSEN 信号将不出现。/EA/VPP:当/EA 保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式 1 时,/EA 将内部锁定为RESET;当/EA 端保持高电平时,此间内部程序存储器。在 FLASH 编程期间,此引脚也用于施加 12V 编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。43、共阴极数码管的应用共阴极数码管是
16、一类数字形式的显示屏,通过对其不同的管脚输入相对的电流,会使其发亮,从而显示出数字能够显示时间、日期、温度等所有可用数字表示的参数。由于它的价格便宜、使用简单、在电器,特别是家电领域应用极为广泛,空调、热水器、冰箱等等。绝大多数热水器用的都是数码管,其他家电也用液晶屏与荧光屏。共阴极结构:LED 显示器有共阴极和共阳极两种结构,下面只介绍共阴极结构。见图 3,在共阴极结构中,各段发光二极管的阴极连在一起,将此公共点接地,某一段发光二极管的阴极为高电平时,该段发光。共阴极字段码:LED 显示 09 某个字符时,则要求在 adp 送固定的字段码,如要使 LED显示“0”,则要求 a、b、c、d、f
17、 各引脚为高电平,g 和 dp 为低电平,字段码为“3fh”。共阴极字符 09 七段码如下:字符:0 1 2 3 4 5 6 7 8 9 字段码:3fh 06h 5bh 4fh 66h 6dh 7dh 07h 7fh 6fh51.2.2 发射模块流程图(如图 2)NY键按下逐行扫描,按 P 口值查 键号按键号转至相应的发射程序初始化扫描键盘延时消抖结束图 2:发射模块流程图1.2.3 发送部分初期设计程序波特率、脉冲宽度等数值的计算:1/38KHz=26us, 833us/26us=32发送一位 0 时,对于红外发送二极管来说,需要发送调制频率为 38khz,每位宽度为 833us 的红外光。
18、 发送 0 的相应程序如下:SEND0:MOV R3,#32D7:SETB P3.1NOPNOPNOPNOP6NOPNOPNOPNOPNOPNOPNOPNOPCLR P3.1NOPNOPNOPNOPNOPNOPNOPNOPNOPNOPDJNZ R3,D7RET 发送一位 1 时,需要发送宽度为 833us 的高电平。发送 1 的实验程序如下:SEND1:MOV R3,#32D8:SETB P3.1NOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPSETB P3.17NOPNOPNOPNOPNOPNOPNOPNOPNOPNOPDJNZ R3,D8RET 发送一个八位二进制数
19、的循环程序:红外发送二极管发送标准波特码被接收二极管接收,标准波特码包括起始位(一位低电平) ,数据部分(共八位)和停止位(一位高电平) 。SEND: MOV R4,#08HMOV A,R0LCALL SEND0D4: JB ACC.0,D5LCALL SEND0D6: RR ADJNZ R4,D4LCALL SEND1RETD5: LCALL SEND1SJMP D6 1200 波特率的产生:利用公式,波特率=23212( 12初 值 )其中,SMOD=1(串口工作方式 1) , =6MHz,K=8(定时器工作方式为2)根据上面的公式,带入数值,计算得定时器的初值为 0 定时器初值为E6H,
20、即当定时器初值为 0E6H 时,产生的波特率为 1200。定时器的设置程序:MOV TMOD,#20H ;令定时器 T1 为方式 2MOV TL1,#0E6H ;波特率为 1200b/sMOV TH1,#0E6H ;给 TH1 送重装初值MOV PCON,#80H ;令 SMOD=18SETB TR1 ;启动 T1 MOV IE,#90H ;开启中断 9第二章 仿真2.1 仿真电路图通过对实验电路板的研究,以及网上查找资料,结合所学知识,得到以下仿真(仿真软件:proteus)电路图:用 WAVE6000 仿真器生成.HEX 文件,放入仿真单片机中:102.2 仿真结果及分析运行仿真器,先按按
21、键 K2,再按 K1,得到如下仿真结果:接上步,再按一次 K2,接着按一次 K1,得到如下仿真结果:经过仿真验证,此次课程设计程序及电路满足题目要求。11第三章 调试调试分为硬件调试和软件调试。 硬件调试主要是检测硬件电路是否有短路、断路、虚焊等。具体步骤及测试结果如下: (1)检查电源与地线是否全部连接上,用万用表对照电路原理图测试各导线是否完全连接,测试结果所有连接线都已连接好; (2)检验单片机的晶振是否起振,用示波器观察波形;由于之前所发的板子上提供的晶振为 6MHz,而实验室仿真器所提供的晶振为 12MHz,因此,在调试程序时,先将仿真器的晶振设置成 6MHz,以便将编制出来的程序可
22、以在提供的电路板中实现红外通信。 (3)检查各芯片的功能是否正常,检测按键的导通情况。测试结果正常。 软件调试主要是程序调试,可以分块进行调试,分别对发射模块和接收模块程序进行调试。首先都要在实验台上进行调试。具体步骤如下: (1)发射模块程序调试,首先将程序输入到电脑中,对逻辑功能和语句进行检查,再用软件进行调试,调试无错误后才可以下载到单片机中。 (2)接收模块程序调试,程序无错误后,下载到单片机中,结合接收模块程序,验证实验功能,当发射部分有键按下时,接收模块中的接收器接收红外线并在数码管中显示出按键数,完成实验要求。总程序的编制与调试:ORG 0000HAJMP MAINORG 002
23、3HLJMP SINT ORG 0100HMAIN:MOV SP,#70H MOV TMOD,#20H ;令定时器 T1 为方式 2MOV TL1,#0E6H ;波特率为 1200b/sMOV TH1,#0E6H ;给 TH1 送重装初值MOV PCON,#80H ;令 SMOD=1SETB TR1 ;启动 T1MOV SCON,#50H ;串行口为方式 1,允许接收MOV IE,#90H ;开 T1 中断、总中断 MOV P2,#00H ;刚执行时无显示MOV 50H,#00H12MOV 51H,#01HMOV R5,#50HD1: JNB P3.2,CHECK1 ;进行变换JNB P3.3
24、,CHECK2 ;执行显示LJMP D1CHECK1:LCALL DELAYJB P3.2,D2 ;松手,跳 D2LJMP D1 ;否则返回CHECK2:LCALL DELAYJB P3.3,D3 ;松手,跳 D3LJMP D1 ;否则返回D2: LCALL E1INC R5CJNE R5,#52H,D1 ;确保只在 0 和 1 之间变换MOV R5,#50HLJMP D1D3:LCALL E2LJMP D1E1: MOV A,R5MOV R0,ARETE2: MOV A,R5MOV R0,ALCALL SENDRETSEND: MOV R4,#08H ;扫描 8 次(一数字有八位)MOV A
25、,R0LCALL SEND0 ;起始位(低电平)D4: JB ACC.0,D5 ;扫描最低位13LCALL SEND0D6: RR ADJNZ R4,D4LCALL SEND1RETD5: LCALL SEND1SJMP D6SEND0:MOV R3,#32D7:SETB P3.1NOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPCLR P3.1NOPNOPNOPNOPNOPNOPNOPNOPNOPNOPDJNZ R3,D7RET14SEND1:MOV R3,#32D8:SETB P3.1NOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPSETB P
26、3.1NOPNOPNOPNOPNOPNOPNOPNOPNOPNOPDJNZ R3,D8RETDELAY:MOV R6,#0FFHDELAY1:MOV R7,#0FFHDELAY2:DJNZ R7,DELAY2DJNZ R6,DELAY1RET1000 0000SINT: JB RI,SINT1 ;确认是否接收完毕(RI=1,接受完毕)LJMP D115SINT1:MOV A,SBUF ;接收完毕,将接受的数据存入 SBUFCLR RI ;将接收中断标志位清零LCALL DISPLAYRETIDISPLAY:MOV DPTR,#TAB ;显示电路MOVC A,A+DPTRMOV P2,ALCAL
27、L DELAYRETTAB:DB 3FH,06HEND16第四章 结论4.1 实验结论红外通信是利用红外技术实现两点间的近距离保密通信和信息转发。它一般由红外发射和接收系统两部分组成。发射系统对一个红外辐射源进行调制后发射红外信号,而接收系统用光学装置和红外探测器进行接收,就构成红外通信系统。单片机控制的红外通信系统具有硬件电路简单、成本低廉、编程方便、通信可靠性高等优点,实现了通信双方非接触的数据传输,在遥控、遥测等应用场合得到广泛使用。利用单片机来实现红外通信技术,结合通信原理中的数字信号编解码技术,研制出了一套简单的红外通信系统。通过对系统模块的测试与调试,已基本上实现了红外通信的功能。
28、鉴于本课题所涉及的内容比较难,知识面广,再加上时间紧迫,使得本次设计中电路系统做得比较简易与粗糙,未能完成更高等的目标与任务,一些扩展的功能如串行口通信功能完成得不够细致全面。4.2 PCB 设计4.3.1 PCB 原理图174.3.2 PCB 布线图18第五章 心得体会与建议5.1 心得体会这次课程设计是对我们学习微机原理及单片机课程的检验及实际应用能力的一次提高。我们所设计的是红外收发器。所能实现的是红外的发射和接收, ,最后从数码管显示所按下的键号。本次课程设计虽然跟以前的课设相比来说时间比较紧,但是我的收获却是很大的。刚开始接到设计题目,一片茫然,根本不知道红外通信是个什么概念,后来通
29、过在网上查阅资料,才逐渐搞懂其基本原理。但是程序的设计对我来说也是一个大难题,说实话,如果没有借鉴同学的程序,我根本没法完成程序的设计工作。这也让我明白了认真学好专业知识是多么的重要,书到用时方恨少。通过这次课程设计,让我对微机原理与接口技术这门课的认识变得非常深刻,通过查阅资料,具体实践,把学到的知识成功的应用到实际中了,这段时间也让我认识到课本上的知识,要放到实际中的话,还是有差距的,一定要学会将两者结合,找到其中的联系,这样,学到的才不会是死的知识,才能最大限度的发挥学习的作用。通过这次单片机红外通信课程设计与实现实验,我掌握了简单的红外通信系统的组成及设计原理,将书本所学知识与实际应用
30、联系在一起;掌握了通信电子系统方案设计、电路设计的方法,在实际搭建电路的过程中,大大提高了我的动手能力和探究能力:掌握 PCB 设计电路装配和调试的方法,熟悉电路仿真软件 proteus 的使用。更重要的是,在这次实验中收获的团队合作能力和组装电路的经验将一直伴随着我的学习、生活,让我受益匪浅。5.2 建议对课程设计的建议:希望老师以后可以把要求提的更加明确一些,让学生有个更确切的目标。19参考文献1胡汉才,单片机原理及其接口技术(第 2 版),清华大学出版社,20102肖春芳,用89C51单片机控制红外线通信接口电路技术,山西电子技术,20093王立锦,单片机控制系统的红外线遥控器接口,电子技术(上海),1998 4高建荣,基于单片机控制红外线遥控的编码实现,计算机工程与设计5,2004 5刘任平,基于单片机的红外线编码解码装置,电子技术应用 ,19996陈再清,微机单片机红外线通信,电子世界,2004