基于单片机的智能落地电风扇的设计 毕业论文设计.doc

上传人:哈尼dd 文档编号:3924002 上传时间:2019-10-10 格式:DOC 页数:24 大小:298.02KB
返回 下载 相关 举报
基于单片机的智能落地电风扇的设计 毕业论文设计.doc_第1页
第1页 / 共24页
基于单片机的智能落地电风扇的设计 毕业论文设计.doc_第2页
第2页 / 共24页
基于单片机的智能落地电风扇的设计 毕业论文设计.doc_第3页
第3页 / 共24页
基于单片机的智能落地电风扇的设计 毕业论文设计.doc_第4页
第4页 / 共24页
基于单片机的智能落地电风扇的设计 毕业论文设计.doc_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《基于单片机的智能落地电风扇的设计 毕业论文设计.doc》由会员分享,可在线阅读,更多相关《基于单片机的智能落地电风扇的设计 毕业论文设计.doc(24页珍藏版)》请在三一文库上搜索。

1、合肥学院单片机原理与应用课程论文题目基于单片机的智能落地电风扇的设计院系名称计算机科学与技术专业(班级)计本(2)班学号姓名指导教师2013年 6 月 摘要:本设计主要介绍了一种智能电风扇的设计方案。该系统以AT89C51芯片的单片机为核心,应用通用的温度传感器来实现对环境温度的监控,同时系统跟随环境温度的变化来改变电机的运行状态。本设计采用的温度智能控制,使风扇可以感知环境的温度,以调节风扇的转速,达到更好的工作效果。用户可以选择这种智能调速的方式,也可以选择手动设定方式来控制转速;同时用户也可以使用遥控器来控制风扇的运行状态。当选择手动设定方式时,该功能不发挥作用。而定时工作功能可以让用户

2、自己定制风扇工作时间的长短,以提供更人性化的服务。LED显示功能使用液晶屏显示当前室温度,风扇的转速,风扇的工作模式。关键词:AT89C51 智能电风扇 温度传感器 无极调速 1 绪言本章主要阐述了智能电风扇的研究背景,现状,发展方向,明确的指出了制作智能电风扇所用到的元器件,以及各个元器件的功能描述。1.1.课题背景我们常见的电风扇一般只有四、五个风速档,用的是人工开关,不知道室内温度,只是人为的调节钙用哪个档。而自动调温调温电风扇这个设计师一个新领域,它用的是在带你走行业中应用广泛的AT89C51单片机。通过单片机与温度探测器结合,将其应用于家用电风扇等转速精确控制,能够有良好的性能。(1

3、) 自动调温电风扇简介它使用直流电动机的控制以模拟电路为基础,运算放大器、非线性集成电路以及数字电路组成,使得对电风扇各档风量大调节更加细化,使得电风扇等控制更加人性化,同时它也具有全自动、控制简单、智能化,制作容易,使用温度传感器、专用控制集成电路和单片机,实现当室温达到最佳所设定开启的温度是,电风扇自动开启,并且可以根据室温变化换风速;档室温低于这一设定温度时,电风扇自动关闭。同时显示当前室内温度,和自己所设定的温度,提醒人们合理使用电风扇。(2) 自动调温电风扇设计目的在这种情况下,自动调温电风扇应运而生。我们的生活加快,人数需要处理的事情越来越多,在炎热的夏天,回到家更想好好休息,消除

4、自己一天的工作疲劳,而自动调温电风扇等设计就解决了这些问题。自动调温电风扇是通过单片机控制来实现直流电动机运转频率的自动调节,从而达到改变风速的目的。此设计用到AT89C51单片机,它是把微处理器,存储器(RAM和ROM),输入/输出接口以及定时器/计数器集成在一起的集成电路芯片。他与集成电路相结合,组成一个设定温度,感温,控制和输出与一身的模块。利用单片机AT89C51和一些电路对室温进行探测,从而对电风扇进行开和关断一系列控制。1.2 . 系统的控制特点与性能要求本设计主要目的是使普通的电风扇的功能更加强大,使操作简单化,智能化,主要实现以下几个部分的功能:a.温度控制功能:电风扇可以感知

