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

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/2315084.html】到电脑端继续下载(重复下载【60天内】不扣币)。

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

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(单片机遥控控制酒店客房灯光系统-secret.doc)为本站上传会员【a199****6536】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

单片机遥控控制酒店客房灯光系统-secret.doc

1、精品文档就在这里 -------------各类专业好文档,值得你下载,教育,管理,论文,制度,方案手册,应有尽有-------------- -------------------------------------------------------------------------------------------------------------------------------------------- 单片机遥控控制酒店客房灯光系统 摘 要:本文通过老式酒店客房灯光控制系统进行改造,将原机的机械开关控制改为单片机红外线遥控控制,说明了单片机在现代酒店灯光智

2、能控制中的适用性、灵活性、先进性。通过对客房灯光控制电路改造后,大大提高了客人的使用舒适感,使酒店的硬件设施提高了一个台阶。 关键字:单片机 遥控 客房灯光 前言:酒店原有的智能控制系统较周边新开张酒店相比,已跟不上潮流,失去竞争能力。例如原来酒店客房灯光控制系统均采用TCL2.0系列产品,房间的电视、台灯、地灯、鱼缸照明、夜灯、廊灯、吧台灯等开关与床头灯调光开关均集中安装在床头柜处(如图1)。由于开关较多且固定在床头柜侧面,客人想开灯时必须先看清开关下面的标记才能正确开灯,有时为开一盏灯竟把所有的开关都按了一遍,使用时极为不便。现在大多数星级酒店都采用微动开关轻触式集中控制面板,安装在床

3、头柜的正上方。虽然较以前直观,但是开关多且固定仍不是十分方便。本人采用8051系列单片机将原来固定的机械式开关改用遥控控制,这样一个遥控器就可以控制整个房间的灯光开启,电源控制箱可以放在床头柜内;遥控器在放置在床头柜上,可以任意移动,还可以在遥控面板中间加装一液晶时钟(如图2所示)。美观且实用即大方便客人的使用。 图1 老式控制柜 图2 新式遥控发射器 一  硬件电路的设计 1、  遥控发射电路 如图3所示,为该系统遥控发射器电原理图,其中P1口作为键盘扫描端口,具有16个操作键,可分别控制单片机发出16种不同脉冲,执行16种操作。第9脚为单片机的复位脚,采用RC上电复位

4、电路;15脚作为红外线遥控码的输出口,用于输出38KHz载波编码。脉冲经9013放大然后由红外发射管输出;18、19脚接12M晶振。P1.4—P1.7需接上拉电阻。 图3 遥控发射电路图 2、  遥控接收电路 如图4所示,为该系统遥控接收电原理图,其中P1.0—P1.2口作为数码管的二进制数据输出,显示数字为“0—7”,“0”表示最暗,“7”表示最亮,采用带锁存功能的七段译码电路74HC4511集成块译码显示数值。4511的LE端接8051的30脚(地址锁存允许控制); P0.0—P0.7以及P2.2—P2.7作为14个电器的电源控制输出,接口用继电器隔离输出。P2.0口为调光脉

5、冲输出,输出脉冲由三极管9012放大后经光电耦合器MOC3021驱动双向可控硅控制负载;P3.0口为交流50Hz同步检测输入。系统对市电进行变压、整流、并经施密特触发器整形后得到100Hz的方波(周期10ms),作为发送调光脉冲的同步信号,系统采用10ms为一个“单位时间”的长度,灯的亮度越高,则可控硅导通时间的占空比越大;P3.1口为红外遥控码输入,采用集成红外线接收路SFH506-38,此集成元件体积小、抗干扰性好、灵敏度高、并且价格低廉。它仅有三个脚,分别是电源正极、电源负极以及信号输出端,其工作电压为5V左右,它的主要功能包括放大、选频、解调几大部分,要求输入是已经被调制的信号,经过它

