红外线接收发送装置设计(七)
课程设计说明书 第I页
红外线接收发送装置设计
摘 要
红外线是太阳光线中众多不可见光线中的一种,由德国科学家霍胥尔于1800年发现,又称为红外热辐射,他将太阳光用三棱镜分解开,在各种不同颜色的色带位置上放置了温度计,试图测量各种颜色的光的加热效应。结果发现,位于红光外侧的那支温度计升温最快。因此得到结论:太阳光谱中,红光的外侧必定存在看不见的光线,这就是红外线。也可以当作传输之媒界。 太阳光谱上红外线的波长大于可见光线,波长为0.75,1000μm。红外线可分为三部分,即近红外线,波长为0.75,1.50μm之间;中红外线,波长为1.50,6.0μm之间;远红外线,波长为6.0,l000μm 之间。
红外发送每次编码的发送是一个键值,即一个十六进制的数据。为了达到一次能发送一组数据(如车次号,通常为三位十进制数),我们可以采用89C2051的软件编码的
方法
快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载
,先一次性输入一组车号,按下发送键后,全部发送出;同时在接收时,用连续接收方法,一次性接收所有数据。
本次设计运用单片机原理,其中发射部分包括键盘矩阵、编码调制、红外发送器,接收部分包括光电转换放大器、解调、电路,对其原理及性能作了较简要的阐述。
关键字:红外线、红外热辐射、单片机
课程设计说明书 第II页
目 录
1 绪论 ............................................................ 1
1.1红外线红外线接收发送装置的结构............................... 1
1.2红外线红外线接收发送装置的分析............................... 1
1.3红外线红外线接收发送装置的发展............................... 2 2 设计过程 ........................................................ 2
2.1设计思路..................................................... 2
2.2遥控发射器及其编码........................................... 3
2.3红外遥控接收器及其显示....................................... 4
2.4软件编程..................................................... 4
2(5整体电路图.................................................. 5 3运行程序 .......................................................... 6
总 结 ............................................................. 9
致 谢 ............................................................ 10
参考文献 .......................................................... 11
课程设计说明书 第1页
1 绪论
红外线遥控是目前应用最广泛的一种通信和遥控手段。由于红外线遥控器具有体积小、功耗低、功能强、成本低等特点。因此,彩电、录像机、音响设备、空调、玩具、门铃以及遥控汽车路牌等其它小型装置上也纷纷采用红外线遥控。为改变目前汽车上的车头路牌指示灯(以下简称车号器),无法灵活改变的缺陷,把红外遥控用在其中,使其可以轻松实现远距离、非接触性的一次改变车号的目的,从而改变以前用人工翻牌的旧模式。
1.1红外线红外线接收发送装置的结构
汽车上的车号器,原用简单的LED数码管控制,使用起来很不方便,为了能远离的控制它,就采用了红外遥控。通常红外遥控系统由发射和接收两部分组成,应用编码电路专用集成电路芯片来进行控制操作,发射部分包括键盘矩阵、编码调制、红外发送器。接收部分包括光电转换放大器、解调、接收电路。红外发送每次编码的发送是一个键值,即一个十六进制的数据。为了达到一次能发送一组数据(如车次号,通常为三位十进制数),我们可以采用89C2051的软件编码的方法,先一次性输入一组车号,按下发送键后,全部发送出;同时在接收时,用连续接收方法,一次性接收所有数据。
1.2红外线红外线接收发送装置的分析
遥控发射器的专用芯片很多,但在汽车车号器遥控中,采用的是 89C2051 芯片。用P1口组成矩阵扫描反馈,获取键值,用内部的定时器1产生一个38K的软件定时中断,驱动P1.0产生一个38K的方波,当作红外线的调制基波,需要发送的数据,以串行方式,用波特率为1200,带奇偶校验的方式,直接送至TXD的串口发送端,而后TXD和P1.0进行逻辑与后,经过40106整形,用三极管驱动红外发射管直接发出。
接收器部分,主要由CX20106和89C2051、显示驱动4094、2803及数据存储器和看门狗25045组成,用芯片CX20106把38K的载波过滤后,得到一组波形,
课程设计说明书 第2页
即以波特率为1200的串口数据,直接送至89C2051的RXD接收,用软件读取串口,输入缓存,得到一组数据,判断正确后,存放在非易失性的EEPROM25045中,同时直接用脉冲移位方式,送数据至4094,经2803驱动后显示,同时用25045的看门狗定时,保证在程序失控等情况下,能正确返回而不造成错误接收。由于串行口方式传输,本身带有奇偶校验和起停位校验,可以大大提高数据的可靠性,同时在数据组中还加入了累加和校验,再次提高了可靠性,因此在实际应用中,即使在露天、太阳直射、光照很强等恶劣环境下,都能保证不会误收数据而造成显示错误。
1.3红外线红外线接收发送装置的发展
随着平面显示时代的到来,诸如平面CRT显示器、液晶、等离子显示技术的不断成熟和普及,基于平面红外线扫描检测原理为技术基础的红外线触控交互技术优势凸现,以此为依托市场优势渐趋明显。
在技术适用性方面,红外线触控交互技术完全可以满足现今及未来若干年内触摸产品市场的多元化需求。在触控交互技术触摸尺寸为10.4英寸至29英寸范围内,红外线触控交互技术产品依托其本身的技术优势可全面替代其他种类技术触控交互技术的应用。
在市场方面,随着平面显示产品的迅速发展普及,红外线触控交互技术产品市场将获得其他技术不具备的独特市场空间,市场需求将不断扩大。从价格优势上看,红外线触控交互技术具有生产工艺简单,生产成本低,使用寿命长,免维护,维修成本低等特点,尤其是红外线触控交互技术在29英寸以上应用时,具有绝对的垄断性和排它性,势必成为触控交互技术市场上的新宠。 2 设计过程
2.1设计思路
汽车上的车号器,原用简单的LED数码管控制,使用起来很不方便,为了能远离的控制它,就采用了红外遥控。通常红外遥控系统由发射和接收两部分组成,应用编电路专用集成电路芯片来进行控制操作,如图1所示,发射部分包括键盘
课程设计说明书 第3页
矩阵、编码调制、红外发送器。接收部分包括光电转换放大器、解调、电路。红外发送每次编码的发送是一个键值,即一个十六进制的数据。为了达到一次能发送一组数据(如车次号,通常为三位十进制数),我们可以采用89C2051的软件编码的方法,先一次性输入一组车号,按下发送键后,全部发送出;同时在接收时,用连续接收方法,一次性接收所有数据。
图1 遥控系统框
2.2遥控发射器及其编码
遥控发射器的专用芯片很多,但在汽车车号器遥控中,采用的是 89C2051 芯片。用P1口组成矩阵扫描反馈,获取键值,用内部的定时器1产生一个38K的软件定时中断,驱动P1.0产生一个38K的方波,当作红外线的调制基波,需要发送的数据,以串行方式,用波特率为1200,带奇偶校验的方式,直接送至TXD的串口发送端,而后TXD和P1.0进行逻辑与后,经过40106整形,用三极管驱动红外发射管直接发出。其原理图如下:
图2 遥控发射器
课程设计说明书 第4页
2.3红外遥控接收器及其显示
接收器部分,主要由CX20106和89C2051、显示驱动4094、2803及数据存储器和看门狗25045组成,用芯片CX20106把38K的载波过滤后,得到一组波形,即以波特率为1200的串口数据,直接送至89C2051的RXD接收,用软件读取串口,输入缓存,得到一组数据,判断正确后,存放在非易失性的EEPROM25045中,同时直接用脉冲移位方式,送数据至4094,经2803驱动后显示,同时用25045的看门狗定时,保证在程序失控等情况下,能正确返回而不造成错误接收。由于串行口方式传输,本身带有奇偶校验和起停位校验,可以大大提高数据的可靠性,同时在数据组中还加入了累加和校验,再次提高了可靠性,因此在实际应用中,即使在露天、太阳直射、光照很强等恶劣环境下,都能保证不会误收数据而造成显示错误。其原理图如下:
图3 红外线接收器
2.4软件编程
单片机89C2051软件包括主程序,串行口中断服务程序和定时中断服务程序三部分,在2051单片机内部RAM区建立相应的工作单元和标志位。 (一)、发送程序:SEND-BUFO?SEND-BUF3为四个字符发送缓冲区,SEND-MARK为请求发送标志。当键盘扫描到有发送请求时,启动定时器,在P1.0输出一个38K的方波,同时启动串行口,把SEND-BUFO至SEND-BUF3中的数据,发送至SBUF中,合成后发送。其程序流程过程如下:
课程设计说明书 第5页
发送主程序:初始化时设置定时器、看门狗和串行口,并清显示,而后扫描键盘。若有键按下,进行按键处理;若是发送键,则置串口发送标志,启动定时器和串行发送程序,后返回主程序中的显示程序,送显示数据至缓冲区。 串口中断程序:现场保护,取发送数据至发送缓冲区,启动软件定时产生38K的方波,而后判数据是否发送完毕,结束则清除发送标志,反之,则返回继续送数据。
定时中断程序:现场保护回填定时长度,启动计数定时,并在指定的管脚P1.0取反,变成反相电平,返回。
(二)、接收程序:REC-BUFO?REC-BUF4为四个字符的接收缓冲区,REC-MARK为数据接收完整的标志。当串行口中断产生时,按次序接收数据至REC-BUF0至REC-BUF3中,数据满后,计算累加和。如果正确,置REC-MARK标志;反之,把缓冲区数据清零。主程序中若判断有REC-MARK标志,则把数据进行处理后,送外存25045和显示缓冲区中显示,同时由于接收是在汽车中进行,电源电压和其它干扰很多,包括有可能产生的串行口误判等。因此,为了保证程序能正常运行,启动了25045中的看门狗电路,以每隔500ms时间定时刷新。其程序流程过程如下:
接收主程序:初始化时设置定时器、看门狗、清显示和外存25045判断有否数据接收标志,若有进行数据判断,正确的写至数据外存,并送至显示区显示,反之,返回主程序的显示程序和刷新看门狗。
串行口中断接收程序:现场保护后,判断接收数据是否为头或尾部数据,作相应处理是正常数据时存放缓存,并指针加一,当完整的一组数据正常收到后,置接收数据标志后返回。
2(5整体电路图
课程设计说明书 第6页
图4 总电路图
3运行程序
include
;------------------
STATUS equ 0X03
PORTA equ 0x05
PORTB equ 0x06
W equ 0x00
F equ 0x01
Z equ 0x02
C equ 0x00
;------------------
n55ks equ 0x0C ; nchks equ 0x0D ; avgIR equ 0x0E ;
equ 0x0F ; nsamp
tdetect equ 0x10 ; ;------------------------------------ org 0x000
goto start
org 0x004
start
movlw b'00000001'
tris PORTA ; RA0 红外输入
movlw b'00000000'
tris PORTB ;RB0 红外输出
; 2us in goto at end of loop
课程设计说明书 第7页
blip call doblip ; +6.248ms = 6.250ms total
call seeblip ; 6.250ms total call seeblip ; 6.250ms total call seeblip ; 6.250ms total call seeblip ; 6.250ms total call seeblip ; 6.250ms total call seeblip ; 6.250ms total call seeblip ; 6.250ms total nop
nop
call doblip
call seeblip
call seeblip
call seeblip
call seeblip
call seeblip
call seeblip
call seeblip
goto blip ;
;============ 产生 55.5kHz锯形波(346*18us=6.228ms)======
doblip movlw 0xFF
movwf n55ks osc nop call make55k ;RB0 红外输出
decfsz n55ks,F
goto osc
;--------------
morblip ;6253us DELAY
movlw 0x5B
movwf n55ks
oscmore call make55k ;RB0 红外输出 nop
decfsz n55ks,F
goto oscmore
;-------------
call delay8u
nop
nop
nop
nop
nop
bcf PORTB,2 ; RB2 LED指示
课程设计说明书 第8页
return
;--------------------------- make55k bsf PORTB,0 ;RB0 红外输出
call delay8u
bcf PORTB,0
return delay8u nop nop nop
nop
return
;========= 6.250ms ===================
seeblip clrf avgIR movlw 0xF9
movwf nchks
chk call chkIR ;//
decfsz nchks,F
goto chk
movf avgIR,W ; sublw 0X78 btfss STATUS,C goto detectd
bcf PORTB,0 ;RB0 红外输出 OFF
goto chkdone detectd bsf PORTB,0 nop chkdone call delay8u
nop
nop
nop
nop
return
;======================== chkIR clrf nsamp
btfss PORTA,0
incf nsamp,F
btfss PORTA,0 ; RA0 红外输入
incf nsamp,F
btfss PORTA,0 ; RA0 红外输入计数值存到nsamp incf nsamp,F
课程设计说明书 第9页
btfss PORTA,0
incf nsamp,F btfss PORTA,0
incf nsamp,F btfss PORTA,0 ;共六次 nsamp》5,avgIR增一 incf nsamp,F nop movf nsamp,W sublw 0X04 btfss STATUS,C incf avgIR,F return
;============================ end
总 结
课程设计说明书 第10页
通过课程设计,能够帮助我们回顾所学习的知识,并且能够将所学的知识结合起来进行综合运用。学有所用才是我们的主要目的。我们都可以试着做一做,培养我们的动手能力,还能够把我们所学的知识加以运用。课程设计是对所学知识的进一步学习,在这次更深的学习运用,不但能够充分用已学的知识,而且对电子设计也有了更深的体会。对于电子技术的应用有了更新的知识。这是我第一次独立的完成产品设计,通过这次毕业设计锻炼了我独立思考的能力,进一步加强了动手能力。在整个设计的过程中我明白了无论在细小的方面还是大的方面都要细心,这将为我以后的工作打下良好的基础。同时也看到了很多自己的不足之处。在以后的学习生活中,我会努力学习专业知识,完善自我,为将来的发展做好充分的准备。
总之,在这次课程设计中,懂得了理论和实际联系的重要性。在以后的学习中,我不仅要把理论知识掌握牢固,更要提高自己的动手能力和分析能力。
致 谢
课程设计说明书 第11页
在课程设计进行中,我要衷心地感谢我们的老师以及给我帮助的同学,在我整个毕业设计过程中,老师给了我很大的帮助和细心的指导。在设计过程中,当我遇到了困难和问题时,当我们需要他的时候,老师和同学总是给予我鼓励和指导他让我们学会了以前在课堂上没有的东西。 另外,我还要特别感谢我所有的搭档,是他们给了我巨大的勇气和战胜困难的信心,在毕业设计中我们合作的很愉快,当我们遇到困难时我们一起去探讨和研究,一起去战胜它,大家也一起分享排除问题和困难后的喜悦。 同时大家也发扬我们慷慨激扬精神:特别能吃苦,特别能攻关,特别能战斗,特别能奉献 。
在此,我表示真诚的感谢~
参考文献
课程设计说明书 第12页
[1]肖洪兵 跟我学用单片机[M]. 北京:北京航空航天大学出版社,2002.8.
[2]赵晓安 MCS-51单片机原理及应用[M]. 天津:天津大学出版社,2001.3. [3]何立民 单片机高级教程[M](第1版(北京:北京航空航天大学出版社,2001. [4]陈伟人 单片微型计算机原理与应用[M].北京:清华大学出版社, 2006.5.
[5]李朝青 PC机及单片机数据通信技术[M]. 北京航空航天大学出版社,2000
[6]金伟正 单线数字温度传感器的原理与应用[J].电子技术应用20006
[7]李广弟 单片机基础[M].北京航空大学出版社.1994年6月
[8]马明建 数据采集与处理技术[M].西安交通大学出版社. 1997
[9] 张鑫 单片机原理及应用[M]. 北京:电子工业出版社,2005.8