5、环境温度,以调节风扇的转速,达到更好的工作效果。b.定时工作功能:该定时功能可以让自己制定风扇工作时间的长短,以提供更人性化的服务。c、无级调风功能:该功能可解决普通电风扇档位风速变化过大的缺点,可实现任意风速。d、遥控控制:该功能可以让用户远距离控制电风扇,并选择电风扇等运作状态。e、实时温度显示:该功能方便用户根据室温调节电机的启动温度点,达到节能目的。2 本设计用到的元器件简介 2.1 Inter公司AT89C51单片机简介AT89C51是一种带4K字节闪存可编程可擦除只读存储器的低电压、高性能CMOS 8位微处理器,俗称单片机。AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高

6、且价廉的方案。外形及引脚排列如图所示主要特性:与MCS-51 兼容4K字节可编程闪烁存储器寿命:1000写/擦循环数据保留时间:10年全静态工作:0Hz-24MHz三级程序存储器锁定1288位内部RAM2.2、AT89C2051芯片简介AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。2.3 DS18B20温度传感器DS18B20内部结构如图3.2.1所示,主要由4部分组成:64位ROM、温度传感器、非挥发的温度报警触发器TH和

7、TL、配置寄存器。DS18B20的管脚排列如图3.5.2所示,DQ为数字信号输入输出端;GND为电源地;VDD为外接供电电源输入端(在寄生电源接线方式时接地,见图3.8.2)。ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码,每个DS18B20的64位序列号均不相同。64位ROM的排的循环冗余校验码(CRC=X8X5X41)。ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。 64位ROM和一线端口存储和控制逻辑高速暂存器8位CRC生成器供电方式选择配置寄存器低温触发器TL高温触发器TH温度传感器INTERN

8、ALVDDVDD 图3.2.1 DS18B20的内部结构3 硬件设计 3.1 总体硬件设计系统总体设计框图如下4-1所示: 遥控器红外线发射红外线接收模块AT89C51单片机系统数字温度传感器键盘输入模块温度显示模块电机控制模 块微光显示模块图4-1系统总体设计框图 对于单片机中央处理器的方案设计,根据要求,我们可以选用具有4KB片内EPPROM的AT89C51单片机作为中央处理器。作为整个控制系统的核心,AT89C51内部已包含了定时器、程序存储器、数据存储器等硬件,其硬件能符合整个控制系统的要求,不需要外接其他存储器芯片和定时器件,方便地构成一个最小系统。整个系统结构紧凑,抗干扰能力强,竞

9、价比高。是比较合适的方案。3.2 直流稳压电源的设计 直流稳压电源主要功能是为后两个部分提供电压的输出。在设计中分出了2个支路,分别输出5V电压。 直流稳压电源主要由电源变压器、整流电路、滤波电路和稳压电路四部分组成。3.2.1 单相桥式整流电路整流电路主要实现将交流电转换成直流电。实现这以目标主要是靠二极管的单向导电作用,因此二极管是构成整流电路的关键元件。我采用的是单相桥式整流电路。3.3 电机调速模块3.3.1 电机调速原理 通过单片机控制可控硅的导通角,从而改变加在电机两端的有效电压来调节电动机的运转。可控硅导通条件如下: 1)阳阴极间加正向电压; 2)控制极阴极间加正向触发电压; 3