6、的接收放大和解调会在输出端直接输出原始信号至P3.1脚。这款红外线接收电路接收距离可以达8米左右,完全可以满足客房内的遥控距离(一般客房标准间都在30平米左右);P3.2脚为外部中断0输入脚,采用下降沿触发,当有信号时,第一位码的低电平启动中断程序,实时接收数据帧。第9脚为单片机的复位脚,采用RC上电复位电路;18、19脚接12M晶振。 图4 遥控接收电路图 二 系统的遥控功能实现方法 1、  遥控编码格式 该遥控器采用脉冲个数编码,不同的脉冲个数代表不同的码,最小为2个脉冲,最大为17个脉冲。为了使接收可靠,第一位码宽为3ms,其余为1ms,遥控数据帧间隔大于10ms,如图5所

7、示。 图5 遥控脉冲编码图 2、  遥控码的发射 当某个操作键按下时,单片机先读出该键值,然后根据键值设定的遥控脉冲个数,再调制成38KHz的方波由红外线发射管发射出去。P3.5端口的输出调制波如图5所示。 3、  数据帧的接收处理 当红外线接收器输出脉冲帧数据时,第一位码的低电平将启动中断程序,实时接收数据帧。在数据接收时,先对第一位(起始位)码的码宽进行验证。若第一位低电平码的脉宽小于2ms,将作为错误码处理;否则认为是起始码,累加器A加1。当间隔位的高电平大于3ms时,结束接收,然后根据累加器A中的脉冲个数,执行相应的输出操作。图6为红外线接收器输出的一帧遥控码波形图。

8、 图6 一帧遥控码波形图 三 遥控发射及接收控制程序流程图 1、  遥控发射程序控制流程图 图7 遥控发射控制流程图 2、  遥控接收程序控制流程图 图8 遥控接收控制流程图 四 主要程序分析 1、  键盘扫描程序 本电路采用4×4矩阵式键盘电路,共16个按健开关可发送16种编码指令。首先将立即数#0F0H送至P1口,再读入P1口值与#0F0H相比较,相等则说明没有键按下,返回。不相等则表示有键按下,再调用延时消抖程序,确认有键按下。转至行扫描程序确认按键所在的行,并将R2赋行号初值,然后调用列扫描程序确认按键所在例号。例号与行号初值相加即得按键号(送寄存器A

9、 KEYWORK:  MOV      P1,#0F0H      ;置P1口输入状态   MOV      A,P1        ;读入P1口值    MOV      B,A      ;P1口值暂存B中 CJNE    A,#0F0H,KEYHIT  ;不等于#0FFH,转KEYHIT(有键按下) KEYOUT:      RET           ;没有键按下返回; KEYHIT:      LCALL     DL10MS      ;延时去抖动          MOV        A,P1      ;再读入P1口值至A          CJNE  

10、  A,B,KEYOUY    ;A不等于B(是干扰),子程序返回     SETB     P1.1       ;有键按下,找键号开始,查0行    SETB      P1.2    SETB      P1.3    MOV     A,P1      ;读入P1口值 CJNE    A,#0FEH,KEYVAL0  ;P1不等于#0FEH,按下键在第0行    SETB     P1.0      ;不在第0行,开始查1行    CLR      P1.1    MOV     A,P1      ;读入P1口值 CJNE    A,#0FDH,KEYVAL1  ;

11、P1口不等于#0FDH,按下键在第1行    SETB     P1.1      ;不在第1行,开始查2行    CLR     P1.2    MOV     A,P1       ;读入P1口值 CJNE    A,#0FBH,KEYVAL2  ;P1口不等于#0FBH,按下键在第2行    SETB     P1.2      ;不在第2行,开始查3行    CLR       P1.3    MOV      A,P1      ;读入P1口值 CJNE    A,#0F7H,KEYVAL3  ;P1口不等于#0F7H,按下键在第3行          LJMP  

