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

加入VIP,免费下载
 

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

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

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于AT89S52单片机实现的智能风扇毕业设计.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于AT89S52单片机实现的智能风扇毕业设计.docx

1、基于AT89S52单片机实现的智能风扇毕业设计摘 要智能风扇控制技术,是目前在家电应用方面比较前沿的技术。电风扇是一种比较普及的家电,它与智能控制器技术相结合,实现了智能控制,这类功能优化更新对于智能控制技术发展特别有意义,为我们的日常生活提供了更多方便。风扇的智能控制技术主要体现在这几方面 :利用按键来实现风扇工作时间及风速的控制 ;周围温度来控制风扇的风速,实现实时自动调节风速,且可显示周围的温度;语音控制风扇的工作与否,这样可以节约能源;以及基于红外技术来实现对风扇的控制,它主要体现在较远距离的遥控控制;等等。新型传感器的应用来实现对风扇的控制有着重大作用。从目前应用来看,以后智能控制技

2、术将有更大的发展前景。此设计是以AT98S52 单片机为控制器,以两个按键为控制键(不包括复位键),来实现风速和工作时间的调节。采用4位数码管来显示剩余的工作时间;两个按键功能是:按键1实现风速的选择;按键2实现工作时间的设定。分别用两个电机来分别模拟电风扇电机和模拟风扇摇头机构。关键词 :单片机、智能、PWM、按键。AbstractIntelligent fan control technology is more cutting-edge applications in appliance technology. Electric fan is a relatively popular h

3、ome appliances, which combined with the intelligent controller technology to realize intelligent control, optimization of these features updated intelligent control technology for the development of special meaning for our daily lives provides more convenience. Intelligent fan control technology is

4、mainly reflected in these aspects: the use of buttons to achieve the working time and the fan speed control; ambient temperature to control the fan speed, real-time automatic adjustment of wind speed, and can display the ambient temperature; voice control the work of the fan or not, this can save en

5、ergy; and based on infrared technology to achieve control of the fan, which is mainly reflected in the more remote the remote control; and so on. The application of new sensors to achieve the control of the fan has a significant role. Applications from the current point of view, the future intellige

6、nt control technology will have greater prospects for development. This design is based on AT98S52 microcontroller as the controller, with two buttons to control the key (not including the reset button), to achieve the regulation of wind speed and working hours. 4-bit digital tube used to display th

7、e remaining hours of work; two key functions are: key to achieve a speed choice; buttons to achieve two hours of work settings. Two motors were used to simulate electric fan motor respectively, and analog fans shaking their heads institutions. Key words: Microcontroller;Smart;PWM; Keys1 智能风扇总体设计1.1

8、引 言随着科技的发展与技术的进步,今天我们的周围多了许多的智能控制用品,它们不仅功能强大、体积小、工作稳定、精度高、操作简单,价格低廉,更重要的是它们采用的新工艺、新材料,功耗更低,符合时代节约能源的理念。 鉴于当前生产、生活中的很多设备逐渐小型化、迷你化、集成化,而且产品的工作更加稳定、节能、安全,功能也日趋强大,更加人性化、智能化,所以此设计也以此理念为出发点,设计一种以单片机为核心控制器的风扇控制系统。现在仍有许多的电风扇采用传统的机械式器件来实现定时和调速,也经常遇到机械式调节机构老化、调节失效,在这种情况下,如果再想在效果更好、更安全的使用的话,就必须更换那些调节机构。这也就带来了很

9、多的不便,以及安全隐患。所以在这方面采用单片机这种以数字信号控制的控制器更理想,单片机的外围电路简单,工作稳定,可以采用各种传感器来扩充功能,也可以采用继电器、光电开关、光耦等,来实现不同电压等级隔离。在一点保证了它是安全的,且因为它的工作电压只有5V,所以功耗和低。它具有定时时间显示,显示时间准确,这一点也是它优于传统控制器的。1.2 智能风扇总体介绍智能风扇采用两个按键来控制,另外还有一个单片机复位键,4位数码管显示系统的工作状态,两个电机来模拟风扇的控制机构,用蜂鸣器来模拟报警器。采用4位数码管来显示剩余的工作时间;两个按键功能是:按键1实现风速的选择;按键2实现工作时间的设定。其中,风