10、)阳极电流IA大于可控硅的最小维持电流IS。3.4 温度显示与控制模块设计 3.4.1 温度检测硬件模块设计图4-4-1以MCS51系列单片机为例,画出了DS18B20与微处理器的典型连接。图4-4-1(a)中DS18B20采用寄生电源方式,其VDD和GND端均接地,图4-4-1(b)中DS18B20采用外接电源方式,其VDD端用3V5.5V电源供电。假设单片机系统所用的晶振频率为12MHz,根据DS18B20的初始化时序、写时序和读时序,分别编写了3个子程序:INIT为初始化子程序,WRITE为写(命令或数据)子程序,READ为读数据子程序,所有的数据读写均由最低位开始。 VDD GND 4

11、.7K +3V+5.5V +3V+5.5V UP P3.3 DS18B20(a)寄生电源工作方式 VDD GND 4.7K +3V+5.5V 外接电源+3V+5.5VUP P3.3 DS18B20接其它的一线装置(b)外接电源工作方式图4-4-1 DS18B20与微处理器的连接图主机控制DS18B20完成温度转换必须经过三个步骤:初始化、ROM操作指令、存储器操作指令。必须先启动DS18B20开始转换,再读出温度转换值。假设接一单元,再按照温度值字节的表示格式及其符号位,经过简单的变换即可得到实际温度探测电路。单线数字温度传感器DS18B20 采用一线总线接口,大大节省了系统的I/O 资源。如

12、图4-4-2所示。PIAI R6 +5V U6 VDDDQGND 图4-4-2 温度传感器DS18B20 电路3.4.2 温度显示硬件模块设计温度传感器可以选用LM324A的运算放大器,将其设计成比例控制调节器,输出电压与热敏电阻的阻值成正比,但这种方案需要多次检查后方可使采样精确,过于繁琐。所以我采用老性能更为优越的DS18B20数字温度传感器,它可以直接将模拟温度信号转化为数字信号,降低了电路的复杂程度,提高了电路的运行质量。本模块以DS18B20作为温度传感器,AT89C51作为处理器,配以温度显示作为温度控制输出单元。整个系统力求结构简单,功能完善。电路图如图4-4-3所示。系统工作原

13、理如下:DS18B20进行现场温度测量,将测量数据送入AT89C51的P3.7口,经过单片机处理后显示温度值,并与设定温度值的上下限值比较,若高于设定值或低于设定下限值则控制电机转速进行调整。图4-4-3 DS18B20温度计原理图3.5红外收/发电路红外收/发工作原理图如下:按键识别编码键盘 无线发射 无线接收 信号识别 控制电路图4-5红外收/发工作原理图 3.5.1 红外线遥控器发射电路红外遥控是目前家用电器中用得较多的遥控方式。在了解红外线遥控之前,先得了解什么是红外线。我们知道,人的眼睛能看到的可见光按波长从长到短排列,依次为红、橙、黄、绿、青、蓝、紫。其中红光的波长范围是0.620

14、.76m的波长范围为0.380.6m。比紫光波长还短的光叫紫外线,比红光波长还长的光叫红外线。红外线主要优点是:(1)具有较高的传播速度,不会产生因干涉、空间反射以及双折射等作用而出现的干扰;(2)传播中不会产生畸变噪音;(3)在高峰值功率情况下所需的功率较小;(4)采用一定的调制方法可以有高的干扰性;(5)在仅有一个载波频率的情况下可以有高的稳定性。正因为红外线传输有上述一系列优点,因此获得了很大的发展。借助于红外线具有直线传播的特性,利用红外传感器具有灵敏度高、响应速度快和光谱范围窄的性能,同时利用单片机具有结构紧凑、可靠性高、数据处理能力强、速度快、功耗小、成本低的特点,可以制作灵敏度高

15、、抗干扰性能优良的红外遥控装置。由于红外线遥控器具有体积小、功耗低、功能强、成本低等特点,因而,继彩电、录音机、音响设备、空调机以及玩具等其他小型电器装置也纷纷采用红外线遥控。工业设备中,在高压、辐射、有毒气体、粉尘等环境下,采用红外线遥控不仅安全可靠,而且能有效地隔离电气干扰。下面就红外遥控技术的特点做下简单的介绍。红外线遥控器发射原理图如下: 键盘编码调制红外发射38KHz载波发生器 图4-5-1 遥控器原理框图1 遥控器(1)、系统功能该系统具有如下几个功能:1)、通过遥控器控制电机的启动、停止;2)、通过遥控器控制电机的加速、减速运行;3)、通过遥控器控制电机的全自动与手动切换;4)、