12、 KEYOUT       ;不在第3行,子程序返回 KEYVAL0:      MOV      R2,#00H   ;按下键在第0行,R2赋行号初值0         LJMP     KEYVAL4      ;跳到KEYVAL4 KEYVAL1:     MOV      R2,#04H   ;按下键在第1行,R2赋行号初值4         LJMP     KEYVAL4   ;跳到KEYVAL4         .         . KEYVAL4:    MOV     DPTR,#KEYVALTAB ;翻译成连续数字         MOV       B,

13、A      ;P1口值暂存B内         ANL     B,#0F0H    ;取高四位         MOV     R0,#0     ;清R0 KEYVAL5:      MOV      A,R0      ;查列号开始,R0数据放入A         SUBB     A,#04H     ;A中数减4         JNC     KEYOUT       ;借位C为0,查表出错,返回         MOV         A,R0      ;查表次数小于4,继续查,         MOVC     A,@A+DPTR     ;查列号表    

14、     INC     R0       ;R0加1         CJNE    A,B,KEYVAL5   ;查得值和P1口值不等,转KEYVAL5再查         DEC     R0       ;查得值和P1口值相等,R0减1 MOV      A,R0      ;放入A(R0中数值即为列号值) ADD       A,R2       ;与行号初值相加成为键号值(0-15) KEYVALTAB:    DB  0E0H,0D0H,0B0H,07H    ;列号对应数据表 ;对应列号:      0   1   2   3 2、  键号处理程序 根据寄器A中

15、的键号,首先执行A×3程序,(因为以下所执行的长跳转指令“LJMP”为3字节指令)然后使用散转指令“JMP A,@A+DPTR”跳到相应的程序标号。各键号相应的程序标号均为一条长跳转指令,各跳转指令均指向与之相应的红外线脉冲赋值程序,最后跳转至脉冲发送程序,发出与键号相对应的脉冲。 MOV       B,A      ;键号乘3处理用于JMP散转指令          RL     A       ;键号乘3处理用于JMP散转指令            ADD       A,B      ;键号乘3处理用于JMP散转指令          MOV        DPTR,#KEYF

16、UNTAB ;取散转功能程序(表)首址          JMP    @A+DPTR      ;散转至对应功能程序标号 KEYFUNTAB:    LJMP      KEYFUN00    ;跳到键号0对应功能程序标号        LJMP    KEYFUN01    ;跳到键号1对应功能程序标号        . .     .        LJMP     KEYFUN15    ;跳到键号15对应功能程序标号        RET KEYFUN00:     MOV      A,#02H      ;发2个脉冲         LJMP     REM

17、OTE        ;转发送程序         RET KEYFUN01:     MOV      A,#03H      ;发3个脉冲         LJMP     REMOTE      ;转发送程序         RET                       .         .         . KEYFUN15:     MOV      A,#11H      ;发17个脉冲         LJMP     REMOTE      ;转发送程序       RET 3、38KHz载波及编码脉冲发射程序 本系统所用的红外线接收集成电路

18、SFH506-38的解调中心频率为38KHz,故发射频率也采用38KHz,通过定时器中断程序实现,每次溢出中断时对P3.5取反,输出38KHz载波。      计算得周期为26.3us,则定时器设定为模式2,初值为(256-13)=0F3H。利用1ms与3ms延时程序控制定时器的启停,从而控制P3.5发出相应的脉冲。并根据寄存器A中的脉冲个数确定发送次数。 MOV      IE,#00H   ;关所有中断         MOV     TMOD,#20H    ;8位自动重装初值模式         MOV     TH1,#0F3H    ;定时为13微秒初值       

19、  MOV     TL1,#0F3H    SETB     EA        ;开总中断允许 INTT1:       CPL      P3.5        ;38kHZ红外线遥控信号产生            RETI              ;中断返回 REMOTE:      MOV      R1,A        ;装入发射脉冲个数         LJMP     OUT3        ;转第一个码发射处理 OUT:       MOV      R0,#64H   ;1MS宽低电平发射控制数据 OUT1:       SETB      ET1  

