基于PT2262的无线灯控设备设计实现_第1页
基于PT2262的无线灯控设备设计实现_第2页
基于PT2262的无线灯控设备设计实现_第3页
基于PT2262的无线灯控设备设计实现_第4页
基于PT2262的无线灯控设备设计实现_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

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

文档简介

59/59基于PT2262的无线灯控设备设计指导教师摘要:随着信息技术不断的飞速进展和社会的不断进步,人们对比明的高效操纵和功能多样化要求也不断提高,智能照明系统应运而生。它是充分利用电子技术、通信技术将建筑物内的各种照明器件有机的连接在一起,实现有效的治理和操纵。本论文的要紧工作是设计制作了无线遥控的灯控设备,采纳了以PT2262/PT2272为主控芯片来实现软件编码及解码方法。本设计课题从PT2262的波形入手,分析其编码格式,采纳了单片机程序来模拟PT2272的解码,同时给出了硬件设计电路和软件结构,详细叙述系统硬件线路的设计要点和软件设计。通过对系统进行的各个功能模块的软硬件调试以及系统综合调试,硬件电路的制作达到系统的总体要求,从而实现了单片机的学习功能和无线遥控的应用。关键词:无线遥控;硬件电路;软件解码;编码波形BaseonPT2262wirelesslightcontrolequipmentdesignElectronicscienceandtechnologyGuidingteacherAbstract:Withrapiddevelopmentofinformationtechnologyandprogressofsociety,thedemandonefficientcontrolandvariousfunctionofilluminationbypeopleisimproved,thusintelligentilluminationsystemcomesout.Technologyofelectronicshouldbegoodused,tomakesurethatcommunicationandcomputernetworkandcombinesdifferentlightingimplementsgetefficientcontrolledandmanaged.Theprimaryjoboftheessayistogerthelampofthewirelessremotecontrolbasedonsignedchipmicrocomputercontrolequipmentdesigned,PT2262/PT2272isoneofthemostcommonchipsatthepresenttime,butbecausethechipsrequirepairing,sothisaspectinfluencesitsapplicationinalargescale.PT2262waveformfromthestart,thedesignissues,analysisofitsencodingformat,theuseofthemircrontrollerprogramtosimulatethePT2272decoder,giventhehardwarecircuitandsoftwarearchitecture,adetaileddescriptionofthedesignfeaturesofthesystemhardwarecircuitandsoftwaredesign.Hardwareandsoftwaredebuggingandsystemdebuggingthroughthevariousfunctionalmodulesofthesystem,thehardwarecircuitofproductiontoachievetheoverallsystemrequirementsinordertoachievethelearningfunctionofthemicrocontrollerandwirelessremotecontrolapplications.Keyword:wirelessremotecontrol,hardwarecircuit,softwaredecode,encodewaveform目录摘要 2Abstract 3第一章绪论 51.1课题背景 51.2国内外现状以及进展前景 6第二章、操纵系统硬件电路设计 72.1无线遥控发射器 72.2无线遥控接收系统 112.3无线灯控设备发射和接收电路的实物图 13第三章、PT2262/PT2272的功能和软件解码的应用 153.1PT2262/PT2272无线编解码芯片的功能 153.1.1编码解码芯片PT2262/PT2272芯片原理简介: 153.1.2数据编码格式 173.1.3PT2262/2272使用的原则 203.2PT2262编码芯片的软件解码 203.2.1概述 203.2.2解码原理 213.3软件解码程序的流程图分析以及实现的源程序 223.3.1同步码的识不思路 233.3.2主程序流程图 263.3.3子程序流程图 273.3.4主程序流程图分析 30结束语 36参考文献: 37