10、类有“常风”、“自然风”、“睡眠风”,风类的调节以按键1每按一次当前风类调换一次,以“初始状态”“自然风” “常风” “睡眠风”“初始状态”形式循环调节,并采用PWM实现调速;而时间的调节以按键2每按一次,时间增加10秒钟,以“000” “-”“010”“050”“100”“110” “450”“000”的形式循环调节。显示形式:用4位数码管实时显示风扇的工作状态,最高位显示风类:“初始状态”显示“0”、“自然风”显示“1”、“常风”显示“2”、“睡眠风”显示“3”;第2位显示分钟,第3和第4位显示定时时间,以动态倒计时的形式显示剩余时间,无定时显示“000”。其中,“-”表示非定是状态,此状

11、态可以没有时间限制的让风扇工作;而其它状态时是定时状态,定时器会被启动。分别用两个电机来分别模拟电风扇电机和模拟风扇摇头机构。系统的示意图如下:图1.2.1 系统示意图 1.3 本章小结 主要介绍智能风扇的设计理念与总体设计思路。智能风扇的工作方式,硬件控制要求。2 驱动与电路设计2.1 单片机简要介绍AT98S52单片机是Atmel公司推出的一款在系统可编程单片机。通过相应的ISP软件,用户可以对单片机Flash程序存储器中的代码进行方便的修改。其技术参数如下:(1)4KB在系统可编程Flash程序存储器,3级安全保护;(2)128字节的内部数据存储器;(3)32个可编程I/O引脚;(4)2

12、个16位计数/定时器;(5)5个中断源,可以在断电模式下响应中断;(6)1个全双工的串行通信口;(7)最高工作频率为33MHz;(8)工作电压为4.05.5V;(9)双数字指针使得程序运行得更快。引脚如图2.1.1所示:图2.1.1 AT98S52引脚图引脚功能说明:(1)输入/输出引脚(I/O口线)P0.0P0.7:P0口8位双向I/O口,占3932脚;P1.0P1.7:P1口8位准双向I/O口,占18脚;P2.0P2.7:P2口8位准双向I/O口,占2128脚; P3.0P3.7:P3口8位准双向I/O口,占1017脚;(2)控制口线(29脚):外部程序存储器读选通信号;ALE/ (30脚

13、):地址锁存允许/编程信号; /VPP(31脚):外部程序存储器地址允许/固化编程电压输入端;RST/VPD(9脚):RST是复位信号输入端,VPD是备用电源输入端;(3)电源及其它Vcc(40脚):电源端+5V;GND(20脚):接地端;XTALl、XTAL2(1918脚):时钟电路引脚。当使用内部时钟时,这两个引脚端外接石英晶体和微调电容;当使用外部时钟时,用于外接外部时钟源。2.2 单片机内部电路简要介绍AT89S52共有4个8位的并行I/O口,分别计作P0、P1 、P2、P3。每个口都包含一个锁存器、一个输出驱动器和两个输入缓冲器。实际上,它们已被归入专用寄存器之列,并且具有字节寻址和

14、位寻址功能。AT89S52单片机的4个I/O口都是8位双向口,这些口在结构和特性上是基本相同的,但又各具特点,以下分别介绍。2.2.1 P0口内部电路由图2.2.1可见,电路中包括有一个数据输出锁存器、两个三态数据输入缓冲器、一个数据输出驱动电路和一个输出控制电路。当对P0口进行写操作时,由锁存器和驱动电路构成数据输出通路。由于通路中已有输出锁存器,因此数据输出时可以与外设直接连接,而不需再加数据所存电路。考虑到P0既可以作为通用的I/O口进行数据的输入/输出,也可以作为单片机系统的地址/数据线使用,为此在P0口的电路中设有一个的多路转换电路MUX。在控制信号的控制下,多路转换电路可以分别接通

15、锁存器输入或地址/数据线。当P0口作为通用的I/O口使用时,内部的控制信号为低电平,封锁与门,是输出驱动电路的上拉场效应管(FET)截止,同时使用多路转换电路MUX接通锁存器端的输出通路。P0口的口线逻辑电路如图2.2.1所示:图2.2.1 P0口结构原理图当P0口作为输出口使用时,内部的写脉冲加在D触发器的CP端,数据写入锁存器,并向端口引脚输出。当P0口作为输入口使用时,应区分读引脚和度端口两种情况,为此,在口电路中有两个用于读入驱动的三态缓冲期。所谓读引脚,就是读芯片引脚的数据,这是使用下方的数据缓冲器,由“读引脚”信号把缓冲器打开,把端口引脚上的数据从缓冲器通过内部总线读进来。使用传送