20、     ;开T1中断         SETB     TR1        ;开启定时器T1         NOP               ;延时         NOP         NOP         NOP         NOP         DJNZ     R0,OUT1   ;时间不到转OUT1再循环         MOV     R0,#3CH   ;1MS高电平间隙控制数据 OUT2:       CLR      TR1        ;关定时器T1         CLR     ET1        ;关T1中断        

21、 CLR     P3.5        ;关脉冲输出         NOP             ;空操作延时         NOP         NOP         NOP         NOP         NOP         NOP         NOP         NOP         NOP         NOP         DJNZ     R0,OUT2     ;时间不到转OUT2再循环         DJNZ     R1,OUT         ;脉冲未发完,转OUT再循环发射         LCALL 

22、  DL500MS               RET        OUT3:       MOV      R0,#0FFH     ;装发谢3MS宽控制数据         LJMP     OUT1        ;转OUT1 4、遥控接收及处理程序 采用中断接收,经过红外线接收集电路SFH506接收处理后的脉冲信号送至P3.1与P3.2(中断输入脚,采用低电平触发),当接收到第一个低电平时将启动中断程序,实时接收数据帧,接收程序首先采用8us循环计时程序对第一位码(起始码)的码宽进行验证,当计时大于8×255=2040us时则认为是起始码,开始对输入的脉冲进行计数与校验,

23、将计数值送到累加A中。脉冲高电位大于设定时间513×6=3072us时则结束接收,然后根据累加器中的脉冲个数,跳转至相应的操作子程序。2——15个脉冲所对应程序分别控制每盏灯的开关,通过将相应输出端口取反方法,从而控制了灯的亮灭,系统上电时所有输出I/O口均为“1”(高电平)外接晶体管均无输出,当某个按键按下时,程序将相应端口取反,输出为“0”(低电平)外接晶体管放大后,驱动继电器继合亮灯。再次按下该键时,程序再次将该相应端口取反,输出为“1”关灯,如此便控制了每一路灯的亮、灭。16、17个脉冲为亮度调整信号,接收到该脉冲信号时,将P1口加“1”(调亮)或减“1”(调暗),然后再调亮度调整程序

24、亮度调整程序根据P1口的值确定灯的亮度。 INTEX0:      CLR      EX0      ;关外中断         JNB     P3.1,READ1   ;P3.1口为低电平转READ1 READOUTT0: SETB      EX0      ;P3.1口为高电平开中断(系干扰)         RETI              ;退出中断 READ1:      CLR      A         ;清A         MOV     DPH,A     ;清DPTR         MOV     DPL,A     HARD1:     

25、 JB       P3.1,HARD11  ;P3.1变高电平转HARD11         INC     DPTR      ;用DPTR对低电平计数         NOP             ;1微秒延时         NOP         NOP         AJMP     HARD1    ;转HARD1循环(循环周期为8微秒) HARD11:      MOV      A,DPH     ;DPTR高8位放入A         JZ      READOUTT0 ;为0(脉宽小于8*255=2毫秒)退出         CLR     A    

26、  ;不为0,说明是第一个宽脉冲(3毫秒) READ11:      INC      A      ;脉冲个数计1 READ12:      JNB      P3.1,READ12    ;低电平时等待         MOV     R1,#06H    ;高电平宽度判断定时值 READ13:      JNB      P3.1,READ11  ;变低电平时转READ11脉冲计数         LCALL    DELAY     ;延时(512微秒)         DJNZ     R1,READ13   ;6次延时不到转READ13再延时         DEC 

27、    A       ;超过3毫秒判为结束,减1         DEC     A       ;减1         JZ      FUN0     ;为0执行FUN0(2个脉冲)         DEC     A       ;减1 . . . FUN0:       CPL      P0.0     ;P0口各端口开关输出控制         LJMP     READOUTT0   ;转中断退出 FUN1:       CPL      P0.1              LJMP     READOUTT0  . . . FUN14:   