第一章绪论1.1课题背景随着人类社会的进步和科学技术迅速的进展,人类开始进入以数字化和网络化为平台的智能社会,智能操纵体系适应国际社会信息化、智能化进展要求,必将成为21世纪的新概念。目前通常把智能操纵体系定义为利用网络、电脑和综合布线技术,通过信息治理平台将一些与工作、生活有关的各种子系统有机的结合的一个系统。也确实是讲,首先,它们都需要在一定范围内建立一个通讯网络,为智控信息提供必要的通路,在网络操作系统的操纵下,通过相应的硬件和执行机构,实现对所有工作、生活网络上的电器、设备的操纵和监测;其次,它们都要通过一定的媒介平台,构成与外界的通讯渠道,以实现与外界的世界沟通信息,满足远程监测、操纵和交换信息的需求[1];最后,它们最终目的差不多上为满足人们对安全、舒适、方便和符合绿色环境爱护的要求。由此可见,智能操纵系统是一个系统层次概念,它涵盖了在建筑环境层面能够阻碍人们生活的诸多方面。就实际应用而言往往有以下系统:(1)可视对讲系统:如有客人访问,按动大门上的按键,主人在家里通过液晶显示屏能够清晰的看到室外情况,幸免陌生人的打搅。(2)安防系统:运用现代通信、计算机等先进的技术,通过对各类探测器及相关处理设备的综合应用,达到对安全提供保障。(3)网络通讯系统:通常语音通信系统、有线电视系统和数据通信系统统称为信息网络系统。(4)智能照明系统:通过安装智能操纵器,对客厅、起居室和卧房内的灯具开关进行遥控,或者通过通讯网络实现照明的远程遥控。(5)电器操纵系统:如空调、电热电器、煤气开关阀门及电饭煲等的远程操纵。另一方面,照明作为一个产业在我国已有了充分的进展:2003年,中国电光源产量约80亿只,居世界第一,中国已有7000多家照明电器生产厂家,是目前世界上最大的照明产品生产基地和出口国。照明在我国电力消费中所占比重也越来越大:2004年中国发电总量约21870亿千瓦时,照明耗电约为2187亿千瓦时,占当年发电量的10%左右。相当于三峡水力发电工程建成以后,年发电能力840亿千瓦时的近3倍[2]。近年来,尽管我国电力建设差不多取得了较大的进展,但这并不意味着我国的电力资源己通过剩,事实上恰恰相反,电力供应不足和能源短缺现象十分严峻。因此,我国政府在呼吁节约用电。1.2国内外现状以及进展前景近年来,随着经济的进展和科技的进步,人们对比明器具节能和科学治理提出了更高的要求,使得照明操纵在智能楼宇领域的地位越来越重要。而在楼宇大厦建设热潮中,各公司和企业也意识到了智能照明的重要性。商业楼宇中大功率设备一般数量较少,而照明器具则比较多。使用照明操纵系统,更能体现在节能与治理方面的优势,提高建筑的科学治理水平。良好的工作环境提高工作效率的一个必要条件,合理地选用光源、灯具及性能优越的照明操纵系统都能提高照明质量,改善工作环境。与传统的照明系统相比,无线智能照明系统尚具有总体拥有成本低、操作安全、安装简单、维护方便、功能丰富、优异的可扩展性、便于系统集成等一系列优点。智能照明操纵系统减少灯具使用时刻和治理时刻,能有效节约能源。中国的智能照明行业尽管起步晚,但随着经济的不断进展和技术的不断更新,无线灯控系统应用于建筑行业越来越广泛,智能照明在我们生活中起到的作用越来越不容忽视,种种迹象表明,无线操纵的智能照明潜力巨大,前景令人乐观[3]。当前,进展趋势有如下三个方面:基于GSM蜂系统的手机远程遥控、基于计算机网络的远程遥控、基于蓝牙技术的远程遥控[4]。

