




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、电子工程设计第三阶段报告题目:红外遥控系统专业: 通信工程小组: 14姓名学号: 指导教师: 司农完成日期:2012.4.11摘要:电子工程设计第三阶段的任务是完成基于单片机的红外遥控系统硬件电路设计,并编程实现按键控制,数据显示,最终实现通过红外发射管发射39KHz ASK信号,与模板红外接收单元的简单通信联系(测试通信协议),进行闭环温控的启动/停止控制,接收模板红外发送单元发出的温度数据并进行显示这几项功能,分别是读取模板当前温度、修改模板数/模转换值、启动模板闭环温度控制或打印功能、设置模板闭环控制温度、设置模板闭环温度控制启动延时时间、读取模板闭环温度控制设置值、读取模板闭环温度控制
2、启动延时时间、读取模板当前控制状态的项功能。在调试成功基础上,可进行程序固化,从而真正完成红外遥控系统开发。完成硬件电路的设计焊接,包括以下几个单元:单片机的编程处理,完成与各个单元的数据,控制线连接,编程实现对各单元控制,最终实现遥控;显示:显示键控定义的值和测温结果;按键控制:控制显示和协议的收发,以及4060完成的分频器设计(提供ASK信号载频)与串行数据运算产生ASK信号。完成软件编程实现测试模块的基本功能,运行完整程序完成各个协议的收发,从而实现对模板的遥控。经不断调试及排障,使各个模块基本达到了相应要求,且编程联调实现了遥控的功能。在实验的具体操作焊接、编程、纠错等步骤中,自主学习
3、其中的概念原理以及相应的具体实验操作方式与真实的问题分析等实用方法。目录一实验目的.4二设计实验及其原理4三程序设计7四组装(焊接),调试与测试13五实验心得与体会16六致谢.17七参考文献.17红外遥控系统实验一实验目的电子工程设计第三阶段的任务是完成基于单片机的红外遥控系统,用以代替系统小键盘的部分功能,通信格式和通信协议同串行通信。完成硬件电路设计,并编程实现按键控制,数据显示,最终实现通过红外发射管发射39KHz ASK信号,与模板红外接收单元的简单通信联系(测试通信协议),进行闭环温控的启动/停止控制,接收模板红外发送单元发出的温度数据并进行显示这几项功能。完成相应软件编程,实现遥控
4、功能。二设计实验及其原理1.原理电路图上图为系统完整电路图显示部分原理图单片机P2,P3口直接与共阳极数码管相连 由于为了更方便的编译数字,我们依旧沿用上一次二阶段所使用的数码管的接线焊接方式来完成,如上图所示。键盘部分原理图:四个键值分别与单片机P10P13连接ASK信号的产生及红外接收1.载波的产生其中为5M的晶体振荡器,上下分别为101的电容,中间加一个1M的电阻,对于6管脚的输出约为一个频率为39KHZ的方波。2.ASK信号的产生 红外发光二极管的发射距离是同消耗在管子上的瞬时功率呈单调递增关系。在红外发光二极管最大功耗一定的情况下,要想增大发射距离,只能把信号调制到一个小占空比的脉冲
5、载波上。脉冲载波的占空比越小,红外发光二极管的瞬时功率才能越大,发射距离才能越远。2.红外接收采用红外一体化接收头HS0038。三、程序设计源代码:#include C8051F020.h#include absacc.h#include data_define.c#defineTIMER 0x8000#include Init_IR_Device.c#define DP1 P3#define DP2 P2#define TIM_L 0xe8/*T/C1计数值*/#define TIM_H 0xe8#define uchar unsigned charunsigned char table=0
6、xC0,0xF9,0xA4,0xB0,0x99, 0x92,0x82,0xF8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e;sbit P1_0=P10;sbit P1_1=P11;sbit P1_2=P12;sbit P1_3=P13; int count=-1;void delay(unsigned int x)/延时子程序 unsigned char i; for(i=0;ix;x+);void display(uchar x)/*显示子程序*/uchar h,l;h=x/10;l=x%10;DP1=tableh;DP2=tablel;void show
7、tem()/A0功能,查询当先温度uchar x;x=0;SBUF0=0xA0;while(TI0=0); TI0=0;while(RI0=0); RI0=0;delay(500);x=SBUF0;display(x);RI0=0;TI0=0;void da()/A1功能,数模uchar h=0,l=0,size;delay(200);SBUF0=0xa1;DP1=DP2=table0;while(1)while(P1_2=0)/判断按键if(P1_2=1)h+;h=h%16;DP1=tableh;while(P1_3=0)if(P1_3=1)l+;l=l%16;DP2=tablel;if(P
8、1_1=0) break; size=h*16+l;/拼数,十位加个位 DP1=0xc0;DP2=0x89; delay(200); SBUF0=size; delay(200);void close() /A2功能,闭环int flag=0;SBUF0=0xa2;flag+;flag=flag%2;while(TI0=0); TI0=0;while(RI0=0); RI0=0;SBUF0=0x02;TI0=0; RI0=0;void set()/A3功能,设定温度uchar h=0,l=0,size;delay(200);SBUF0=0xa3;DP1=DP2=table0;while(1)w
9、hile(P1_2=0)if(P1_2=1)h+;h=h%10;DP1=tableh;while(P1_3=0)if(P1_3=1)l+;l=l%10;DP2=tablel;if(P1_1=0) break;size=h*10+l;DP1=0x89;DP2=0x86;delay(200);SBUF0=size;delay(200);void timing()/A4功能,定时uchar h=0,l=0,size;delay(200);SBUF0=0xa4;DP1=DP2=table0;while(1)while(P1_2=0)if(P1_2=1)h+;h=h%10;DP1=tableh;whil
10、e(P1_3=0)if(P1_3=1)l+;l=l%10;DP2=tablel;if(P1_1=0) break;size=h*10+l;DP1=0x89;DP2=0x89;delay(200);SBUF0=size;delay(200);void re_set()/A5功能,查询闭环保持温度uchar x;x=0;SBUF0=0xA5;while(TI0=0); TI0=0;while(RI0=0); RI0=0; delay(500);x=SBUF0;display(x);RI0=0;TI0=0;void re_timing()/A6功能,查询延时uchar x;x=0;SBUF0=0xA
11、6;while(TI0=0); TI0=0;while(RI0=0); RI0=0; delay(500);x=SBUF0;display(x);RI0=0;TI0=0;void re_close()/A7功能,查询系统当前状态uchar x;x=0;SBUF0=0xA7;while(TI0=0); TI0=0;while(RI0=0); RI0=0; delay(500);x=SBUF0;display(x);RI0=0;TI0=0;void showtime(int c)/在数码管上显示此事时A?功能DP1=0x88;/A的七段码DP2=tablec;/0至7void starts(int
12、 c)switch(c) case 0:showtem();break;case 1:da();break;case 2:close();break;case 3:set();break;case 4:timing();break;case 5:re_set();break;case 6:re_timing();break;case 7:re_close();break;default:break;void main(void)Init_IR_Device();DP1=0x89;/*清除显示*/DP2=0x88;TMOD=0x20;/*T/C1方式2*/ TH1=TIM_H;/*T/C1重装填
13、值*/TL1=TIM_L;/*T/C1计数值*/TR1=1;/*启动T/C1*/SCON0=0x50;/*串口方式1*/while(1)while(P1_0=0)/判断按键if(P1_0=1)count+;count=count%8;showtime(count);while(P1_1=0)DP1=0xc0;DP2=0x89;starts(count);四组装(焊接),调试与测试组装与焊接:根据protel99se绘制原理图,在插件布局时,尽量使电路中逻辑相邻元件靠近,以减少线数量,合理布局。焊接时,注意镀锡以保证无短路,连线起始点与终点距离适当,保证与其他不想相连焊点的有一定距离。红外调试电
14、路板作为PC机与遥控板之间的数据转发设备,需要与调试台配合使用。如上图,调试时,红外遥控调试电路板应插在1的位置,遥控板插在2位置。使用串口连线将调试台的串口(如下图所示)与PC机COM1口相连。(注意:只能使用COM1口)COM口不支持热插拔,因此,在进行连接之前,请先关闭PC机和调试台的电源,连接好之后再打开电源,以免发生设备COM口损坏的情况。测试功能作用如下:1、电源指示灯(POWER):电源接通时,绿色电源指示灯不停闪烁,则证明红外遥控调试电路板运行正常。2、接收指示灯(REC):当红外接收组件接收到红外信号时,该指示灯闪烁。3、关键字指示灯(REC_R):当接收到命令字A1A7时,
15、该指示灯闪烁。4、发送指示灯(SEND):当红外遥控调试电路板向遥控板发送数据时该指示灯闪烁。5、串口接收指示灯(UART_REC):当接收到机发送的数据时该指示灯闪烁。6、串口发送指示灯(UART_SEND):当向机发送数据时该指示灯闪烁。7、数码管(DS1、DS2):随时以十六进制显示最后一次从遥控板接收到的数据,和向遥控板发送的数据。通信部分1.PC调试环境及其设计功能(1)本机控制模式系统启动后默认为“本机控制模式”,在此工作模式下,可以通过点击“数/模转换数据显示”二侧的按钮改变数模转换数据,“当前温度”显示窗口中的数据将随之变化。(2)远程控制模式点击“本地控制/远程控制”按钮(按
16、钮变为红色)进入远程控制模式,远程控制模式时红外遥控板的调试模式,可以进行红外遥控板的电路调试和功能调试。(3)电路调试包括数据接收调试和数据发送调试。数据发送调试,主要测试ASK电路、红外发送电路、单片机数据发送电路的功能。调试时,可以编写一段连续发送某一数据的程序,如果电路工作正常,红外遥控调试电路板上的接收指示灯(REC)将闪烁,2位数码管将显示该数据,同时PC机模板仿真环境界面上“接收数据显示”窗口中也显示该数据。如果红外遥控板的上述电路工作不正常,将会有不同的现象发生。主要包括2种情况,一种情况是红外发送电路不工作或ASK电路无法产生调制输出或者单片机没有进入正常的数据发送状态,在这
17、种情况下,红外遥控调试电路板和PC机模板仿真环境不会有接收到数据回应。第二种情况是ASK电路设计有误,发送的数据不正确,此时红外遥控调试电路板的接收指示灯(REC)会闪烁,数码显示管可能会显示一个不正确的数据。出现以上现象时,可以用示波器仔细检查各主要电路的输出信号的波形,确定故障部位,排除故障。数据接收调试,主要测试红外接收组件、单片机数据接收控制电路的功能。调试时,可以编写一段连续接收数据并显示的的程序,然后在PC机模板仿真环境界面上的“发送数据显示”窗口中填入任意数据,点击“数据连续发送”按钮。此时,PC机模板仿真环境将通过红外遥控调试电路板连续发送在“发送数据显示”窗口中填入的数据,如
18、果,红外遥控板接收电路和现实电路工作正常的话,将会在数码管上显示PC机模板仿真环发送的数据。如果红外遥控板的数码管上没有相应的数据显示,可以用示波器一次检查红外接收组件有无信号输出,单片机是否进入正常的数据接收状态,以确定故障的部位并排除故障。功能如下:(1)读取模板当前温度,命令字为A0(2)修改模板数/模转换值,命令字为A1(3)启动模板闭环温度控制或打印功能,命令字为A2(4)设置模板闭环控制温度,命令字为A3(5)设置模板闭环温度控制启动延时时间,命令字为A4(6)读取模板闭环温度控制设置值,命令字为A5(7)读取模板闭环温度控制启动延时时间,命令字为A6(8)读取模板当前控制状态,命
19、令字为A72.调试过程及数据首先连接仿真器,打开仿真程序其次示波器测试载波输出,看是否为39KHZ方波之后测试通信:a. A0,打开仿真,远程控制,查询当前温度,看显示块上是否显示刚才设定的温度值,以测试接收模块的好坏。b. A1,保持闭环远程,看仿真程序是否收到发出信号,仿真版是否显示相应值。c. A2,当发送为A2时看仿真程序是否启动闭环温度控制。d. A3,设定闭环保持温度,看仿真程序是否收到发出信号,仿真版是否显示相应值。e. A4,设定启动闭环延时,看仿真程序是否收到发出信号,仿真版是否显示相应值。f. A5,查询当前温度,看显示块上是否显示刚才设定的温度值,以测试接收模块的好坏。e
20、. A6,查询启动闭环延时时间,看显示块上是否显示刚才设定的时间值,以测试接收模块的好坏。五实验心得与体会在这次的实验过程中,硬件电路部分并不难,在焊接时,应适时检查有无漏接,错接,分模块检查,而不应再都焊完后检查。检查硬件电路时,从电源,接地查起,进而检查数据线等等。另外,焊接时应尽量避免串线跨线等不良的焊线方法,按照一定的顺序来焊接以方便查线和改接。但是在最后我们依然在硬件焊接的时候出现了一些问题,那就是由于在实验电路原理图的一些芯片并没有把芯片的地和高电平画上去,致使我们焊接的过程中漏先,这种原因突出了我们的焊接习惯还不够娴熟,以及对于芯片并不够很好的理解与认识,提醒我们在以后的学习生活
21、中,还要更加的细心。 在本阶段调试时,首先分模块调试显示与键控部分,分别测试键盘是否焊接成功,按键是否正确,显示是否与自己编的数字库对应,以上确认无误后进行总体测试,我组刚对于通信部分怎么也传不过来,发现接收端始终无反应,在程序中也没有相应的数,但是对于程序改为连发之后就能接收到相应的程序温度,但在不连发的情况下都无法接收,我们曾经以为是在由于两个接收端与发送端的距离原因导致接收不到等原因,最后通过示波器,一个个的波形分析,我们把最后的问题锁定在于与非门上,发现与非门74SL00坏了这耽误了我们很多时间,究其原因,还是因为自己的潜意识里,就没有想到与非门会出现问题,在各种的调试测试其他芯片的过程中,最后才排除到与非门上,实验中还是不能以自己想的方式来处理问题,应该以科学的角度一一测试,并且综合运用示波器测管脚波形,万用表测通断,结合软件调试的理论结果比较,按排障方案的步骤进行逐级排障。这样就不会出现漏查的现象了。之后在调试时,观察不能从发送端发送数据到模板,但可以从仿真程序中看到所设定的温度值160, A0查询无法读取。调整模板发光二极管与遥控板发送部分的位置,仍无法正常发送与接收到数据经分析,由于仿真程序可以接收到发送数据,但模板上显示不正确,发现在程序中我们没有把管脚定
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025中考历史模拟试卷:九年级中国近现代史考点详析
- A-Level计算机科学2024-202学年春季模拟试卷:计算机图形学高级应用
- 计算机二级MySQL考试建立知识体系的试题及答案
- 俄语ТРКИ一级考试2024-202年口语模拟试卷(社会问题话题拓展与表达技巧)
- java秒杀场景面试题及答案
- java项目面试题及答案
- 2025年装配式建筑施工员职业技能认证模拟试卷(装配式建筑施工信息化管理案例分析)
- java面试题及答案测试网
- java面试基础面试题及答案
- java类工作面试题及答案
- 古诗词诵读《客至》课件+2023-2024学年统编版高中语文选择性必修下册
- 中考模拟考试实施方案
- 上海市地方标准《办公楼物业管理服务规范》
- (部编版)统编版小学语文教材目录(一至六年级上册下册齐全)
- 四川省南充市2023-2024学年六年级下学期期末英语试卷
- 物理-陕西省2025届高三金太阳9月联考(金太阳25-37C)试题和答案
- 智能化完整系统工程竣工验收资料标准模板
- 《当呼吸化为空气》读书分享
- 广东省江门市语文小升初试卷与参考答案(2024-2025学年)
- 阀体结构优化设计提升截止阀可靠性
- 八年级历史下册 第五单元 第15课《钢铁长城》教案 新人教版
评论
0/150
提交评论