28、  INC      P1         MOV     A,P1         CJNE     A,#00H,OUTT0   ;不等转OUTT0(显示值大于7)         MOV     P1,#0FFH     ;放回P1(显示值为7) OUTT0:      LCALL      LOOP         ;亮度调整         LJMP     READOUTT0     ;中断退出         FUN15:      DEC      P1         ;P1口值减1         MOV     A,P1        ;移入A     

29、    CJNE     A,#0F7H,OUTT1  ;不等转OUTT1(显示值小于0)              MOV     P1,#0F8H     ;放回P1(显示值为0) OUTT1:      LCALL     LOOP    ;亮度调整         LJMP     READOUTT0      ;中断退出 . . . 5、  调光程序 系统调光电路采用双向可控硅,利用它的“过零自动关闭”特性,AT89C51只需在每个交流信号的1/2周期(10ms)内控制可控硅打开的时刻,由于交流电过零点时可控硅自动关断,即间接控制了灯光的亮度。上电时,首先调用调光程

30、序,根据P1口值设定延时值并放在寄存器B中。再根据P3.0输入的交流同步信号,确定调光脉冲的发送时间,当交流信号过零时调用调光程序,调光程序根据寄存器B中的值确定延时次数(每次延时512us)从而确定调光脉冲的发送时间,延时到P2.0置“0”经过外接晶体管反向放大后经光电耦合器隔离驱动双向可控硅导通的时间,当交流信号再次过零时,双向可控硅自动关闭,再次调用调光程序。这样便控制了双向可控硅的导通时间,从而达到调光的目的。 START:      LCALL     CLEARIO      ;上电初始化         LCALL    LOOP       ;调用调光控制程序 MAIN:

31、       JB       P3.0,MAIN   ;50HZ交流电未过零转MAIN         LCALL    DLX    ;过零点时调用延时子程序(延时可变)         CLR     P2.0        ;发调光脉冲         LCALL    DELAY       ;持续512微秒         SETB     P2.0        ;关调光脉冲          LJMP   MAIN       ;转MAIN循环 DLX:       MOV      R2,B         ;置延时初值 DLX1:       LCALL   

32、  DELAY       ;调512微秒延时子程序         DJNZ     R2,DLX1      ;循环控制         RET              ;返回 LOOP:       MOV      A,P1      ;读入P1口值         SUBB     A,#0FFH      ;比较         JZ        LOOP7       ;值为#0FFH(显示7)时转LOOP7         MOV     A,P1             SUBB     A,#0FEH             JZ        LOO

33、P6       ;值为#0FEH(显示6)时转LOOP6 MOV      A,P1      . . . RET LOOP7:      MOV      B,#01H     ;设置延时值#01H(最亮)         RET              ;返回 LOOP6:      MOV      B,#02H     ;设置延时值#02H(次亮)         RET              ;返回 LOOP5:      MOV      B,#04H     . . .          RET 6、  延时子程序 采用循环结构实现5

34、13微秒、10微秒、500微秒延时功能。 DELAY:    MOV       R2,#0FFH     ;513微秒延时程序 DELAY1:    DJNZ       R2,DELAY1          RET DL10MS:    MOV       R3,#14H      ;10毫秒延时程序 DL10MS1:   LCALL      DELAY        DJNZ       R3,DL10MS1          RET DL500MS:   MOV       R4,#32H       ;500毫秒延时程序 DL500MS1:   LCALL    

35、  DL10MS        DJNZ       R4,DL500MS1 RET 五、系统调试 上电,测试发送板单片机各IO口电平,P3.5、P1.0、P1.1、P1.2、P1.3均为低电平,其余均为高电平,表明单片机上电复位正常,且程序运行正常。然后用万用表毫伏档测量红外线发射管两端,同时按各输入键,表针应有左右摆动现像,则表明键扫描程序与红外线发射程序运行正常,且在发射红外线脉冲。 接收电路上电时,数码管显示“7”各继电器及可控硅均无输出。遥控信号输入脚P3.1应高电平。则表明单片机上电复位正常,外围电路接线正确。然后将发射板红外线发射管对准接收电路,按压输入键,同时用万用表