16、指令进行读口操作都是属于这种情况。读端口是指通过上面的缓冲器读锁存器Q端的状态。在端口已处于输出状态的情况下,Q端与引脚的信号是一致的,这样安排的目的是为了适应对口进行“读修改写”操作指令的需要。对于“读修改写”指令,不直接读引脚而读锁存器是为了避开可能的错误。因为在端口已处于输出状态的情况下,如果端口的负载恰是晶体管基极,则导通了的PN结会把端口引脚的高电平拉低,这样直接读引脚就会把本来的“1”误读为“0”。但若从锁存器Q端读,就能避免这样的错误,得到正确的数据。注:当P0口进行一般的I/O输出时,由于输出电路是漏极开路电路,因此必须外接上拉电阻才能有高电平输出;当P0进行一般的I/O输出时

17、,必须先向电路中的锁存器写“1”,是FET截止,以避免锁存器为“0”状态时对引脚读入的干扰。2.2.2 P1口内部电路因为P1口通常是作为通用I/O口使用的,所以在电路结构上与P0口由一些不同之处:首先它不再需要多路转换电路MUX;其次是电路的内部由上拉电阻,与场效应筛共同组成输出驱动电路。为此,P1口作为输出口使用时,已经能提供推拉电流负载,因此无需再外接上拉电阻。当P1口作为输入使用时,同样也需要先向器锁存器写“1”,使输出驱动电路的FET截止。P1口结构原理图如下图所示图2.2.2 P1口结构原理图2.2.3 P2口内部电路P2口结构原理图如下图所示:图2.2.3 P2口结构原理图 P2

18、的电路比P1口的电路多了一个多路转换电路MUX,这又正好与P0口一样。P2口可以作为通用I/O口使用,这时多路转换电路开关倒向锁存器Q端。通常情况下,P2口是作为高位地址线使用的,此时多路转换电路开关应倒向相反方向。2.2.4 P3口内部电路P3口的特点在于,应适应引脚信号第二功能的需要,增加了第二功能控制逻辑。由于第二功能信号有输入和输出两类,因此分两种情况进行说明。对于第二功能为输入的信号引脚,当P3口作为I/O使用时,第二功能信号引脚应保持高电平,与非门开通,以维持从锁存器到输出端的数据输出通路的畅通。当输出第二功能信号时,该位的锁存器应置“1”,使与非门对第二功能信号的输出是畅通的,从

19、而实现第二功能信号的输出。对于第二功能为输入的信号引脚,在口线的输入通路上增加了一个缓冲器,输入的第二功能信号就从这个缓冲器的输入端取得。而作为I/O使用的数据输入,仍取自三态缓冲器的输出端。不管是在P3口作为输入口使用时还是在第二功能信号输入时,输入电路中的锁存器输出和第二功能输出信号线都应保持高电平。P3口结构原理图如下图所示:图2.2.4 P3口结构原理图P3口各引脚名称及与第二功能如下表所示:表1 P3口各引脚与第二功能表引脚第二功能P3.0RXD(串行口输入端)P3.1TXD(串行口输出端)P3.2INT0(外部中断0请求输入端,低电平有效)P3.3INT1(外部中断1请求输入端,低

20、电平有效)P3.4T0(定时器/计数器0计数脉冲输入端)P3.5T1(定时器/计数器1计数脉冲输入端)P3.6WR(外部数据存储器写选通信号输出端,低电平有效)P3.7RD(外部数据存储器读选通信号输出端,低电平有效)2.3 时钟电路与复位电路时钟电路用于产生单片机工作所需要的时钟信号,单片机本身就如同一个复杂的同步时序电路,为了保证同步工作方式的实现,电路应在唯一的时钟信号控制下严格地按照时序进行工作。在AT98S52芯片内部有一个高增益反相放大器,其输入端微芯片引脚X1,其输出端为引脚X2。而在芯片的外部,X1和X2之间跨接晶体振荡器和微调电容,从而构成一个稳定的自激震荡电路。一般,电容C

