1、 摘要89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的89C51是一种高效微控制器,89C2051是它的一种精简版本。89C单片机为很多嵌入式控制系统提供了一
2、种灵活性高且价廉的方案。现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机。手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都配有1-2部单片机。而个人电脑中也会有为数不少的单片机在工作。汽车上一般配备40多部单片机,复杂的工业控制系统上甚至可能有数百台单片机在同时工作!单片机的数量不仅远超过PC机和其他计算的综合,甚至比人类的数量还要多。现在可以说单片机是百花齐放,百家争鸣的时期,世界上各大芯片制造公司都推出了自己的单片机,从8位、16位到32位,数不胜数,应有尽有,有与主流C51系列兼容的,也有不兼容的,但它们各具特色,互成互补,为单片机的应用提供广阔的天地。
3、台灯是最普遍的家用照明器,随着节能计划的提出,许多电子产品走上节能化。台灯传统对于人们伤害很大,市面上所谓的护眼灯,实际上是用高频电子镇流器将原本50赫兹提高到5万赫兹,肉眼分辨不出来频闪。实际上是高频闪的,危害更大。本文设计了一种基于89C2051的节能台灯,并且作出了零件图和设计图.关键词:89C51 单片机 台灯 节能 目录. .1 绪论. .21、1 设计内容及要求31、2设计构思31、3系统组成及电路设计:41、4 总体电路图52、1 89C51单片机62、1、1 结构特点62、1、3 AT89C51单片机的管脚说明82、1 传感器及信号处理电路112、1、1 热释电红外传感器的结构
4、组成及工作原理122、1、3 光敏电阻152、2 计时提醒电路172、2、1 基本原理182、2、4 计时提醒电路的仿真结果20附录21 绪论随着科学技术的不断发展和进步,生产与自动化的观念逐渐深入人心。生产与加工过程离不开产品的开发与设计,在生产自动化大幅度提升生产效率的同时,设计自动化也正迎头赶上。单片机是嵌入式系统的独立发展之路,向MCU阶段发展的重要因素,就是寻求应用系统在芯片上的最大化解决;因此,专用单片机的发展自然形成了SoC化趋势。随着微电子技术、IC设计、EDA工具的发展,基于SoC的单片机应用系统设计会有较大的发展。因此,对单片机的理解可以从单片微型计算机、单片微控制器延伸到
5、单片应用系统。1971年intel公司研制出世界上第一个4位的微处理器;Intel公司的霍夫研制成功世界上第一块4位微处理器芯片Intel 4004,标志着第一代微处理器问世,微处理器和微机时代从此开始。因发明微处理器,霍夫被英国经济学家杂志列为“二战以来最有影响力的7位科学家”之一 。1976年intel公司研制出MCS-48系列8位的单片机,这也是单片机的问世。Zilog公司于1976年开发的Z80微处理器,广泛用于微型计算机和工业自动控制设备。当时,Zilog、Motorola和Intel在微处理器领域三足鼎立。20世纪80年代初,Intel公司在MCS-48系列单片机的基础上,推出了M
6、CS-51系列8位高档单片机。MCS-51系列单片机无论是片内RAM容量,I/O口功能,系统扩展方面都有了很大的提高。 第一章 设计思路1、1 设计内容及要求一、设计内容 设计一智能台灯控制器,实现照明控制系统的人性化,其功能如下:1、亮度足够时灯光关闭,在亮度不足时,有人走近自动点亮,并根据周围环境的亮度自动调节灯泡的功率;2、点亮时开始计时,计时达到一小时时发出灯光闪烁信号,提醒使用者起立活动;3、具有温度测量及显示功能。该系统由光感元件、人体感知器、时间计数器以及亮度控制器及单片机等构成。二、总体要求1、给出设计原理及整体设计思路,画出整机原理图;2、给出具体单元设计,画出单元电路,并进
7、行电路设计中相关元件值的计算;1、2设计构思台灯已是千家万户的必需生活用品,经常由于忘记关灯而造成巨大的能源浪费。当夜晚来临时,人们又摸黑去开灯,非常不方便。在这里设计了以人体红外辐射(波长为10um)传感控制电路。当人体在台灯的范围内且环境光强较弱时,自动感应开灯;用一个时间计数器显示,当人在台灯下工作学习一个小时后,台灯发出警告,让人起身活动。1、3系统组成及电路设计: 图1 系统机构图本系统组成如图一所示,主要由三部分组成:1) 传感器及信号处理电路:检测人体辐射红外信号及光强信号经过处理后变成可处理的数字信号。2) 以89C51组成的中央处理单元:处理信号并发出控制命令。3) 计时提醒
8、电路和灯光控制电路 :给出提醒信号并根据89C51给出的命令控制灯光。1、4 总体电路图 整个系统是以80C51控制下工作的。其工作过程为:由热释电传感器检测一定范围内是否有人在,当没有人时热释电传感器的2端口不会产生信号,信号处理电路和单片机都不工作。当有人靠近时,端口2发出变化缓慢、幅值小(小于1mv)的信号,该信号经过信号处理电路把不规则的波形转化成适合单片机处理的数字信号并通过INT1端口输入到单片,在此过程中同时还要通过光敏电阻进行光照强度检测,当环境光比较强时,光敏电阻阻值比较小,端口P3.3电平较低,省去了80C51处理过程。当环境光比较弱时,光敏电阻阻值变大,端口P3.3电平较
9、高,将此电平送到单片机。单片机接收到开灯信号后,发出控制信息将台灯点亮,同时通过计时提醒电路开始计时,当计时达到整点是通过扬声器发出鸣响,提醒使用者起身活动。电路图如图2所示: 图2 智能台灯电路原理图 第二章 单元电路的设计及仿真2、1 89C51单片机89C51单片机是整个系统的控制核心,它接受信号并处理后发出控制信息。 2、1、1 结构特点8位CPU; 片内振荡器和时钟电路; 32根I/O线; 外部存贮器寻址范围ROM、RAM64K; 2个16位的定时器/计数器; 5个中断源,两个中断优先级; 全双工串行口; 布尔处理器; 2、1、2 89C51单片机的主要特性 |1).与MCS-51
10、兼容 2).4K字节可编程闪烁存储器 3).寿命:1000写/擦循环 4).数据保留时间:10年 5)全静态工作:0Hz-24MHz 6)三级程序存储器锁定 7)128*8位内部RAM 8)32可编程I/O线 9)两个16位定时器/计数器 10)5个中断源 11)可编程串行通道 12)低功耗的闲置和掉电模式 13)片内振荡器和时钟电路2、1、3 AT89C51单片机的管脚说明 AT89C51单片机的管脚图3所示: 图3 AT89C51管脚图 VCC:供电电压。 GND:接地。 P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。
11、P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输
12、入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。 P3口也可作为AT89C51的一些特殊功能口,如下面
13、所示: 管脚 备选功能 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口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的
14、频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 /EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不
15、管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。2、1 传感器及信号处理电路 电路原理图如图4所示: 图4 热释电传感器信号处理电路本设计采用BISS0001来完成热释电红外传感器输出信号的处理,由于热释电传感器输出的信号变化缓慢、幅值小,不能直接作为灯泡的控制信号,因此传感器的输出信号必须经过一个专门的信号处理电路,使得传感器输出信号的不规则波形转变成适合于单片机处理
16、的数字信号。图4中,热释电传感器的输出信号送入BISS0001的14脚,经内部第一级运算放大器后,由C3耦合从12脚输入至内部第二级运算放大器放大,再经电压比较器构成的鉴幅器处理后,最后从12脚输出信号(V0)送入单片机进行照明控制。BISS0001的1脚接高电平,使芯片处于可重复触发工作方式,输出V0的延迟时间T1由外部R8和C7的大小调整;触发封锁时间T2由R9和C6的大小调整。2、1、1 热释电红外传感器的结构组成及工作原理热释电红外传感器主要是由一种高热电系数的材料,如锆钛酸铅系陶瓷、钽酸锂、硫酸三甘钛等制成尺寸为2*1mm的探测元件。在每个探测器内装入一个或两个探测元件,并将两个探测
17、元件以反极性串联,以抑制由于自身温度升高而产生的干扰。由探测元件将探测并接收到的红外辐射转变成微弱的电压信号,经装在探头内的场效应管放大后向外输出。为了提高探测器的探测灵敏度以增大探测距离,一般在探测器的前方装设一个菲涅尔透镜,该透镜用透明塑料制成,将透镜的上、下两部分各分成若干等份,制成一种具有特殊光学系统的透镜,它和放大电路相配合,可将信号放大70分贝以上,这样就可以测出1020米范围内人的行动。菲涅尔透镜利用透镜的特殊光学原理,在探测器前方产生一个交替变化的“盲区”和“高灵敏区”,以提高它的探测接收灵敏度。当有人从透镜前走过时,人体发出的红外线就不断地交替从“盲区”进入“高灵敏区”,这样
18、就使接收到的红外信号以忽强忽弱的脉冲形式输入,从而强其能量幅度。人体辐射的红外线中心波长为910-um,而探测元件的波长灵敏度在0.220-um范围内几乎稳定不变。在传感器顶端开设了一个装有滤光镜片的窗口,这个滤光片可通过光的波长范围为710-um,正好适合于人体红外辐射(10um左右)的探测,而对其它波长的红外线由滤光片予以吸收,这样便形成了一种专门用作探测人体辐射的红外线传感器。 2、1、2 BISS0001芯片BISS0001是一款具有较高性能的传感信号处理集成电路。它配以热释电红外传感器和少量外接元器件即可构成被动式热释电红外开关,故能自动快速开启各类白炙灯、荧光灯、蜂鸣器、自动门、电
19、风扇、烘干机和自动洗手池等装置,特别适用于企业、宾馆、商场、库房及家庭的过道等敏感区域,或用于安 全区域的自动灯光、照明和报警系统。BISS001的主要功能如下:为CMOS数模混合专用集成电路;具有独立的高输入阻抗运算放大器,可与多种传感器匹配进行信号处理;带有双向鉴幅器,可有效抑制干扰;内设延迟时间定时器和封锁时间定时器;结构新颖,稳定可靠,调解范围宽;内置参考电压,工作电压范围为26V。管脚功能说明BISS0001芯片的管脚分布如图5所示。 图5 BISS0001的管脚分布 2、1、3 光敏电阻 简介光敏电阻器是利用半导体的光电效应制成的一种电阻值随入射光的强弱而改变的电阻器;入射光强,电
20、阻减小,入射光弱,电阻增大。光敏电阻器一般用于光的测量、光的控制和光电转换(将光的变化转换为电的变化)。常用的光敏电阻器硫化镉光敏电阻器,它是由半导体材料制成的。光敏电阻器的阻值随入射光线(可见光)的强弱变化而变化,在黑暗条件下,它的阻值(暗阻)可达110M欧,在强光条件(100LX)下,它阻值(亮阻)仅有几百至数千欧姆。光敏电阻器对光的敏感性(即光谱特性)与人眼对可见光(0.40.76)m的响应很接近,只要人眼可感受的光,都会引起它的阻值变化。设计光控电路时,都用白炽灯泡(小电珠)光线或自然光线作控制光源,使设计大为简化。工作原理光敏电阻的工作原理是基于内光电效应。在半导体光敏材料两端装上电
21、极引线,将其封装在带有透明窗的管壳里就构成光敏电阻,为了增加灵敏度,两电极常做成梳状。用于制造光敏电阻的材料主要是金属的硫化物、硒化物和碲化物等半导体。通常采用涂敷、喷涂、烧结等方法在绝缘衬底上制作很薄的光敏电阻体及梳状欧姆电极,接出引线,封装在具有透光镜的密封壳体内,以免受潮影响其灵敏度。在黑暗环境里,它的电阻值很高,当受到光照时,只要光子能量大于半导体材料的禁带宽度,则价带中的电子吸收一个光子的能量后可跃迁到导带,并在价带中产生一个带正电荷的空穴,这种由光照产生的电子空穴对了半导体材料中载流子的数目,使其电阻率变小,从而造成光敏电阻阻值下降。光照愈强,阻值愈低。入射光消失后,由光子激发产生
22、的电子空穴对将复合,光敏电阻的阻值也就恢复原值。在光敏电阻两端的金属电极加上电压,其中便有电流通过,受到波长的光线照射时,电流就会随光强的而变大,从而实现光电转换。光敏电阻没有极性,纯粹是一个电阻器件,使用时既可加直流电压,也加交流电压。半导体的导电能力取决于半导体导带内载流子数目的多少。2、2 计时提醒电路台灯点亮时开始计时,计时达到一小时时通过蜂鸣器发出鸣响,提醒使用者起立活动。该模块的硬件部分主要由89C51单片机,LED数码管显示器组成。单片机的P0端口接有4位共阳极LED数码管显示器。数码管的8个引脚依照a、b、c、d、e、f、g、dp顺序依次与P0端口的8个引脚P0.1,P0.2,
23、P0.3,P0.4,P0.5,P0.6,P0.7相连,R是限流电阻。 4位LED数码管的共阴极引脚分别与V1V4三极管的集电极相连,三极管的基极通过限流电阻分别接在单片机P2端口的P2.0P2.3引脚上。4位数码管显示器分别由三极管控制,例如P2.0输出为低电平时,V4三极管导通,与其相连的共阳极数码管显示器开始工作;P2.0输出为高电平时,V4三极管截止,与其相连的数码管显示器停止工作。电路图如图6所示: 图6计时提醒电路原理图 2、2、1 基本原理 计时利用单片机的定时/计数器产生的中断,设置定时器T0工作在模式0的状态下,设置每隔5ms中断一次,中断20次正好1S。中断服务程序里记载着中
24、断的次数,中断200次为1秒,60秒为分,60分为一小时,24小时为一天。时钟的显示是使用4位LED数码管,其软件设计原理是:由中断产生的秒、分、小时数据, 并通过单片机的输出功能输入到数码管显示器,再通过显示器扫描程序,显示出时钟的计时时间。 2、2、2 计时功能的设计单片机实现计时功能使用了两个子程序:定时器子程序INIT_TIMER和中断服务子程序TO_INT。 其中,定时器子程序INIT_TIMER的作用是每隔5ms产生一次中断信号;中断服务子程序TO_INT的主要作用是记载中断的次数。 1、 定时器子程序INIT_TIMER定时器子程序INIT_TIMER的作用是每隔5ms产生一次中
25、断信号,它是时钟标准时间的来源和保证。定时器T0设置为工作模式0状态,定时器每隔5ms中断一次,在晶振频率为12MHz时,此5ms的初值为。该子程序见附录。2、 中断服务程序TO_INT 中断服务程序TO_INT的作用是重置定时器T0初始值,记录中断次数,并输出秒、分和小时。其中,DEDA存放5ms,SEC存放秒钟变量,MIN存放分钟变量,HOUR存放小时变量。该子程序见附录。 2、2、3 显示部分的设计 显示部分的子程序有:转换时、分子程序CONV和扫描显示子程序DISP。先通过CONV把由中断服务程序中产生的分、小时数据转换成适应LED数码管显示的数据。即进行十进制计时处理,并存入数码管显
26、示内存中(事先设置的存放显示器数据单元)。再经扫描显示子程序DISP,便能在LED数码管上显示出时间。 1、 转换时、分子程序CONV CONV的作用是将中断服务程序中产生的分、小时数据,转换成适应LED数码管显示的数据。通过执行DIV指令进行十进制计时处理,并将处理后的数据分别存入数码管显示内存BUF、BUF+1、BUF+2、BUF+3内。其中BUF、BUF+1存放小时,BUF+2、BUF+3存放分钟,与数码管显示器U1、U2和U3、U4想对应。该子程序见附录。2、 扫描显示子程序DISP 扫描显示子程序DISP的作用是动态显示送入4位LED数码管的时间数据。所谓动态扫描是指一位一位轮流点亮
27、LED数码管,每一位停留4ms左右,利用人的视觉暂留消除闪烁现象。该子程序见附录。2、2、4 计时提醒电路的仿真结果2、3 灯光控制电路 单片机对光照检测电路和传感器处理电路输出的信号进行检测,输出控制信号由单片机的P2.4输出。在室内环境光较强或光线弱但室内又无人时,P2.4输出高电平,此时三极管Q1截止,继电器J1不工作,则接在220V上的灯不亮,在室内光照较弱且传感器检测到室内有人时,则P2.4输出低电平,此时三极管Q1导通,继电器J1工作,则220V交流电通过继电器加到灯上,灯泡正常点亮。电路原理图如图6所示: 图6 灯光控制电路原理图附录;-程序初始化-;定义存放计时单元地址 BUF
28、 EQU 30H ;30H33H连续四个字节存放显示器数据 HOUR EQU 34H ;存放小时变量 MIN EQU 35H ;存放分钟变量 SEC EQU 36H ;存放秒钟变量 DEDA EQU 37H ;存放5ms计数值 ;蜂鸣器和指示灯引脚定义 SPK EQU P3.4 ;蜂鸣器控制信号 WLED EQU P1.0 ;工作指示灯引脚定义 ;程序开始执行地址 ORG 0H ;程序由地址0开始执行 JMP MAIN ORG 0BH ;定时器T0中断地址设置 JMP T0_SRV;-主程序- MIAN: ACALL BZ ;蜂鸣器连续两次鸣响一声 ACALL LED_BL ;LED闪动,表示
29、程序开始执行 ACALL INIT ;初始变量化 ACALL INIT_TIMER ;设置定时器;加载显示器初始值数据 MOV A, #0C0H MOV PO, A; 无穷循环 LOOP: ;无穷循环 ACALL CONV ACALL DISP ;扫描显示 JMP LOOP ;跳转到LOOP出执行 ;.实现计时功能的子程序. ;使用定时器T0模式0计时 INIT_TIMER: ;初始化定时器 MOV TMOD, #00000000B ;设置定时器T0工作模式为0 MOV IE, #10000010B ;启用定时器T0中断产生 MOV TL0, #(8192-5000) MOD 32 ;加载初始
30、值 MOV TH0, #(8192-5000)/ 32 SETB TR0 ;启动定时器T0开始计时 RET ;. ;中断服务程序 TO_SRV: PUSH ACC ;A值压入堆栈 MOV TL0,#(8192-5000)MOD/32 ;重加载初始值 MOV TH0, #(8192-5000)/32 INC DEDA ;加1 ;秒输出 MOV A, DEDA CJNE A,#200,TT1 ;是否1S到了 MOV DEDA, #0 ; 计时值清0 CPL WLED ; LED灯亮灭变换 INC SEC ;秒计数加1 MOV A,SEC CJNE A,#60,TT1 ;是否1min到了 ;分输出
31、INC MIN ;分计数加1 MOV SEC,#0 ;秒计数清0 MOV A, MIN CJNE A, #60,TT1 ;是否1h到了 ; 时输出 INC HOUR ; 小时计数加1 MOV MIN,#0 ; 分计数清0 MOV A, HOUR CJNE A,#24,TT1 ;是否24h到了 MOV SEC, #0 ;秒钟变量清0 MOV MIN,#0 ; 分钟变量清0 MOV HOUR,#0 ;小时变量清0 TT1: POP ACC ;将A值由堆栈取出 RETI ;.实现显示功能的子程序.CONV:;转换小时数据 MOV A, HOUR MOV B, #10 DIV AB MOV DPTR,
32、#TABLE ;查表转换 MOVC A, A+DPTR MOV BUF, A MOV A, B MOVC A, A+DPTR MOV BUF+1,A ;转换分钟数据 MOV A, MIN MOV B, #10 DIV AB MOV DPTR,#TABLE ;查表转换 MOVC A, A+DPTR MOV BUF+2, A MOV A, B MOVC A, A+DPTR MOV BUF+3,A RET;字型数据编码表TABLE: DB 0C0H, 0F9H ,0A4H , 0B0H DB 99H, 92H, 82H, 0F8H DB 80H, 90H, 88H, 83H DB 0C6H, 0A1
33、H, 86H, 8EH;-;扫描显示 DISP: MOV R0,#BUF ;指向显示器缓冲区起始地址 MOV R2,#4 ;循环执行4次 MOV ACC, #11110111B ;加载扫描信号初值11110111B S1: PUSH ACC MOV A, R0 ;取出显示器数据 MOV P0, A ;由P0送出一位显示数据 POP ACC MOV P2,ACC ;由P2送出扫描输出信号 MOV R5,#2 ;延迟 ACALL DELAY;改变扫描码 EX:XXXX1011 RR A ;A向右移动一位 INC R0 ;显示器显示缓冲区地址加1 DJNZ R2,S1 ;判断是否继续执行循环 RET
34、;计数单元清0 INIT: MOV DEDA,#0 ;5ms计数器清0 MOV SEC, #0 ;秒表变量清0 MOV MIN, #0 ;分钟变量清0 MOV HOUR,#0 ;小时变量清0 RET;蜂鸣器 BZ: ;蜂鸣器鸣响一声 MOV R6,#250 B1:ACALL DEX CPL SPK DJNZ R6,B1 MOV R5, #50 ACALL DELAY RET;-;工作指示灯 LED_BL: ;工作指示灯闪烁 MOV R4,#6 LE1:CPL WLED ;位反向 MOV R5,#25 ACALL DELAY ;延迟50ms DJNZ R4,LE1 RET END 参考文献 1
35、 求实科技.单片机典型模块设计实例导航M .北京:人民邮电出版社, 2007: 7.2 张齐.单片机应用系统设计技术- 基于C语言编程M .北京:电子工业出版社, 2006: 3.3 李光飞.单片机C程序设计实例指导M .北京:航空航天大学业出版社, 2005: 9.4 楼燃苗,李光飞. 51系列单片机设计实例M .北京:航空航天大学业出版社, 2003.5 丁元杰. 单片微机原理及应用M . 北京: 机械工业出版社, 2001: 1.6 孙串友, 孙晓斌. 感测技术基础M . 北京: 电子工业出版社, 2001.7 赵继文. 传感器与应用电路设计M . 北京: 科学业出版社, 2002.8 黄继昌.