36、测量P3.1脚,应有轻微摆动。红外脉冲接收正常。且相应输出继电器应动作,或调光电路应正确动。如无动作或万用有针无摆动,可以稍为改动发射脉冲频率,将定时器初值改为(0FFH-12)=0F4H对应发射频率为41.7KHz或(0FFH-13)=0F3H对应发射频率为38.5KHz,因为红外线发射与接收电路的中心频率相差1KHz时大都能正常遥控,相差2KHz以上会出现遥控失灵现象。大多晶振或接收电路都有一定的频率偏差,我们可以调整定时器的初值来稍为改动发射频率或换用12M晶振,直到能够接收为止。调光程序调试,按调光键,调至显示“0”,此时灯为最暗,应熄灭。否则可以改变调光程序中寄存器B中的值,加长或减

37、少延时时间,使灯能在最低亮度时能正常熄灭,最高亮度时能达最大亮度。按本程序中的值,实测数据如下。 延时子程序为512us,电源交流电压227V 灯光亮度显示 负载电压(60W) 灯光亮度显示 负载电压(60W) 0 2V 4 102V 1 20V 5 135V 2 47V 6 168V 3 73V 7 216V 六、结束语 通过此次改造,利用单片机遥控控制房间灯光取得了良好的效果,使酒店的硬件服务水平提高了一个台阶。同时也应总结经验,逐步完善客房灯光智能控制,例如可以增加房间灯具的自动巡检与电脑联网功能,灯具故障即可自动发出报修信号,服务人员可

38、以通过主服务器方便的了解各个房间电气设备工作情况,即提高了工作效率又方便管理。也体会到我的知识面还是很狭窄,作为从事电气工作的技术人员,在学好本专业的基础前提下,还要不断的学习其他领域的科学技术知识,拓宽自己的知识面,才能胜任新设备、新技术的工作,更好发挥本专业的作用。 本人因水平、经验有限,文中难免有错漏以及不足之处,恳请专家、教授及同行批评指正。 七、附录 1、  遥控发射电路原理图 附图一 遥控发射电路原理图 2、遥控接收电路原理图 附图二 遥控接收电路原理图 3、遥控发送控制器程序                                     

39、ORG   0000H        ;程序执行开始地址            AJMP      START        ;跳至START执行                 ORG      001BH        ;定时器T1中断入口地址            LJMP     INTT1       ;跳至INTT1中断服务程序    CLEARIO:      MOV      P0,#0FFH      ;P0-P3口置1          MOV      P1,#0FFH             MOV     P2,#0FFH            

40、 MOV     P3,#0FFH             CLR     P3.5        ;关遥控输出 CLEARMEM:  MOV      SP,#70H       ;设堆栈基址为70H         MOV     IE,#00H   ;关所有中断         MOV     TMOD,#20H     ;8位自动重装初值模式         MOV     TH1,#0F3H    ;定时为13微秒初值         MOV     TL1,#0F3H            SETB    EA        ;开总中断允许          

41、RET              ;返回 START:       LCALL     CLEARIO      ;调用初始化子程序; MAIN:       LCALL     KEYWORK      ;主体程序。调用查键子程序          LJMP     MAIN       ;转MAIN循环          NOP                ;PC值出错处理          NOP          NOP          LJMP      START      ;重新初始化 INTT1:       CPL      P3.5        ;40

42、kHZ红外线遥控信号产生            RETI              ;中断返回 KEYWORK:  MOV      P1,#0F0H      ;置P1口输入状态   MOV      A,P1        ;读入P1口值    MOV      B,A      ;P1口值暂存B中 CJNE    A,#0F0H,KEYHIT  ;不等于#0FFH,转KEYHIT(有键按下) KEYOUT:      RET            ;没有键按下返回; KEYHIT:      LCALL     DL10MS      ;延时去抖动         

