1、资料内容仅供您学习参考,如有不当之处,请联系改正或者删除。本科生毕业设计基于单片机的可变色灯泡的设计院 系 电气( 机电) 工程学院 专 业 电气工程及其自动化 班 级 级本4班 学 号 学 生 姓 名 孙国强 联 系 方 式 指 导 教 师 苏良昱 职称: 教授 年 5 月独 创 性 声 明本人郑重声明: 所呈交的毕业设计是本人在指导老师的指导下所取得的研究成果。除了文中特别加以注释和致谢的地方外, 本设计中不包含任何其它人已经发表或撰写的研究成果。与本研究成果相关的所有人所做出的任何贡献均已在设计中作出了明确的说明并表示了谢意。签名: 年月 日授 权 声 明本人完全了解许昌学院有关保留、
2、使用本科生毕业设计的规定, 即: 有权保留并向国家有关部门或机构送交毕业设计的复印件和磁盘, 允许毕业设计被查阅和借阅。本人授权许昌学院能够将毕业设计的全部或部分内容编入有关数据库进行检索, 能够采用影印、 缩印或扫描等复制手段保存、 汇编本设计。本人设计中有原创性数据需要保密的部分为( 如没有, 请填写”无”) : 学生签名: 年 月 日指导教师签名: 年 月 日基于单片机的可变色灯泡的设计摘 要本文介绍了一种由12个LED发光二极管组成的四个可变色灯泡的多功能发光形式的简易彩灯控制系统的软硬件设计过程, 方案以AT89C51单片机作为主控核心, 且以复位电路、 时钟电路、 按键电路、 中断
3、电路以及彩灯显示电路组成, 利用软件编程烧录程序到单片机来实现对LED彩灯进行多样控制。该控制电路能完成多种闪灯模式以及随意变换想要的闪烁方式和控制彩灯的闪烁频率等功能。该系统具有电路结构简单、 易操作、 硬件少、 体积少、 成本低、 能耗低等优点, 有一定的实用价值。关键词: 8051单片机 LED彩灯 控制系统 闪烁方式Design ofcolor changinglampbased on SCMAbstractThis paperintroduces the hardware and software designprocess ofasimplelanternconsists of 1
4、2light-emitting diode LEDconsisting of fourcolorlightmultifunctionallightingcontrol system,program for AT89C51 microcontroller as the controlcore,and thereset circuit,clock circuit,keyboard circuit,interrupt circuitdisplay circuitand thelights,the use of softwareprogrammingthe program to themicrocon
5、troller to achievea variety ofcontrolof LED lights.Flashinglightsand thecontrol ofthe control circuitcancomplete a variety offlashmode andrandom transformtotheflicker frequencyfunction.The systemhas the advantages of simple circuit structure,easy operation,less hardware,small volume,low cost,low ene
6、rgy consumption,has a certain practical value.Keywords:8051 MCUflashingLED lights control system目录1. 绪论61.1选题的意义61.2 外界的研究, 71.3本文的主要内容72. 设计方案72.1设计要求82.2设计限定92.3按键部分92.4显示模块93. 硬件电路的设计103. 1 单片机的选用1032 仿真软件的选用123.3单片机最小系统133.4按键控制电路153.5中断电路163.6 LED显示电路1637 仿真部分总结184. 软件编程设计2041 编程软件2042 延时部分2043
7、 按键部分2044 综合仿真21参考文献23附 录 源 程 序24致 谢261. 绪论1.1选题的意义20世纪以后现身于世的单片机以其超高的性价比赢取了世人的青睐, 而后单片机在各个领域都如雨后春笋般的出现。得到了广泛的应用, 开启了自动化时代的新篇章。单片机具有运行速度快、 抗干扰能力强、 体积小、 性能可靠、 环境要求不高、 价格低廉等特点。使用时无需更改内部构造, 只需为其搭配合适的外围电路就能够构成一套完整的针对性极强的单片机控制系统。随着社会的发展进步, 人们对生活质量度而要求也越来越高, 彩灯越来越广泛的出现在了我们的生活里。在过年过节, 举办派对, 广告宣传灯多种领域, 彩灯都很
8、好的完成了营造氛围, 活跃气氛的职能。彩灯虽然简单, 但一直是一个被改进技术以往的角落, 多年以来并没有多少改进。市面上的彩灯多为一次性彩灯, 颜色单一, 变化方式单一, 一般的彩灯用了一次先发给换个新花样了, 就只能把旧的扔掉, 不环保, 又浪费钱财。因此我考虑能够设计改进已有彩灯。增加灯的变换方式, 并能够经过简单的改变, 来改变彩灯的变换方式。可提前设定几种常见的变换方式, 经过按键来改变几种预先设定变换方式。而且本设计还将引入光的三原色交融来进行灯的换色, 一灯多色。本设计基于单片机能更好的实现现有彩灯的功能, 并达到以达到换色, 换方式可是不换硬件的目的。1.2 外界的研究, 本设计
9、在国内外已经有实物上市出售, 研究成果显著, 可是依然存在不足和缺陷, 需要改进和加强。根据市场效果来看, 市场反应很好。当前研究出来的彩灯已经能够实现彩灯自由变换的功能, 但仍需改进。价格太贵是其最大的弊端。 我在进行选题的时候首先考虑的就是设计的实用性和经济性, 而且能够最大化的利用自己的知识解决生活中遇到的问题, 对于可变色灯泡这个选题, 首先它延续了人们对舒适生活的一贯要求, 让创新更好的融入到生活中去, 提供新设备, 提高人们的生活舒适度; 其次, 对于可变色灯泡的研究, 本设计更主张人性化, 经济化, 吸纳了很多类似产品的优点, 对于经过光的三原色的搭配, 切实降低了可变色灯泡的成
10、本。1.3本文的主要内容在本次设计中, 可变色灯泡包括按键模块、 led显示模块等, 要求本设计能够经过简单的改变实现彩灯的变化, 保证设计的合理实用性。我首先需要解决的是对于硬件电路按键的顺序调整和反应模块的实现, 而后经过软件编程使软硬件相结合, 从而保证按键功能的更好的实现, 反应模块主要是依据单片机的特性来实现。在本次设计中, 我采用proteus软件进行电路的仿真处理, 另外经过keil编写程序, 最后将两个软件结合使用, 以此实现本设计的仿真处理。 本篇文章包括四个章节, 分别是绪论: 包括设计的意义以及选题背景介绍; 设计方案: 对本设计的基本方案进行介绍和部分模块的设计; 硬件
11、设计部分需要利用PROTEUS软件对于本设计的各个部分加以分析; 软件设计需要利用KEIL软件使单片机完成设计要求的功能。2. 设计方案根据本次设计的论文题目, 根据设计的要求首先绘出设计的单片机系统的整体控制原理框图如图2-1所示图2-1 系统总体设计框图设计首先考虑是基于单片机基础上进行控制, 将经过按键模块控制单片机, 然后利用单片机的原理, 对反应模块和显示模块进行控制操作, 本章节将对整个设计方案进行规划分析, 对各个模块进行设计, 预先对不同部分的功能做出预想和设计, 便于以后在硬件设计部分进行制作。2.1设计要求本设计是一个可变色彩灯, 设计的要求是: 能够经过按键来改变彩灯的单
12、个灯泡色彩以及才的呢过的变换方式。当按动其中一个按键以后, 彩灯便会在此按键代表的方式下运行, 按动其它按键时, 原变换结束, 按动按键代表的运行方式开始执行, 以一种新的运行方式变换。可变色灯泡需要包括按键部分、 显示部分等, 要求能够在不改变硬件只改变部分软件的情况下就能实现等跑的变色, 及变样变换。本次仿真选取protues软件, 经过AT89C51单片机, 使用其定时功能和外部电路, 实现彩灯闪烁, 变色, 变样的功能。 2.2设计限定由于不同的人群, 对彩灯的需求不同, 为了保证可变色彩灯的实用性, 本设计提供几种模式, 以确保不同类型的人在不同模式的基础上做少量改变就能够基本实现想
13、要的功能。不同人需要的灯泡闪烁的间隔以及亮的时间也不同, 根据不同人群的需求能够提供几种预先设置的方案。至于闪烁定时, 也能够根据不同人的需求来提供。2.3按键部分按键部分需要能够控制单片机, 按下相应的按键, 就会有相应的动作, 设计奖采用6个按键开关。按键可实现5个模式选择, 一个暂停按钮。也能够根据不同人群的需要增加按键, 增加程序模块, 以达到增加模式的效果。为了充分利用端口, 本设计不提供开关按钮, 每一个模式按键均能够当做开始按钮, 暂停开关可作为关闭按键。按键模块设计图。图 2-2 按键模块设计图按键控制方法和原理: 模式一、 模式二、 模式三、 模式四、 模式五: 分别以第一种
14、、 第二种、 第三种、 第四种、 第五种模式运行彩灯系统 开/关: 暂停彩灯、 重新打开彩灯 经过以上的设计, 使按键模块实现对单片机的操作, 当然, 这些操作按键是由软件输入单片机中, 经过软件的形式对单片机加以操作和控制, 每个按键的原理基本相同, 分别给输出口以不同的高低电平组合, 来实现各种模式。2.4显示模块显示模块本设计对彩灯的实际运行做了模拟性仿真, 基于条件限制, 本设计采用了四个灯泡组成的简单的彩灯系统。四个灯每个均由红、 蓝、 绿三个led灯组成, 以达到变色的目的。由于本模拟设计对于彩灯的颜色没有特殊的要求, 光的三原色组合能够满足需求, 因此每个灯泡由三个、 颜色的le
15、d灯构成即可。即本模拟设计经过十二个led灯组成四个可变色彩灯的系统。3. 硬件电路的设计3. 1 单片机的选用( 1) AT89C51单片机的简单介绍 对于这次的设计, 我将选用AT89C51单片机。该类型的芯片采用了ATMEL公司生产的高密度非易失性存储器技术, 具有MCS51系列单片机的所有功能, 片上还放置了闪存存储器单元和通用8核心处理器, 从而能够实现非常强功能大。图3-1是单片机AT89C51的引脚图。图 3-1 AT89C51双列直插式引脚图AT89C51各个引脚的作用: VCC: 供电电压+5V。GND: 接地。P0口: P0口为一个8位漏级开路双向I/O口, 每脚可吸收8T
16、TL门电流。当P1口的管脚第一次写1时, 被定义为高阻输入。P0能够用于外部程序数据存储器, 它能够被定义为数据/地址的第八位。在FIASH编程时, P0口作为原码输入口, 当FIASH进行校验时, P0输出原码, 此时P0外部必须被拉高。本系统中P0口接LED数码管的段选段。 P1口: P1口是一个内部提供上拉电阻的8位双向I/O口, P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后, 被内部上拉为高, 可用作输入, P1口被外部下拉为低电平时, 将输出电流, 这是由于内部上拉的缘故。在FLASH编程和校验时, P1口作为第八位地址接收7。P2口: P2口为一个内部上拉电阻的8位双向
17、I/O口, P2口缓冲器可接收, 输出4个TTL门电流, 当P2口被写”1”时, 其管脚被内部上拉电阻拉高, 且作为输入。并因此作为输入时, P2口的管脚被外部拉低, 将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时, P2口输出地址的高八位。在给出地址”1”时, 它利用内部上拉优势, 当对外部八位地址数据存储器进行读写时, P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。本系统中语音芯片ISD1420的地址端接P2口。P3口: P3口是8个带内部上拉电阻的双向I/O口, 可接收输出4个TTL门电流
18、。当P3口写入”1”后, 它们被内部上拉为高电平, 并用作输入。作为输入, 由于外部下拉为低电平, P3口将输出电流, 这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口, 如表2.5所示。P3口同时为闪烁编程和编程校验接收一些控制信号。表2.5P3口的第二功能口管脚备选功能信号名称P3.0RXD串行输入口P3.1TXD串行输出口P3.2/INT0外部中断0P3.3/INT1外部中断1P3.4T0记时器0外部输入P3.5T1记时器1外部输入P3.6/WR外部数据存储器写选通P3.7/RD外部数据存储器读选通RST: 复位输入。当振荡器复位器件时, 要保持RST脚两个机器周期的高电
19、平时间。ALE/PROG: 当访问外部存储器时, 地址锁存允许的输出电平用于锁存地址的地位字节。在平时, ALE端以不变的频率周期输出正脉冲信号, 此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是: 每当用作外部数据存储器时, 将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX, MOVC指令是ALE才起作用。另外, 该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止, 置位无效。PSEN: 外部程序存储器的选通信号。在由外部程序存储器取指期间, 每个机器周期两次/PSEN有效。在访问外部数据存储器时
20、, 这两次有效的PSEN信号将不出现。EA/VPP: 当/EA保持低电平时, 则在此期间外部程序存储器( 0000H-FFFFH) , 不论是否有内部程序存储器。注意加密方式1时, EA将内部锁定为RESET; 当EA端保持高电平时, 此间内部程序存储器。在本设计中, 对ROM的读操作只在内部程序存储器中, 因此EA置应高电平。XTAL1: 反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2: 来自反向振荡器的输出8。( 2) AT89C51单片机的主要性能: 与MCS-51产品指令系统兼容 、 4k字节可重新擦写Flash闪速存储器、 1000次可擦写周期、 全静态操作: 0Hz-24
21、MHz、 1288字节内部RAM、 三级加密程序存储器、 32个可编程I/O口线、 2个16位定时/计数器、 6个中断源 、 可编程串行UART通道、 低功耗空闲和掉电模32 仿真软件的选用本次设计采用protues仿真软件, 该软件的ISIS是一款能够经过自己动手画电路图来对实物进行仿真的软件。这个软件不但支持各种型号的单片机, 元件库齐全, 而且使用非常方便, 仿真效果非常好, 是一款非常值得向大家推荐的能使用单片机进行实物仿真的软件。proteus 能够很好对单片机电路进行实物模拟实验, 模拟效果相较于其它的实物实验要好的多。使用者在使用本软件的过程中, 能够根据自身需求, 随心所欲的来
22、画电路图、 补充电路图以及修改电路图。在适当的操作后可立即进行仿真以检查该电路的实际运行效果, 充分弥补了我们在实际应用时无法一次次的修改硬件电路的弊端。采用软件修改硬件电路的方式, 更加方便快捷。在使用软件绘制电路图的时候我们还能够根据自己的实际需求选择使用或者不使用软件提供的电路元器件, 也能够经过自己改变元器件的参数, 来得到不同的实验数据。实验结果若符合预期的要求, 便可进行下一步, 根据软件绘图来进行实物的制作, 这种方法的经济快捷使得其本身具有很大的实用价值。3.3单片机最小系统单片机要工作起来就需要为其提供外部硬件电路, 最基本的外部电路扩单片机、 时钟电路、 复位电路等几部分,
23、 而单片机的最小电路则只是由复位电路和时钟信号电路组成( 如图3-2) 。图3-2 单片机最小系统图复位电路: 为了确定单片机的起始工作状态而且完成单片机的启动过程, 单片机的复位方式有手动复位和上电自动复位两种。本设计采用后者, 上电自动复位。时钟电路: 单品机最小系统中另一个模块叫做时钟电路。时钟电路的存在是为了产生时钟频率, 由一个晶振和两个小电容组成。由于AT89C51单片机的内部的一个振荡器由一个反向放大器构成, 当XTAL1和XTAL2分别作为振荡电路的输出和输入端时, 时钟可有内部和外部产生。当在XTAL1和XTAL2的引脚上接定时元件, 内部振荡电路就会产生自激震荡。单片机系统
24、采用石英晶体和电容组成的并联谐振会路作为定时元件。选择晶振频率为12MHz, 电容为30Pf。电容的大小对系统频率起微调的作用。 3.4按键控制电路本设计的按键控制电路由五个按键开关构成。这五个按键开关分别接在AT89C51单片机的p1.0-p1.4引脚上, 是为了实现一对一的控制彩灯的不同颜色变换及闪烁形式。当按下key1时, 12个led发光二极管以第一种闪烁发光方式运行, 从而实现三个一组的灯泡不同颜色的变换和闪烁。当按下按键key2的时候, 十二个led发光二极管以第二种方式闪烁, 从而实现四个灯泡不断变换颜色闪烁的第二种模式。同理, 当按下开关能够3时十二个led二极管以第三种方式闪
25、烁, 实现四个可变色灯泡的第三种按键控制电路( 如图3-3) 是由4个按键开关构成的。她们分别接在单片机AT89C51的P1.0P1.3引脚上, 为了一对一方式控制16个LED彩灯的不同闪烁形式。当按下开关key1时, 16个LED发光二极管闪烁第一种彩灯方式; 当按下开关key2时, 16个LED发光二极管闪烁第二种彩灯方式; 同理, 当按下开关key3时, 16个LED发光二极管闪烁第三种彩灯方式; 当按下开关key4时, 16个LED发光二极管闪烁第四种彩灯方式。图3-3 按键控制电路图3.5中断电路中断电路的作用是, 无论彩灯正在以哪种方式运行, 按下中断按钮以后, 该过程一定终止,
26、十二支led不同色的发光二极管均处在熄灭状态, 停止当前工作。当在按下一次中断按钮的时候, 彩灯继续第一次按下中断按钮前的方式, 从头开始工作。为此我们经过单片机的p3.3引脚来接上中断按钮, 来实现对彩灯的中断控制。中断控制按钮接法如图3-4如图3-4中断控制电路图3.6 LED显示电路 四个可变色灯泡, 由十二个发光二极管组成。发光二极管( Light-Emitting Diode) , 简称LED, led 常被用作微型计算机与数字电路的输出装置, 是一种具有体积小、 耗电低等优点的能讲点能转化为光能的半导体器件。Led的两端能够加上正向电压, 当由电流流过led时, 她便会发光, 将电
27、能转化为光能。而且led的亮度会随着经过它自身电流的大小而改变, 可是过大的电流也会烧毁led, 大的电流会使led的使用寿命缩短。普通的led正向电流一般不会低于5mA, 同时也不会高于20mA.本设计的led采用灌电流的方式, 即电流从电流源出发, 流经led而后进入单片机的I/O口。这是由于51单片机的I/O口是弱上拉的方式, 高电平时只能输出几十微安的电流, 可是其输出低电平时又能够输入几十微安的电流, 故而, 为了保证led的正常发光采取了这种管电流的方式。为了避免流过led的电流过大, 从而烧坏led, 本设计在led和电源之间串联上了一个电阻, 以降低电流。当p0口和p2口输出高
28、电平时( 即p0/p2=1) , led两端没有压降, 一次, 所有的led都是熄灭不亮的。当p0口和p2口输出低电平时( 即p0/p2=0) , led正向导通发光。由于led两端串联的电阻起分压作用, 导致led两端电压约为1.7V, 而串联的限流电阻两端的电压约为3.3V。经过查阅AT89C51单片机的技术手册, 我们发现, 单个I/O口的输入电流最大值不能超过10mA; p0口的输入电流总和最大值不能超过26mA; p1口、 p2口、 p3口的输入电流总和最大值不能超过15mA; 所有I/O口的输入电流总和最大值不得超过71mA。Led显示电路接法, 如图3-5。图3-5 led显示电
29、路图37 仿真部分总结如图3-6所示, 本设计的主要控制部件为AT89C51单片机。共四十个引脚, 本次设计选用p2口和p0口进行led变色灯泡的发光部分, p1口进行主要控制按键模块的传送, p3口用作中断按钮的传送, 另外还有重置电路和振荡电路部分。本设计选用AT89C51单片机的p0口的六个引脚( p0.0p0.5) 以及p2口德六个引脚( p2.0p2.5) 作为显示数据的传送端口。因为这个设计的四个可变色的灯泡均由三个三原色led灯组成, 因此只需要使用p0口和p2口的十二个引脚, 足够数据能够传输显示, 根据设计原理图, 本设计将数码管的引脚经过p0口和p2口的12个引脚( p0.
30、0p0.5、 p2.0p2.5) 接上那个led灯以后再接上限电电阻就能够实现显示模块的功能了。本次可变色灯泡的设计, 选用p1口的5个引脚( p1.0p1.4) 分别用作按键模块的第一种模式、 第二种模式、 第三种模式、 第四种模式、 第五种模式这五个按键的输入端口首先把这5个引脚经过按键与地相接, 这样, 如果按下相应的按钮, 那这个按键与单片相连的引脚就会变成低电平, 从而给单片机输入一个低电平的脉冲, 再根据单片机的内部软件功能, 分别实现每个按键的功能。中断按钮接在p3.3上, 其原理与以上五个模式按键的原理相同, 再次不在重复说明。图 3-6 硬件设计原理图4. 软件编程设计41
31、编程软件本次设计选用keil为编程软件。单片机的使用有两种设计, 一种为硬件电路设计, 一种为软件设计。单片机的软件汇编分为手工汇编和机器汇编两种汇编方式。随着单片机开发技术日新月异的不断发展进步, 设计人员对单片机的使用更是越来越熟练。而普通的汇编语言夜早已由于更加高级的而且更加实用的语言的诞生而不复存在。Keil软件是用来开发51系列的单片机的常见软件之一。 Keil能够进行 c51的汇编语言, PLM语言和C语言的程序设计, 而且它的界面十分友好, 而且人性化, 对于我们初次接触的使用者来说, 也是非常好学习的。42 延时部分在软件设计中会经常见到延时部分, 因此对延时程序进行统一编程,
32、 以便以后进行程序调用, 方便省时。设计编写延时程序时, 需要定义延时头文件DELAY_h, 编写时为了满足设计需要, 在此文件中定义了四个延时函数, 分别是1ms延时函数、 2s延时函数、 0.2s延时函数和5ms延时函数。定义时, 必须将每个函数都起好名称区分清楚, 防止用错。在函数调用时, 直接就能够调用函数名来使用。43 按键部分根据硬件要求, 本设计一共需要定义六个按键, 分别是第一个变换模式、 第二个变换模式、 第三个变换模式、 第四个变换模式、 第五个变换模式和一个中断模式, 为了满足设计需求, 每一个按键按下后都必须实现其目的而且经过led灯的变换显示出来。根据原理, 绘制了图
33、4-1的原理框图如下: 图4-1 按键设计原理图44 综合仿真仿真部分总结: 在仿真之前, 首先需要将keil与protues进行联调, 然后在keil中用源程序的项目生成HEX文件后, 在protues中导入单片机, 即可在protues中进行仿真。如图4-2所示, 利用仿真图左侧的按键部分, 分别按动由上到下的五个按钮按钮, 系统开始以各个模式运行, 四个可变色灯泡以不同的颜色来回变换跳跃闪烁。按动最下方的按钮来实现中断的作用。从而实现了本设计可变色灯泡的全部功能。图 4-2 仿真原理图参考文献1 曹天汉, 模拟电子技术, 北京师范大学出版社 8月2 侯玉宝、 陈忠平、 李成群, 基于Pr
34、oteus的51系列单片机设计与仿真电子工业出版社 9月3 曹天汉、 钱卫星、 张雪娟, 单片机原理与接口技术( 第3版) , 电子工业出版社 3月4 张国华, 张弛, 吴冬芳等. 基于单片机的学习式倒计时器 J. 煤炭技术, ,30(5):47-495 李全利 , 单片机原理与接口技术M, 高等教育出版社 12月6 李忠国、 陈刚 , 单片机应用技能实训, 人民邮电出版社 7 刘丹. Protues与Keil联合仿真在单片机教学中的应用 J. 科教导刊, ,(23):120-1218 李生明, 杨红. PROTUES软件在学习单片机中的应用 J. 清远职业技术学院学报, ,03(6):40-
35、429 马刚, 李向仓. 用Proteus与Keil整合构建单片机虚拟仿真平台 J. 现代电子技术, ,29(24):129-13110 伍冯洁, 谢斌. 基于Proteus与Keil的单片机实验教学改革J. 实验室研究与探索, ,28(7):125-12711 唐前辉, 丁明亮. Proteus ISIS和Keil在单片机教学中的应用 J. 重庆电力高等专科学校学报, ,11(4):46-4912 胡敬朋, 王聪. 单片机项目教学研究及实践 J. 电气电子教学学报, ,31(5):82-84 附 录 源 程 序void timer0(void)interrupt 1 using 1TL0=
36、0x00;/重置初值TH0 = 0xBE;TL0 = 0xE5;key=P1;switch(key)case 0xFE:state=1;stateTemp=1;break;case 0xFD:state=2;stateTemp=2;break;case 0xFB:state=3;stateTemp=3;break;case 0xF7:state=4;stateTemp=4;break;case 0xef:state=5;stateTemp=5;break;default:break;void _int()interrupt 2 using 2 if(flag=0) state=6; flag|
37、=1; else state=stateTemp; flag&=0; void main() IT1=1;IE|=0x86;TMOD= 0x21;TH0 = 0xBE;TL0 = 0xE5;ES = 0;/禁止串口中断TR0 = 1;/开启定时器0, 开始定时while(1)switch(state)case 1:fun1();break;case 2:fun2();break;case 3:fun3();break;case 4:fun4();break;case 5:fun5();break;case 6:P0=0xFF;P2=0xFF;break;default:break;致 谢在毕业设计论文即将完成之际, 我想向曾经给予我帮助和支持的人表示衷心的感谢。首先我要感谢我的指导老师王红玲老师, 她的谆谆教导给了我莫大的帮助, 使这次毕业设计成了我的一个很好的实践锻炼的机会, 经过这次设计, 我开阔了自己的视野, 学会了很多实际应用的知识。其次我还要感谢大学四年来所有的老师, 她( 她) 们为我打下电气类专业知识的基础; 同时我还要感谢我所有同学, 正是因为有了你们的支持和鼓励, 我这次毕业设计才能顺利的完成。 最后我要感谢电气( 机电) 工程学院和我的母校许昌学院四年来对我的大力栽培, 四年的大学时光, 让我更好的成长, 今后我将继续努力, 为了自己的目标而奋斗