21、1和C2取30pf左右,晶振的振荡频率范围是1.212MHz。在这里取12.00MHz。其硬件电路如下图所示:图2.3.1 时钟电路与复位电路原理图 单片机复位使CPU和系统中的其它功能都处在一个确定的初始状态,并从这个状态开始工作。复位条件是:必须使RST/VPD或RST引脚(9)加上两个机器周期(即24个振荡周期)的高电平。当时钟频率为12.00MHz时,每个机器周期为1us,则只需2us以上时间的高电平。当R=1K,C=10uf由可以求得104 us,时间满足要求。复位电路中R1取1 K,R2取10 K,C3是电解电容,取10uf。2.4 显示模块电路设计一般LED的工作电流选在510m

22、A,但不允许超过最大值(通常为50mA)。LED数码管又称为半导体数码管,它是由多个LED按分段式封装制成的。LED数码管有两种形式,即共阴和共阳。共阴型LED数码管,是将内部所有LED的阴极连在一起引出来,作为公共阴极;共阳极LED数码管是将内部所有LED 的阳极连在一起引出来,作为公共阳极。因为LED工作电压较低,工作电流也不大,所以可以直接用七段显示译码器驱动LED数码管。但是,要正确选择驱动方式。对共阴型LED数码管,应采用高电平驱动方式;对共阳型LED数码管,应采用低电平驱动。在设计中采用共阴型数码管来显示,由两个锁存器(74HC573N)来充当七段数码管选通开关,其中一个用于“段”

23、选通开关,另一个用于“位”选通开关。上拉电阻选用600(流过发光二极管的电流为5.5mA)。图2.4.1是LED的电路连接示意图。 图2.4.1 LED示意图动态显示是指一位一位地轮流点亮各位数码管,这种逐位点亮显示器的方式称为位扫描。通常,各位数码管的段选线相应并联在一起,由一个8位的I/O口控制;各位的位选线(共阴极或共阳极)由另外的I/O口控制。以动态方式显示时,各数码管分时轮流 选通。要使其稳定显示,必须采用扫描方式,即在某一时刻只选通一位数码管,并送出相应的段码。依此规律循环,即可使各位数码管显示将要显示的字符,虽然这些字符是在不同的时刻分别显示的,但由于人眼存在视觉暂留效应,因此只

24、要每一位显示时间足够短就可以同时显示的敢感觉。下图为显示模块的电路原理图:图2.4.2 显示模块电路原理图2.5 电机驱动模块设计2.5.1 模拟调速电机设计用单片机控制直流电机时,需要加驱动电路,为直流电机提供足够大的驱动电流。使用不同的直流电机,其驱动电流不同,所以要根据实际需要选择合适的驱动电路,通常有以下几种驱动电路:三极管电流放大驱动电路、电机专用驱动模块(如L298)和达林顿驱动器等。如果是驱动单个电机,并且电机的驱动电流不大时,可以用三极管搭建驱动电路,不过这样要稍微麻烦些。如果电机所需的驱动电流较大,可直接选用市场上现成的电机专用驱动模块,这种模块接口简单,操作方便,并可为电机

25、提供较大的驱动电流,不过它的价格要贵一些。再设计中采用达林顿驱动器,它实际上是一个集成芯片,单块芯片同时可以驱动多个电机(如:ULN2803可以驱动8路,ULN2003可以驱动7路,等等),每个电机由单片机的一个I/O口控制,当需要调节直流电机转速时,使单片机的相应I/O输出不同占空比的PWM波形即可。图2.5.1为可以调速的电机驱动电路原理图:图2.5.1 调速电机驱动电路原理图2.5.2 模拟摇头电机设计由于模拟摇头电机要求的驱动电流不大,所以采用三极管来搭建驱动电路。其中三极管全部采用9014,续流二极管采用IN4007。当要求正转或反转时,标zz和fz的两个控制端接在单片机的两个I/O

26、口,按照摇头的时序输出PWM脉宽进行控制。它们同时接通,且电平状态相反。在电流反相时,电机的感应电流起主导作用时,续流二极管会进行续流,同时反相的电源会接通,反相的电流会加强,电机进行制动,当速度为0时,转动方向改变。即实现摇头控制。图2.5.2为摇头电机驱动电路原理图:图2.5.2 摇头电机驱动电路原理图2.6 时间报警设计中采用了蜂鸣器进行倒计时报警。在设置的时间小于等于10秒时进行报警提醒。采用8550三极管进行控制,低电平触发方式。图2.6.1为蜂鸣器控制电路原理图:图2.6.1 蜂鸣器控制电路图2.7 按键模块按键模块是使用者与单片机交互的通道。通过按键可以发出各种控制脉冲,来控制单