43、MOV        A,P1       ;再读入P1口值至A          CJNE     A,B,KEYOUY    ;A不等于B(是干扰),子程序返回     SETB     P1.1       ;有键按下,找键号开始,查0行    SETB      P1.2    SETB      P1.3    MOV     A,P1       ;读入P1口值 CJNE    A,#0FEH,KEYVAL0  ;P1不等于#0FEH,按下键在第0行    SETB     P1.0       ;不在第0行,开始查1行    CLR      P1.1    M

44、OV     A,P1       ;读入P1口值 CJNE    A,#0FDH,KEYVAL1  ;P1口不等于#0FDH,按下键在第1行    SETB     P1.1       ;不在第1行,开始查2行    CLR      P1.2    MOV     A,P1      ;读入P1口值 CJNE    A,#0FBH,KEYVAL2  ;P1口不等于#0FBH,按下键在第2行    SETB     P1.2      ;不在第2行,开始查3行    CLR       P1.3    MOV      A,P1      ;读入P1口值 CJNE   

45、A,#0F7H,KEYVAL3  ;P1口不等于#0F7H,按下键在第3行          LJMP   KEYOUT       ;不在第3行,子程序返回 KEYVAL0:      MOV      R2,#00H   ;按下键在第0行,R2赋行号初值0         LJMP     KEYVAL4      ;跳到KEYVAL4 KEYVAL1:     MOV      R2,#04H   ;按下键在第1行,R2赋行号初值4         LJMP     KEYVAL4   ;跳到KEYVAL4 KEYVAL2:     MOV      R2,#08H   ;按

46、下键在第2行,R2赋行号初值8         LJMP     KEYVAL4      ;跳到KEYVAL4 KEYVAL3:      MOV      R2,#0CH    ;按下键在第3行,R2赋行号初值12          LJMP     KEYVAL4      ;跳到KEYVAL4 KEYVAL4:    MOV     DPTR,#KEYVALTAB ;翻译成连续数字         MOV       B,A      ;P1口值暂存B内         ANL     B,#0F0H    ;取高四位         MOV     R0,#0   

47、  ;清R0 KEYVAL5:      MOV      A,R0      ;查列号开始,R0数据放入A         SUBB     A,#04H     ;A中数减4         JNC     KEYOUT       ;借位C为0,查表出错,返回         MOV         A,R0      ;查表次数小于4,继续查,         MOVC     A,@A+DPTR     ;查列号表         INC     R0       ;R0加1         CJNE    A,B,KEYVAL5    ;查得值和P1口值不等,转KEY

48、VAL5再查         DEC     R0       ;查得值和P1口值相等,R0减1         MOV     A,R0      ;放入A(R0中数值即为列号值)            ADD       A,R2       ;与行号初值相加成为键号值(0-15)            MOV       B,A      ;键号乘3处理用于JMP散转指令          RL     A       ;键号乘3处理用于JMP散转指令            ADD       A,B      ;键号乘3处理用于JMP散转指令          MOV 

49、      DPTR,#KEYFUNTAB ;取散转功能程序(表)首址          JMP    @A+DPTR      ;散转至对应功能程序标号 KEYFUNTAB:    LJMP      KEYFUN00      ;跳到键号0对应功能程序标号          LJMP    KEYFUN01    ;跳到键号1对应功能程序标号          LJMP    KEYFUN02    ;跳到键号2对应功能程序标号          LJMP    KEYFUN03    ;跳到键号3对应功能程序标号          LJMP      KEYFUN04   

50、跳到键号4对应功能程序标号          LJMP      KEYFUN05    ;跳到键号5对应功能程序标号          LJMP      KEYFUN06    ;跳到键号6对应功能程序标号          LJMP      KEYFUN07    ;跳到键号7对应功能程序标号          LJMP      KEYFUN08    ;跳到键号8对应功能程序标号          LJMP      KEYFUN09    ;跳到键号9对应功能程序标号          LJMP      KEYFUN10    ;跳到键号10对应功能程序标号

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服