第二章、操纵系统硬件电路设计图3-1(a)操纵系统硬件电路组成2.1无线遥控发射器PT2262和315MHz声表元件构成了无线发射模块,使用PT2262编码芯片对其编码,其中1~8为地址编码,D1~D4为数据编码,可由按键来操纵图3-1(b),1~8由8个按键来操纵,D1~D4由S1~S4来操纵。图2-1(b)无线遥控发射器的设计电路我们能够看出,现在,1~8的地址码要么设置为0或1,或能够设置为悬空状态,所做的发射板最终依旧悬空了,同时只用了1到4四个引脚最为悬空按键。是为了更好操作;另一个缘故是做实验没有必要实现上几百米的远程操纵。编码芯片PT2262发出的编码信号由:地址码、数据码、同步码组成一个完整的码字,解码芯片PT2272接收到信号后,其地址码通过两次比较核对后,VT脚才输出高电平,与此同时相应的数据脚也输出高电平,假如发送端一直按住按键,编码芯片也会连续发射。当发射机没有按键按下时,PT2262不接通电源,其17脚为低电平,因此315MHz的高频发射电路不工作,当有按键按下时,PT2262得电工作,其第17脚输出经调制的串行数据信号,当17脚为高电平期间315MHz的高频发射电路起振并发射等幅高频信号,当17脚为低平期间315MHz的高频发射电路停止振荡,因此高频发射电路完全受控于PT2262的17脚输出的数字信号,从而对高频电路完成幅度键控(ASK调制)相当于调制度为100%的调幅。早期的发射机较多使用LC震荡器,频率漂移较为严峻。声表元件的出现解决了这一问题,其频率稳定性与晶体大体相同,而其基频可达几百甚至上千兆赫兹。无需倍频,与晶体相比电路极为简单。图3-1(b)电路为常见的发射机电路。其中315MHz的高频作为载波,把PT2262发射的矩形波脉冲发射出去。由于声表元件的使用,电路工作特不稳定,即使手抓天线、声表或其他部位,发射频率均为可不能漂移。为了以下的软件解码,我不得不需要用硬件实验测试PT2262的编码波形,因此使用图2-1(b)把1~8引脚地址编码直接悬空设置,能够用示波器测量它的发射编码波形。因此分不按住K0,K1,K2,K3可看到波形,便是PT2262发射的编码,明白正、负脉冲的宽度关于软件解码来讲是必备的条件。下图是在示波器上截下的波形图。(1)当仅有S1按下时,在示波器上复制下来的波形如下:图2-2(a)按键码D1=1,即S1按下(2)当仅有S2按下时,在示波器上复制下来的波形:图2-2(b)按键码D2=1,即S2按下(3)当仅有S3按下时,在示波器上复制下来的波形如下:图2-2(c)按键码D3=1,即S3按下(4)当仅有S4按下时,在示波器上复制下来的波形如下:图2-2(d)按键码D4=1,即S4按下(5)当其中有一个按键按下时,可测得同步码的波形,从而也能够测出它的宽度:图2-2(e)同步码波形实验测试结论:综上所述5种波形,我专门容易能够得出在PT2262的编码波形,一组字码有25个矩形脉冲,有宽和窄脉冲,发射时数码的顺序是D4D3D2D1,其中同步码的低电平能够从光标1和光标2之间的时刻间隔计算出:t=11.6-4.7,得t=6.9μs多次测得波形可取的平均数为6.95μs。下面为同步码头波形:PT2262有三种编码形式:0,1,和悬空(表示为f)。(1)数据“0”发送的码位如下:(2)数据“1”(3)数据“f”发送的码位如下:图2-3同步码和数据码的编码格式2.2无线遥控接收系统2262每次发射时至少发射4组字码,2272只有在连续两次检测到相同的地址码加数据码才会把数据码中的“1”驱动相应的数据输出端为高电平和驱动VT端同步为高电平。因为无线发射的特点,第一组字码特不容易受零电平干扰,往往会产生误码,因此程序能够丢弃处理。PT2272解码芯片有不同的后缀,表示不同的功能,有L4/M4/L6/M6之分,其中L表示锁存输出,数据只要成功接收就能一直保持对应的电平状态,直到下次遥控数据发生变化时改变。M表示非锁存输出,数据脚输出的电平是瞬时的而且和发射端是否发射相对应,能够用于类似点动的操纵。后缀的6和4表示有几路并行的操纵通道,当采纳4路并行数据时(PT2272-M4),对应的地址编码应该是8位,假如采纳6路的并行数据时(PT2272-M6),对应的地址编码应该是6位。图2-5无线遥控接收电路设计2.3无线灯控设备发射和接收电路的实物图图2-6无线发射电路的实物模型图2-7无线发射电路色实物模型图2-8无线接收电路的实物模型第三章、PT2262/PT2272的功能和软件解码的应用3.1PT2262/PT2272无线编解码芯片的功能3.1.1编码解码芯片PT2262/PT2272芯片原理简介:PT2262/2272是台湾普城公司生产的一种CMOS工艺制造的低功耗低价位通用编解码电路,PT2262/2272最多可有12位(A0-A11)三态地址端管脚(悬空,接高电平,接低电平),任意组合可提供531441地址码,PT2262最多可有6位(D0-D5)数据端管脚,设定的地址码与数据码从17引脚串行输出,可用于无线遥控发射电路[9]。编码芯片PT2262发出的编码信号由地址码、数据码、同步码组成一个完整的码字,解码芯片PT2272接收到信号后,其地址码通过两次比较核对后,VT脚才输出高电平,与此同时相应的数据脚也输出高电平,假如一直按住发送端,编码芯片也会连续发射。当发射机无按键按下时,PT2262不接通电源,其17脚为低电平,因此315MHz的高频发射电路不工作,当有按键按下时,PT2262得电工作,其第17脚输出经调制的串行数据信号,当17脚为高电平期间315MHz的高频发射电路起振并发射等幅高频信号,当17脚为低平期间315MHz的高频发射电路停止振荡,因此高频发射电路完全受控于PT2262的17脚输出的数字信号,从而对高频电路完成幅度键控(ASK调制)相当于调制度为100%的调幅。PT2262/2272特点:CMOS工艺制造,低功耗,外部元器件少,RC振荡电阻,工作电压范围宽:2.6~15v,数据最多可达6位,地址码最多可达531441种。如图3-1为其引脚图名称管脚讲明A0-A111-8、10-13地址管脚,用于进行地址编码,可置为“0”,“1”,“f”(悬空),D0-D57-8、10-13数据输入端,有一个为“1”即有编码发出,内部下拉VCC18电源正端(+)VSS9电源负端(-)/TE14编码启动端,用于多数据的编码发射,低电平有效;OSC116振荡电阻输入端,与OSC2所接电阻决定振荡频率;OSC215振荡电阻振荡器输出端;Dout17编码输出端(正常时为低电平)图3-1PT2272(DIP—20)的芯片外形图及引脚图[10]表3-2PT2262的极限参数和电气参数图3-2PT2272(DIP—20)的芯片外形图及引脚图[10]表3-3PT2272引脚讲明名称管脚讲明A0-A111-8、10-13地址管脚,用于进行地址编码,可置为“0”,“1”,“f”(悬空),必须与2262一致,否则不解码D0-D57-8、10-13地址或数据管脚,当做为数据管脚时,只有在地址码与2262一致,数据管脚才能输出与2262数据端对应的高电平,否则输出为低电平,锁存型只有在接收到下一数据才能转换Vcc18电源正端(+)Vss9电源负端(-)DIN14数据信号输入端,接收来自模块输出端OSC116振荡电阻输入端,与OSC2所接电阻决定振荡频率;OSC215振荡电阻振荡器输出端;VT17解码有效确认输出端(常低)解码有效变成高电平(瞬态)673.1.2数据编码格式例如在画电路板的过程中,使用4位数据码,地址码确实是8位,发射的格式如图3-3(a)所示:8位地址码8位地址码4个数据码1个同步码图3-3(a)字码的组成图3-3(b)PT2262发射一次的几组波形上面是从接收模块信号RXD和GND引脚截获的一段波形,能够明显看到,图3-3(a)是一组一组的字码,每组字码之间有同步码隔开,因此我们假如用单片机软件解码时,程序只要推断出同步码,然后对后面的字码进行脉冲宽度识不即可。图3-4(a)、(b)是放大的一组字码:一个字码由12位AD码(地址码加数据码,比如8位地址码加4位数据码)组成,每个AD位用两个脉冲来代表:两个窄脉冲表示“0”;两个宽脉冲表示“1”;一个窄脉冲和一个宽脉冲表示“F”也确实是地址码的“悬空”。图3-4(a)(1)数据“0”发送的位码如下:(2)数据“1”(3)数据“f”发送的位码如下:670µs图3-4(b)编码格式2262每次发射时至少发射4组字码,2272只有在连续两次检测到相同的地址码加数据码才会把数据码中的“1”驱动相应的数据输出端为高电平和驱动VT端同步为高电平。由于无线发射的特点,第一组字码特不容易受零电平干扰,往往会产生误码,因此程序能够丢弃处理。图3-5PT2272检测信号VT信号端的变化PT2272解码芯片有不同的后缀,表示着不同的功能,有L4、M4、L6、M6之分,其中L表示锁存输出,数据只要成功接收就能一直保持对应的电平状态,直到下次遥控数据发生变化时改变。M表示非锁存输出,数据脚输出的是瞬时电平而且和发射端是否发射相对应,能够用于类似点动的操纵。后缀的6和4表示有几路并行的操纵通道,当采纳4路并行数据时(PT2272-M4),对应的地址编码应该是8位,假如采纳6路的并行数据时(PT2272-M6),对应的地址编码应该是6位。图3-6瞬态型和锁存型的区不3.1.3PT2262/2272使用的原则设置地址码的原则是:同一个系统地址码必须一致;不同的系统能够依靠不同的地址码加以区分。至于设置什么样的地址码完全随个人喜爱。PT2262和PT2272除地址编码必须完全一致外,振荡电阻还必须匹配,否则接收距离变近甚至于无法同意,随着兼容芯片的出现,在实际使用中只需对振荡电阻稍做改动就可配套使用,依照我在网站查的资料可知,下面的表3-5参数匹配效果较好:表3-5PT2262/2272电阻的最佳配对编码发射芯片振荡的电阻配套的解码接收芯片振荡电阻PT2262SC2260-R4PT2272/SC22721.2M200K1.5M5.1M270K2.2M390K3.3M12M680K4.7M20M820K3.2PT2262编码芯片的软件解码3.2.1概述PT2262/2272是一种CMOS工艺制造的低价位低功耗的通用编解码电路,是目前在无线通讯电路中作地址编码识不最常用的芯片之一。PT2262/2272最多可有12位(A0~A11)三态地址端管脚(悬空,接高电平,接低电平),任意组合可提供531441地址码。PT2262最多可有6位(D0~D5)数据端管脚,设定的地址码和数据码从17脚串行输出。PT2262/2272必须与相同地址码配对使用,当需要增加一个通讯机时,用户不得不求助于技术人员或厂家来设置相同地址码,客户自己设置相对比较苦恼,尤其对不明白电子的人来讲,随着人们愈来愈高的操作要求,PT2262/2272的这种配对使用严峻制约着使用的方便性,人们迫切地要求使用一种无须请教专业人士,无须使用专门工具,任何人都能够操作的方便手段来弥补PT2262/2272的不足,这确实是PT2262软件解码[11]。3.2.2解码原理图3-7PT2262发射的波形图3-7是PT2262的一段波形,能够看到一组一组的字码,每组字码之间有同步码隔开,因此假如我们用单片机软件解码时,程序只要推断出同步码,然后对后面的字码进行脉冲宽度识不即可。2262每次发射时至少发射4组字码,2272只有在连续两次检测到相同的地址码加数据码时才会把数据码中的“1”驱动相应的数据输出端为高电平和驱动VT端同步为高电平。因为无线发射的特点,第一组字码特不容易受零电平干扰,往往会产生误码,因此程序能够丢弃处理。下面我们来认真看一下PT2262的波形特征:振荡频率其中Rosc为振荡电阻那个地点我们选用的是一种比较常用的频率(以下同)。同步码头波形:PT2262有三种编码:0,1,和悬空(表示为f)。数据“0”发送的位码如下:数据“1”发送的位码如下:(3)数据“f”发送的位码如下:图3-8编码格式有了以上具体的波形,我们就能够进行软件解码了。T2262每次至少发送4次编码,我们能够通过检测6.95ms宽度的同步码头,有码头才开始进行编码解码,无码头则接着等待。当收到码头时,还要检测是否差不多收到过码头,若无,则丢弃第一次编码的信号,防止误码。从编码图中能够看出,每一位码字差不多上开始从低电平到高电平,到低电平,再到高电平。从编码图中还能够看出,每一位码字都能够分成两段,我们以每段中的电平宽度来描述码位:码位第一段第二段数值表示0窄窄001宽宽11f窄宽01无效码宽窄10关于接收模块的RXD和GND之间用示波器观看能够看出,该无线接收模块用的是原码位接收,因为在示波器上的接收的波形与PT2262发射的完全一致。如此我们就能够进行以下的解码了。3.3软件解码程序的流程图分析以及实现的源程序软件解码要紧是:同步码、地址码和按键码的识不。其中地址码和按键码的格式相同,能够同等地对待进行解码,只只是关于按键码来讲必须进行存储,而地址码只要解码宽度在同意的范围内,就能够不需要存储。因此在解码之前,必须熟悉编码格式,才能解码。在3.2.2节,我讲到了解码的原理,给出了具体的编码格式。3.3.1同步码的识不思路解码需要注意的是:因无线接收干扰大,因此不适用中断处理解码程序,因此软件设计中采纳查询方式进行解码。图3-9为同步码流程图。初始化:选定时器0方式1,置位P1.7,选工作寄存器1开始延时2.5ms时刻P3.2=0?NY写T0操纵字,限时7.5ms,清零TF0,置位TR0,开始计数P3.2=0?NYTF0=1?YN读出现在TH0,TL0推断同步码高电平宽度150µs~300µs吗?NYP3.2=1?NTF0=1?NYY读出现在TH0,TL0推断同步码低电平宽度大于6ms吗?同步码已检测到了,清零P1.7灯亮起来YN图3-9同步码流程图为了理解解码程序的方法,那个地点我重点介绍一下检测同步码的思路与程序,因为后面附录的程序也是按着类似的思路和方法来编写的。同步码检测的汇编源程序:ORG0000AJMPMAINMAIN:MOVTMOD,#1;选定时器T0,方式1SETBP1.7;使灯不亮MOVPSW,#08H;选工作寄存器1区MOVR6,#50;延时2.5ms的时刻,防止刚上电的干扰信号DEL1:MOVR7,#50DEL0:DJNZR7,DEL0DJNZR6,DEL1AGAIN:JNBP3.2,$;等待接收有效信号CLRTF0;关T0溢出标志位MOVTH0,#0F6H ;限时7.5ms的时刻,超时为误码MOVTL0,#3BHSETBTR0;置1运行标志位,开始定时AA3:JNBP3.2,AA2JBTF0,EXIT;溢出,则重新检测同步码头AJMPAA3EXIT:CLRTF0AJMPAGAINAA2:MOVA,TH0CJNEA,#0F6H,AGAIN/*CLRP1.7;灯在这亮起来,而且置1后依旧是亮的*/MOVA,TL0CLRCCJNEA,#9FH,$+3JNCAGAIN;太宽,大于300us,退出CLRCCJNEA,#6DH,$+3JCAGAIN;太窄,小于150us,退出AA5:JBP3.2,AA4JBTF0,EXITAJMPAA5AA4:CLRTR0CLRTF0MOVA,TH0CJNEA,#0FEH,BB0/*CLRP1.7*/MOVA,TL0CLRCCJNEA,#0BH,$+3JCAGAIN;同步码小于6ms,退出LJMPDISPLAYBB0:CJNEA,#0FFH,AGAINDISPLAY:CLRP1.7 CPLP3.3LJMPAGAINEND3.3.2主程序流程图开始开始初始化:DATDA0=0,选定时器T0,方式1,指示灯不亮有学习键按下吗?5S后,学习键还按下吗?YN指示灯亮起Y调用解码程序,有溢出或中途误码吗?置为P1.7,使灯灭掉,存储此次的键值到程序存储单元KEYDATANNY调用解码程序,有溢出或误码吗?NNY保留本次的键值在存储单元DATA0CPLP3.3继电器做取反动作来操纵设备的灯泡KEYDATA=DATA0?YNWW图3-10主程序流程图3.3.3子程序流程图开始开始YN同步码高电平在150µs-300µs之间吗?清TF0,T0初始化,同步码限时8.5ms,置位TR0=1P3.2=1?TF0=1?YNYNP3.2=0?YTF0=1?NYN清TR0,清TF0同步码宽度大于6ms?YNNEXTPAGE地址码检测P3.7=0?NWWYDECODE图4-11子程序流程图(同步码的检测子程序)NEXTPAGENEXTPAGE地址码检测NUM1=16码字清零TF0,初始化T0,TH0=0FEH,TL0=6FH定时1200us,置位TR0,开始计数P3.2=0?NNTF0=1?DECODEYNY把TH0送A,0FEH为窄脉冲,0FFH为宽脉冲A=0FEH?Y窄脉冲在150us~300us之间吗?YNA=0FFH?YNDECODE宽脉冲在500us~850us之间吗?YNP3.2=1?NTF0=1?NY清零TR0,TF0高低电平总宽度大于750us?YNNUM1-1=0?YNBB1NEXTPAGE,数据码检测BB1图3-12子程序流程图(16位地址码的检测子程序)NEXTPAGE,数据码检测NEXTPAGE,数据码检测NUM2=8位码字清零TF0,初始化T0,限时1200us,置位TR0P3.2=0?YTF0=1?DECODEYN把A=TH0,0FFH为宽脉冲,0FEH为窄脉冲A=0FEH?YNA=0FFH?NDECODEY窄脉冲在150us~300us之间?吗?YNC=0宽脉冲在500us~850us之间吗?YNC=1DATA0—>A,RLCADATA0<—A,存储数据位P3.2=1?NTF0=1?NYY清零TF0.TR0CONTINUECC0N图3-13(a)子程序流程图(8位数据码的检测子程序)CONTINUECONTINUE高低电平总宽度大750us?YNDECODENUM2-1=0?CC0NYRET图3-13(b)子程序流程图(8位数据码的检测子程序)3.3.4主程序流程图分析图3-10为主程序流程分析图,把同步码和地址码以及数据码的检测程序作为一个子程序;图3-11到图3-13(a)、(b)为解码子程序。STC12CXXXX系列单片机解码源程序:主程序:DAT0EQU30HNUM1EQU45HNUM2EQU46HKEYDATAEQU48HORG0000AJMPMAINMAIN:MOVTMOD,#1SETBP1.7;灯不亮SETBP3.3MOVPSW,#08HMOVR6,#50;延时2.5ms的时刻;防止刚上电带来的脉冲干扰DEL1:MOVR7,#50DEL0:DJNZR7,DEL0DJNZR6,DEL1WAIT:NBP3.7,CONT;等待学习键按下MOVR5,#200DEL7:MOVR6,#200;延时5s的时刻,看学习键是否是干扰信号DEL6:MOVR7,#125DEL5:DJNZR7,DEL5DJNZR6,DEL6DJNZR5,DEL7JBP3.7,WAITCLRP1.7;灯亮,学习键按下有效LCALLDECODEMOVA,DAT0MOVKEYDATA,ASETBP1.7;灯灭掉,存储键值成功MOVR5,#200DEL4:MOVR6,#100;延时1.5s的时刻,等待上一次的按键释放DEL3:MOVR7,#100DEL2:DJNZR7,DEL2DJNZR6,DEL3DJNZR5,DEL4CONT:LCALLDECODEDISPLAY:MOVA,DAT0CJNEA,KEYDATA,AA0CPLP3.3;被控设备的灯会亮AA0:LJMPWAIT……….子程序…………………DECODE:MOVNUM2,#10H;此处开始为解码程序,地址码16位JNBP3.7,WAITJNBP3.2,$CLRTF0MOVTH0,#0F6H;限时7.5ms的时刻,超时为误码MOVTL0,#3BHSETBTR0AA3:JNBP3.2,AA2JBTF0,EXITAJMPAA3EXIT:CLRTF0AJMPDECODEAA2:MOVA,TH0CJNEA,#0F6H,DECODEMOVA,TL0CLRCCJNEA,#9FH,$+3JNCDECODE;太宽,大于300us,退出CLRCCJNEA,#6DH,$+3JCDECODE;太窄,小于150us,退出AA5:JBP3.2,AA4JBTF0,EXITAJMPAA5AA4:CLRTR0CLRTF0MOVA,TH0CJNEA,#0FEH,BB0MOVA,TL0CLRCCJNEA,#0BH,$+3JCDECODE;同步码小于6ms,退出BB0:CJNEA,#0FFH,DECODELOOP1:CLRTF0MOVTH0,#0FEH;限时1200usMOVTL0,#6FHSETBTR0AA7:JNBP3.2,AA6JBTF0,EXIT1;超过间隔1200us,误码AJMPAA7EXIT1:LJMPDECODEAA6:MOVA,TH0CJNEA,#0FEH,AA8MOVA,TL0CLRCCJNEA,#0A1H,$+3JCDECODE;地址码窄脉冲太窄,小于150us退出CLRCCJNEA,#0D3H,$+3JNCEXIT1;地址码太宽,大于300us,退出AJMPAA10AA8:CJNEA,#0FFH,DECODEMOVA,TL0CLRCCJNEA,#021H,$+3JCEXIT1;宽脉冲小于534us,退出CLRCCJNEA,#8AH,$+3JNCEXIT1;宽脉冲太宽,大于850us,退出AA10:JBP3.2,AA9;等待高电平JBTF0,EXIT4AJMPAA10EXIT4:CLRTF0LJMPDECODEAA9:C

温馨提示

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

评论

0/150

提交评论