16、通过遥控器控制电机的运转时间;5)、通过遥控器控制电机的摇头与不摇头切换;6)、手动状态下风型的选择。(2)、按键功能K1:低档、中档、高档,键值为01HK2:彩灯,键值为 02HK3:自然风、睡眠风、正常风键,值为03HK4:定时 ,键值为04HK5:开/关机,键值为05HK6:摇头/固定 (3)、当无按键按下时,延时30秒后进入待机状态,系统处于低功耗模式。当有按键按下时,INT0中断产生,同时唤醒CPU进入工作状态。3.5.2红外接收电路1、接收解码方式解码的关键是如何识别“0”,和“1”,从位 的定义我们可以发现“0”,“1”均以0.56的低电平开始,不同的是高电平的宽度不同区别“0”

17、和“1”,如果从0.56ms低电平过后,开始延时,0.56ms以后,若读到的电平为低,说明该位位“0”,反之则为“1”,未来可靠其间,压缩必须比0.56ms长些,但又不能超过0.12ms,否则如果该位位“0”,读到的意思下一位的高电平,因此取(1.12ms+0.56ms)/2=0.84ms最为可靠,一般取0.84左右均可。根据码的格式,应该等待9ms的起始码和4.5ms的结果码完成后才能读码。中断接收时子程序首先读取T0定时器的长度,如果是0.56ms就认为是“0”,将其存入缓冲区并且计数器加一,如果是1.68ms就认为是“1”,将其存入缓冲区并且计时器加一。如果计时器值为32时,就接收结束标

18、志位并且计数器清0,如果计时器值不为32时,就认为接收误码,计时器也将清0,传输重新等待读取红外信号。2、红外接收电路接收电路可以使用一种集成红外线接收和放大于一体的一体化红外线接收器,不需要任何外接元件,就能完成从红外线接收到输出与TTL电平信号兼容的所有工作,而体积和普通的塑封三极管大小一样,它适合于各种红外线遥控和红外线数据传输,这里使用HS0038接收器,它对外只有3个引脚:Out、GND、Vcc与单片机接口非常方便,接收电路图如图4-5-1所示。图4-5-1红外接收电路图HS0038接收原理:红外线接收是把遥控器发送的数据(已调信号)转换成一定格式的控制指令脉冲(调制信号。基带信号)

19、,是完成红外线的接收、放大、解调,还原成发射格式(高、低电位刚好相反)的脉冲信号。这些工作通常有一体化的接收头来完成,输出TTL兼容电平。最后通过解码脉冲信号转换成数据,从而实现数据的传输。如果相邻的两个中断间隔的数据长度0. 56ms,说明接收到的是“0”;时间长度是1.12ms则为“1”。因此,脉冲电平的每一次挑拨都会形成一次中断,在中断服务子程序中即可实现一次性兑一连串连续波形的测量,在测量后对0和1的歌数据统计从而测出控制指令的功能。4 软件设计软件总体流程描述在主程序初始化之后,开始反复检测各模块相关部分的缓冲区标志,如果缓冲区标志置位,说明有相应的数据需要处理,然后主程序调用响应的