27、片机的运行,从而实现不同的控制效果。图2.7.1为按键模块电路原理图:图2.7.1 按键模块电路原理图2.8 本章小结简要介绍单片机各管脚的功能,以及单片机各I/O内部电路的特点, 时钟电路与复位电路的设计,显示电路模块的设计,调速电机驱动电路设计,摇头电机驱动电路设计,蜂鸣器报警模块设计,按键电路设计。3 智能风扇软件设计3.1 软件设计思路软件采用模块化设计。分为:主程序、延时子程序、显示子程序、按键子程序、PWM子程序、定时器子程序、摇头子程序。3.1.1 程序前序程序在运行之前,必须先定义单片机的头文件,如:“#include”;时定义出现频率极高的数据变量,如:“#define uc

28、har unsigned char”,“#define uint unsigned int”等;定义输入和输出I/O口,如:“sbit k1=P32;sbit k2=P33;”等等;以及要调用子程序的函数声明和使用的中间变量。3.1.2 主程序流程图 主程序在“程序前序”后,也可以灵活安排,位置并没有严格要求。下面是主程序的流程图:图3.1.1 主程序流程图3.1.3 延时子程序延时子程序主要用于使显示的效果能让人看得更好。程序在执行时时间太短,如果时间太短,由于人眼反映时间长,就会使视觉上没有理想的显示效果。下面是延时子程序流程图:图3.1.2 延时子程序流程图3.1.4 显示子程序 由于风

29、扇要在两种状态下运行,其显示的内容不同,所以采用两种显示子程序来完成显示效果。 显示方式1程序流程图这种状态下,要求同时显示“风类”和“倒计时时间”,且以动态方式显示。在编写程序时,由于整体程序较长,所以必须考虑调用程序的运行时间对显示效果的影响。如果由于“受调用程序”占用的时间长而影响显示效果时,可以考虑多次调用显示程序。即在“受调用程序”中间的合适位置调用显示子程序。经验说明,此思路是正确的。下图是显示方式1程序流程图:图3.1.3 显示方式1程序流程图 显示方式2程序流程图与前一种显示方式的区别在于:在这种状态下,风扇处于非定时状态运行,要求显示“风类”和“- - -”这些内容,同样采用

30、动态显示。在这种状态下工作时,要求风扇在选择的状态下运转,如果定时未选择时,风扇的工作状态不改变,一直运行;且在运行时可以任意改变风速状态,即选择不同的“档位”。其显示效果影响的解决方法与前面介绍的思路一样。下图是显示方式2程序流程图:图3.1.4 显示方式2程序流程图3.1.5 按键子程序 按键子程序起着发出控制“命令”和控制“要求”的重要作用。其中它要完成运行状态的选择,做出选择之后,还要按各个状态的要求进行控制。即当对运行模式做出选择后,要使显示程序按要求调用,是“显示方式1子程序”还是“显示方式2子程序”来进行显示。而且必须保证当设定值达到上限时,可以重新设置。 下图是按键子程序流程图

31、: 图3.1.5 按键子程序流程图3.1.6 PWM子程序 PWM子程序实现不同脉宽脉冲的输出,从而实现调速的目的。设计中采用软件的方式来得到PWM控制信号。即对I/O口取高电平,再延时;高电平延时到时,再对I/O口电平取反,如此反复就可得到PWM信号。下图是PWM子程序流程图: 图3.1.6 PWM子程序流程图其中,PWM还有其它的方法可以取得: 利用定时器。与软件控制方式相似,只是在这里利用单片机的定时器来定时进行高、低电平的翻转,而不再是软件。 利用单片机自带的PWM控制器。STC12系列单片机自身带有PWM控制器,STC89系列单片机无此功能,其他型号的很多单片机也带有控制器,如PIC单片机、AVR单片机等。3.1.7 定时器子程序此程序主要用来实现倒计时和剩下10s时的报警。下图是其程序流程图:图3.1.7 定时子程序流程图3.1.8 摇头子程序摇头程序采用定时器中断的方式来实现,主要是为了使这个“死程序”不影响主程序的运行,使整体的控制效果看起来更像是在独立运行一样,而互不干涉彼此的运行效果。 下图是摇头子程序流程图:图3.

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1