20、处理子模块,对于温度传感器,我们采用定时采集数据的方法,在定时中断子程序中,采集相应的数据,并进行判断,如果是异常数据,则将数据保存在系统缓冲区,同时置对应的缓冲区标志。然后主程序将会调用相应的子程序进行处理。软件主流程图见下页图5-2所示。当有按键按下的时候,采用键盘中断子程序扫描相应的键盘码,然后发给主程序,置对应的键盘按键标志位。在主程序中,当有键盘按下的时候,调用对应的键盘处理子程序。图4-2 软件主流程系统初始化LED显示系统温度值MCS-51单片机数据缓冲区标志位DS18B20数据缓冲区置位键盘按键缓冲区置位红外线信号数据缓冲区标志位是否定时DS18B20处理子模块键盘扫描处理子模

21、块红外接收子模块定时处理4.1 数字温度传感器模块程序流程图正常设置异常系统初始化开始进行测温设置参数初始化DS18B20启动DS18B20测温调用相应的键值处理程序调用相应的控制程序内部判断调用子程序调用读子程序输出显示结束图5-2-1 数字温度传感器模块程序流程图4.2 电机控制模块电机涉及到转速和摆头两个方面。风扇的转速由光耦合器触发导通角控制,摇头部分可以使用普通电风扇蜗杆部分摇头调速,只是把它用一个电磁阀来控制其导通与断开来实现摇头控制。在此基础上我们通过软件对风扇的转动进行精细的控制,以实现多种风类型。对于各种风类型我们依照如下定义:正常的芯片,使用默认的12位转换精度,外接供电电

22、源,子程序GETWD读取的温度值高位字节送WDMSB单元,低位字节送WDLSB风:风扇按设定之强,中,弱风互速运转。中断入口保护现场SETB 24H,0中断返回回复现场还原初始化数据开F a n l及其显示,CLR 24H,0关F a n l及其显示图4-2-2 电机控制模块自然风:风扇马达按预编电脑程序作不规则运转,配合风速键之设定,可分强自然风,中自然风,弱自然风,模仿大自然之风吹效果,令风量更柔和更舒服。睡眠风:风扇马达进入自然风电脑程序控制,其原理是人体的体温会在睡眠后慢慢下降。风扇的风量亦会慢慢减弱,以免入睡后着凉,其减弱规律如下:当最初设定为强风时,风扇按强自然风运转半小时,后转为

23、中自然风,半小时后再变为弱自然风,直至预置时间结束,或被关掉为止;当最初设定为中时,风扇按中自然风运转半小时,转为弱自然风,直至预置时间结束,或被关掉为止;当最初设定为弱自然风时,风扇按弱自然风运转,直至预置时间结束,或被关点为止。如图5-2-2所示。从软件层角度来说,就是根据前一刻的风扇状态以及用户的输入来确定当前时刻所要输出的风类型和风速。从软件驱动层角度来说,就是根据软件层确定的当前时刻风类型和风速量化所要输出的风速值。从硬件驱动层角度来说,对于风速转速的控制,最终是1根线的选通以线上可控硅导通时间的控制,也就是说,将软件驱动层量化出的风速值。转换成1根线的选通以及选通的线上可控硅的导通

24、时间。4.3 人机接口 本部分功能主要便于用户使用电风扇,使用户只要简单的操作,就能实现需要的全部功能,主要有以下几个方面组成:键盘操作模块在电风扇底座部分也有一个2*3小键盘,按键功能分配如图4.3.5所示:定时风强风型摇头减小增加图5-2-3 风扇控制面板示意图可以进行风的强度,类型,定时等系统设置。与之对应的是键盘扫描处理模块。基本思想如下:如果有按键按下,中断处理子程序首先进行扫描按键,得到对应的正确的键盘扫描码,然后根据键盘扫描码得到对应的按键号,置有按键标志,并将按键号保持在全局变量中。系统不停的判断有按键标志,如果没有则跳过,如果有按键按下,则进行响应的按键处理,同时实时的在LE

25、D上显示,并将最终结果反馈到系统各部分。对应的键盘处理过程的软件流程图如图4-2-4所示。不等 不等 不等 相等 相等 相等 相等 相等 标志位处理程序键值与(01H)比较键值与(02H)比较键值与(03H)比较键值与(04H)比较键值与(05H)比较其它键不处理处理K5子程序处理K4子程序处理K3子程序处理K2子程序处理K1子程序返回主程序清处标志位图4-2-4 键盘处理过程的软件流程图4.4 红外收/发模块No No Yes Yes 开始初始化主程序延时10s进入待机模式有键闭合时进入中断系统键盘中断处理程序读列线有键闭合读行线有键闭合延时消抖动取按键编号存键值发送RET1红外发射程序流程

26、图如图5-2-4所示。图4-2-4 红外发射程序流程图红外接收软件使用输入捕捉中断处理红外遥控信号,根据不同的红外编码,可以完成调节风速,风型,时间,照明等功能。红外中断服务程序流程图如图4-2-5所示。N N N Y Y Y 中断开始从端口读一位读取数据完成 保存到数据字中中断结束检验正确检验正确复位、清空数据字置位结束标志 图4-2-5红外中断服务程序流程图附录:程序清单typedef unsigned char byte; typedef unsigned int word;/以下管脚配置/ds18b20部分sbit DQ =P34; /显示部分sbit DB=P20;sbit CP=P

27、21;/发光显示部分sbit LED_dingshi=P00;sbit LED_shoudong =P01;sbit LED_zidong=P02;sbit LED_kuai =P03;sbit LED_zhong =P04;sbit LED_man =P05;/键盘定义部分#define wujian 0x3fsbit KEY1=P10 ; /状态转换 /启动sbit KEY2=P11 ; /+10 / 1sbit KEY3=P12 ; /-10/ 2sbit KEY4=P13 ; / 3sbit KEY5=P14 ; / 0确定/继电器控制部分sbit JDQ1=P24; /0表示开通,1

28、表示关断sbit JDQ2=P25;sbit JDQ3=P26;/蜂鸣器部分sbit call=P27; /低电平鸣叫#include #includetouwenjian.hextern void delay(word useconds) for(;useconds0;useconds-); static byte ow_reset(void) byte presence;EA=0; DQ = 0; / pull DQ line low delay(45); / leave it low for 480us /551usDQ = 1; / allow line to return high

29、delay(4);/ wait for presence /61uspresence = DQ; / get presence signal delay(40); / wait for end of timeslot /491usEA=1;return(presence); / presence signal returned / 0=presence, 1 = no part static byte read_byte(void) byte i; byte value = 0;EA=0; for (i=8;i0;i-) value=1; DQ = 0; / pull DQ low to st

30、art timeslot DQ = 1; / then return high unsigned char i; for(i=0;i0; i-) / writes byte, one bit at a time DQ = 0; / pull DQ low to start timeslotDQ=0; DQ = val&0x01; /6USdelay(5);/ hold value for remainder of timeslot /74usDQ = 1; val=val1; EA=1; delay(5); word Read_Temperature(void) union byte c2;

31、word x; temp; ow_reset(); write_byte(0xCC); / Skip ROM write_byte(0xBE); / Read Scratch Pad temp.c1=read_byte(); temp.c0=read_byte(); ow_reset(); write_byte(0xCC); /Skip ROM write_byte(0x44); / Start Conversion return temp.x; extern byte Real_Tem(void) word wen; wen=Read_Temperature(); return(wen4)&

32、0x00ff);#include #includetouwenjian.h/数据区#define time_default 41byte dingshi_time=time_default;/存放定时时间bit flag_dingshi=0; /0表示没有定时word dingshi_jishu3=1000;/1000*60=1分钟/bit flag_dingshi_delay=0;/1表示有byte dingshi_delay=100;/#define hwx_delay_const 3 /人体感应延时时间byte hwx_delay=hwx_delay_const;/用于保存红外线触发延长

33、时间word hwx_jishu1=0;/byte wendu=0;/用于存放温度值/#define low_wen 18#define mid_wen 20#define hig_wen 24#define vhi_wen 28/byte time_stor=100; /存储主观时间/触发显示byte wendu_stor=low_wen;/存储主观温度/触发显示/enum station0zidong,dingshi,shoudong,weakstate;/函数说明区extern byte Real_Tem(void );extern void delay(word useconds);v

34、oid mingjiao(void);void display(byte input,bit kkl);void auto_speed(void);void weak_default(void);void main()/定时器0用于键盘扫描TMOD=0x01|TMOD;/定时器0的1方式TH0=0xd8;TL0=0xf0; /定时器0初始化10ms扫描一次/定时器1用于显示TMOD=0x10|TMOD;/定时器1的1方式TH1=0x15;TL1=0xA0; /定时器1初始化60ms中断一次/外部中断TCON=TCON|0x01;/外部中断0都下降沿触发/以下为开启部分IP=0X01; /两个定

35、时器同等优先级IE=0x8b; /开启定时器0,1,外部中断0中断/while(Real_Tem()=85);auto_speed();LED_zidong=0; /刚开始为自动方式 P1=P1|0X7C; /拉高五个键盘 wendu_stor=100; /两个不可能值/用于启动显示time_stor=100; /两个不可能值/用于启动显示/TR0=1; /开启定时器0TR1=1;while(1) wendu=Real_Tem(); void time0(void) interrupt 1 byte jianpan; TH0=0xd8;TL0=0xf0; jianpan = P1 & wuji

36、an; if(jianpan != wujian) /如果还有键盘值提取键盘值 delay(500);/延时消抖 jianpan = P1 & wujian; if(jianpan=wujian)goto time_out; switch(state) case dingshi: if(KEY1=0)/状态转换时做些相应的处理 state=shoudong;LED_shoudong=0;flag_dingshi_delay=0;dingshi_delay=100;time_stor=100;wendu_stor=100;/触发mingjiao();while(KEY1=0); else if(

37、KEY2=0)/加分 if(dingshi_time10)dingshi_time-=10;dingshi_delay=100;/mingjiao();while(KEY3=0); else if(KEY4=0)/定时与否 flag_dingshi=flag_dingshi;if(flag_dingshi=1)LED_dingshi=0;else LED_dingshi=1;dingshi_jishu3=1000;dingshi_delay=100;/mingjiao();while(KEY4=0); else if(KEY5=0) weak_default();mingjiao();whil

38、e(KEY5=0); break;case shoudong:if(KEY1=0) /状态转换时做些相应的处理 state=zidong;auto_speed();LED_shoudong=1;LED_zidong=0;mingjiao();while(KEY1=0); else if(KEY2=0)/快1 JDQ2=1;JDQ3=1;JDQ1=0;/关断其它LED_zhong=LED_man=1;LED_kuai=0;mingjiao();while(KEY2=0); else if(KEY3=0)/中2 JDQ1=1;JDQ3=1;JDQ2=0;/关断其它LED_kuai=LED_man=

39、1;LED_zhong=0;mingjiao();while(KEY3=0); else if(KEY4=0)/慢3 JDQ1=1;JDQ2=1;JDQ3=0;/关断其它LED_zhong=LED_kuai=1;LED_man=0;mingjiao();while(KEY4=0); else if(KEY5=0)/停4 weak_default();mingjiao();while(KEY5=0); break;case zidong: if(KEY1=0) /状态转换时做些相应的处理 state=dingshi;LED_zidong=1;flag_dingshi_delay=1;dingshi_delay=100;/开始延时time_stor=100;/mingjiao();while(KEY1=0); else if(KEY2=0)/快1 JDQ2=1;JDQ3=1;JDQ1=0;/关断其它LED_zhong=LED_man=1;LED_kuai=0;state=shoudong;LED_zidong=1;LED_shoudong=0;mingjiao();while(KEY2=0); else if(KEY3=0)/中2 JDQ1=1;JDQ3=

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1