收藏 分销(赏)

智能风扇采用单片机at89c51控制系统初稿.doc

上传人:快乐****生活 文档编号:2773510 上传时间:2024-06-05 格式:DOC 页数:34 大小:475.50KB
下载 相关 举报
智能风扇采用单片机at89c51控制系统初稿.doc_第1页
第1页 / 共34页
智能风扇采用单片机at89c51控制系统初稿.doc_第2页
第2页 / 共34页
智能风扇采用单片机at89c51控制系统初稿.doc_第3页
第3页 / 共34页
智能风扇采用单片机at89c51控制系统初稿.doc_第4页
第4页 / 共34页
智能风扇采用单片机at89c51控制系统初稿.doc_第5页
第5页 / 共34页
点击查看更多>>
资源描述

1、摘 要电风扇是夏天给人们降温的非常好的家用电器,智能风扇就是能根据温度的改变,风扇转速随之改变,现在的风扇很难做到这一点,只有人为的几档调速。夏夜温度下降后人们容易因熟睡而受凉,当温度升高时,它又不能根据温度的变化改变转速。本设计智能风扇采用单片机AT89C51作为控制系统的核心,使用温度传感器DS18B20进行当前的温度采集,利用PWM脉冲宽23度调制技术进行实时调速,并通过LED数码管显示当前温度。关键词:单片机;温度传感器;风扇; PWM;Design of Smart Fan Based on Single Chip MicrocomputerAbstractFan is very g

2、ood for people cooling appliances in the summer. Smart Fan is according to changes in temperature, and fan speed changes. Now the fan is difficult to do this, only a few artificial stall speed. The design of the fan control system uses AT89C51 microcontroller , the indoor temperature sensor DS18B20

3、temperature acquisition, use PWM pulse width modulation technology for real-time control, and displays the current temperature through the LED digital tube. Key Words: Microcontroller;Temperature Sensors;Fan;第一章 绪 论31.1引言31.2 发展现状与应用领域31.3 本次设计的主要任务和内容4第二章 方案论证52.1 控制核心的选择52.2 调速方式的选择52.3 温度传感器的选择62

4、.4 显示电路的选择7第三章 主要原件的介绍73.1 AT89C51简介73.2 DS18B20简介93.3四位共阳极数码管11第四章 系统主要硬件电路设计124.1 DS18B20的工作原理及其单片机的接口电路124.2 风扇PWM调速原理及其单片机接口电路144.3晶振及复位电路设计154.4 数码显示电路164.5按键连接电路17第五章 软件设计185.1 程序设置18第六章 系统调试196.1 软件调试206.1.1 按键显示部分的调试206.1.2 传感器DS18B20温度采集部分调试206.1.3 电动机调速电路部分调试216.2 硬件调试216.2.1 传感器DS18B20温度采

5、集部分调试216.2.2电动机调速电路部分调试216.3 系统功能216.3.1 系统实现的功能226.3.2 系统功能分析22总 结23谢 辞23参考文献24附录25附录一:电路原理图25附录二:源程序25第一章 绪 论1.1引言在现实生活中,咱们总是要运用一些降温设施。虽然如今不少城市家庭都用空调设备作为降温工具,但在大部分乡村家庭电风扇依旧是作为夏季降温的主要工具。春夏或是夏秋交替时节,早晚温差较大,白昼温度较高,风扇应该转动的较快,这样才可以让人感到凉爽。到了夜间,气温降落很多,当人们入睡之后,风扇的转速应慢慢减下来,避免感冒。尽管如今的风扇有多个档位可以调节,但都必须由人工来换挡,在

6、人们酣睡以后就无能为力了。针对这个问题我们现在普遍采用定时的办法,但采用定时的方法普遍只能定时两个多小时,如果在这两个多小时里温度没有变化很大,人们就会感到酷热醒过来去打开风扇,这样就影响了人们的睡眠质量。从以上剖析可知,须要设计出一种智能化的电风扇来解决这个问题。本设计的控制核心采用单片机AT89C51,当前环境温度通过温度传感器18B20来采集。实时温度通过LED数码管来显示,并依据温度传感器检测到的当前环境温度,输出相应占空比的PWM脉冲信号,进而调节风扇不同的转速。1.2 发展现状与应用领域虽然作为一种老式家电,电风扇曾一度被认为是空调冲击下的淘汰品;但电风扇具备摆放便利、体积轻巧、价

7、格便宜等优势。我国对电风扇的优化研究是很积极的,由于大部分家庭受消费水平的限制,作为成熟的家电产业中一员的电风扇,在中国还是具有很广阔市场的,智能电风扇已经投入市场,目前这方面的技术已经成熟。下一阶段的研究将是使其愈加人性化,更好的满足不同群体的人的需求。根据不同人群的不同需要,美的等家电企业也相继推出了大厦扇和学生扇等智能化电风扇产品。国外和我国在电器研究方面比较起来,前者对电风扇的研究并不是很踊跃,但是国外在智能化电器领域却比我国更加先进。“智能化电器”包含三个层次:智能化磁力启动器、智能化接触器、和智能化断路器等是智能化的电器元件,智能化开关柜:多台断路器;智能化供配电系统:用电设备与供

8、电系统的控制的控制关系十分密切 。增强网络性能,最大程度地提升配电系统和用电设备的自动化水平是这两个层次上的智能化任务的重点采用可编程器件及微处理器,大量功能通过“以软代硬”来实现,并拥有“现场”设计的能力并充分增强智能化电器元件的“柔性”与 适应性。是新型智能化电器元件的发展趋势。例如一种采用FPGA器件构成的专用功能集成电路已被投入了使用。随着温度控制技术的发展,为了使电风扇愈加人性化以及节省电能等,温度控制风扇越来越受到青睐并被广泛的应用。 温控风扇系统之所以能很好的节约电能是因为能根据当前的环境温度去自动开通、关闭电风扇并能控制电风扇的转速,这样也方便用户们的使用更具人性化。并且温控风

9、扇系统在工业生产、日常生活中都有宽泛的使用,如在工业生产中大型机械设备的散热系统,或限制笔记本电脑上的智能CPU风扇等基于单片机的温控风扇都能够根据环境温度的高低自动启动或停止转动,并能够按照温度的变化完成转速的自动调节,在现实生活中具非常广泛的用途,因此它的设计具有一定的价值意义1.3 本次设计的主要任务和内容 本设计的主要控制核心是AT8951单片机,温度传感器采集到的数据处理通过51单片机来完成,并且电风扇的各种工作状态是通过各种电子元器件对其进行实时控制的,进而满足用户的需要。本次设计主要完成以下内容:(1)可根据当前环境温度和预设温度自动调节风扇转速,当前温度大于预设温度上限,风扇转

10、速较高;小于预设温度上限,大于预设温度下限风扇转速较低;小于预设温度下限风扇自动关闭。 (2) 预设温度可通过按键增加或减少,三个按键。第一个为功能键按第一下显示温度上限可对温度上限进行设置,按第二下显示温度下限可对温度下限进行设置,按第三下显示环境温度。第二个键为温度设置加键,按一下加五度。第三个键为温度减键,按一下温度减一。 (3) 能够实现对风扇转速的手自动控制。 (4)自动模式下,通过对温度信号的检测,完成对风扇转速的智能控制。 (5) 数码管可以对环境温度进行显示,并显示风扇档位。第二章 方案论证2.1 控制核心的选择 方案一:采用单片机作为控制核心。在本设计中采用AT89C51单片

11、机,通过编程的方法来完成对温度的实时采集,在其I/O口输出相应的控制信号控制风扇的转速。单片机AT89C51工作电压相对较低,单片内含有4k字节的ROM和256字节的RAM,并且价钱也相对低廉。方案二:采用电压比较电路作为控制执行部件。将采集到的温度信号转变为电信号然后经放大电路放大,通过集成运算放大器组成的比较电路的判断决定电风扇的转动速度。 对于方案一,用单片机AT89C51作为控制器件,单片机经过读取ds18b20当前温度程序和显示温度程序将温度传感器DS18B20检测到的环境温度通过LED数码管显示出来,并且单片机的外部按键可以通过按键扫描程序对预设的温度上下限初值进行增大或者减小,同

12、时对于设计中所要实现的功能采用单片机的软件编程更容易实现,成本低,所以以单片机AT89C51为控制核心,适合本次设计。对于AT89C51的具体参数参见下面“主要元件介绍”中的各器件介绍。对于方案二,控制核心采用电压比较电路的方案,虽然该方案电路比较简单、易于实现,但预设温度的初值不能进行更改,无法满足不同用户的使用需求,因此本次设计不采纳这个方案。2.2 调速方式的选择方案一:采用变压器调速方式,将市电220v交流电压通过线圈降压到不同的数值然后通过把电风扇电机接到不同电压值的线圈上来完成对直流电机转速的控制。方案二:采用单片机的PWM软件编程方式来调速。PWM是英文Pulse Width M

13、odulation的简写形式,它的文意思是脉冲宽度调制。PWM是一种按某种规律变化的脉冲方波,在PWM驱动的直流电机的调节控制系统当中,最常用的是矩形PWM脉冲信号波,也是编写程序比较简单的。在对直流电机的转速进行调节时,需要根据当前温度来输出相应占空比的PWM脉冲。PWM脉冲的占空比指的是高电平的时间在一个周期时间内的所占的百分比,若全为低电平,占空比为零,风扇不转;若全为高电平,占空比为100%,转速达到最大 。用单片机输出PWM脉冲信号时,有如下两种方法:(1) 利用软件延时。可以利用编程软件控制单片机P1.0口高低电平的时间实现不同占空比的PWM脉冲的输出,利用赋值的方法对单片机输出的

14、电平进行高低转换,从而实现风扇的调速,本设计采用该方法。设计不同占空比的PWM脉冲的思路是:假设采用1S的周期方波,以50MS为基准;则20个基准便就是一个1S,那么当其中10个连续的50MS的高电平脉冲,然后10连续的50MS低电平脉冲,便得到了占空比为50%的PWM方波信号。(2) 利用单片机自带的PWM功能。但本次设计所用得AT89C51单片机没有这种功能,只有STC系列的才有,故不可行。对于方案一,该方案可以对直流风扇进行调速,但调节不是非常方便,而且利用变压器来改变电压,不能适应人性化要求。对于方案二,采用PWM 脉冲调制的编程软件方法来实现对直流电机的实时调速,具有很大的灵活性,并

15、且可以更充分地发挥单片机的功能,综合考虑选用方案二。2.3 温度传感器的选择 方案一:检测温度的元器件采用热电偶,并与适当的外围电路相配合,由单片机AT89C51将检测到的温度信号进行处理。方案二:检测温度的元器件采用热敏电阻,采集的信号经过运算放大器放大,由于热敏电阻的阻值的变化是由温度变化会引起、进而可以得到输出电压变化的信号。方案三:检测温度的元器件采用高精度集成温度传感器DS18B20,单片机可处理直接输出的数字温度信号。对于方案一,检测元器件采用热电偶,它检测的温度范围非常宽,-50摄氏度到1600摄氏度都能检测,但是电路设计非常复杂,故本设计不采用该方案。对于方案二,虽然热敏电阻价

16、格相对来说较为便宜、元器件也比较容易买到,但是对温度的变化感应敏感度不强,在检测温度信号时,有可能会产生失真和误差,故本设计不采用这个方案。对于方案三,由于温度传感器DS18B20的集成度很高,所以大大减少了外接电路,从而检测误差也会小很多,DS18B20检测温度的原理与前面两种方案检测温度的原理有着很大的不同。其检测到的温度值能直接送入单片机处理,不用编写较多的转换程序,简化了程序的编写,且只需用一根线便可与单片机相连,接口也相当简单,本次设计采用该方案。关于DS18B20的详细参数参看下面 的器件介绍。2.4 显示电路的选择方案一:采用四位共阳极数码管显示温度,动态扫描显示方式。方案二:采

17、用液晶显示屏LCD显示温度对于方案一来说数码管的优势是显示温度明亮醒目,在夜间也能看见并且成本低廉,显示驱动程序的编写也较为简单,功耗也较低,这种显示方式得到了广泛应用。不足的地方是数码管显示时会有闪烁,因为扫描显示的方式是使四个LED逐个点亮.但是可以通过增大扫描的频率来消除闪烁感,因为人眼的视觉暂留时间为20MS,当数码管扫描周期小于这个时间时人眼将感觉不出闪烁,。对于方案二,液晶显示屏的优势是能显示字符甚至图形还能显示数字,显示屏显示字符优美,这是LED数码管所无法比拟的。但是液晶显示驱动程序较复杂,模块价格较贵,从简单实用的原则考虑,本系统采用方案一。第三章 主要原件的介绍系统主要器件

18、包括DS18B20温度传感器、AT89C51单片机、四位LED共阳数码管、风扇。辅助元件包括电阻、电容、晶振、电源、按键、开关等。3.1 AT89C51简介AT89C51是由美国ATMEL公司生产的一款低电压单片机,兼容MCS-51指令,内部含有256字节的RAM和4K字节的ROM。其含有Flash存储单元,功能十分强大,并且中央处理器是8位的。AT89C51单片机具有以下标准的功能:一个8位CPU频率范围是1.2-12MHZ,4K字节的Flash闪存,256字节的内部数据存储器RAM,4个8位并行的I/O口,一个全双工的串行口,2个16位的定时/计数器,5个中断源的中断控制系统,片内自带振荡

19、器和时钟电路。AT89C51单片机管脚图如3.3所示: 图3.3 AT89C51单片机 各管脚功能如下8:VCC:40引脚接5V供电电压。GND:20引脚接地。XTAL1:19引脚外接微调电容和石英晶体,为单片机提供外部时钟信号。XTAL2:18引脚外接微调电容和石英晶体,为单片机提供外部时钟信号。P0口:P0.7P0.0,这组引脚一共有8个,其中P0.0为最低位,P0.7为最高位。是漏极开路的8位准双向I/O口,有两种功能。第一:做通用I/O口,无片外内存时,P0口可做通用I/O接口使用。第二:做地址/数据口,在访问外部内存时,用作地址总线的低8位和数据总线。P1口:P1.7P1.0,其中P

20、1.0为最低位,P1.7为最高位,仅用作I/O口。P2口:P2.7P2.0,其中P2.0为最低位,P2.7为最高位。P2口是带内部上拉电阻的8位准双向I/O接口,具有两种功能。第一:做通用I/O口,无片外内存时,P2口可用作通用I/O口。第二:做地址口,在访问外部内存时,用作地址总线的高8位。P3 口:P3.7P3.0,其中P3.7为最高位,P3.0为最低位。P3口是双功能口。具有两种功能。第一:用作通用I/O口。第二功能:P3.0RXD串行口输入;P3.1TXD串行口输出;P3.2INTO外部中断0输入;P3.3INT1外部中断1输入;P3.4T0定时计数器的脉冲输入;P3.5T1定时计数器

21、的脉冲输入;P3.6WR片外RAM写信号;P3.4RD片外RAM读信号。RST:9引脚复位输入,高电平有效。 :29引脚外部程序内存读信号。通常接EPROM的OE端,当访问外部程序内存时,此脚会定时输出脉冲信号作为读片外程序内存的选通信号。端在每个机器周期中两次有效,但当访问外部RAM时,两次负脉冲不出现。可驱动8个LS型TTL。 ALE/:30引脚地址锁存编程/允许线,当单片机访问片外存储器时,在P0.0P0.7引脚线上输出ALE/线上输出一个高电位脉冲的同时还在片外存储器低8位地址,其下降沿的作用是把这个片外存储器低8位地址锁存到外部专用地址锁存器。/VPP:31引脚内外部程序内存选择输入

22、端。=1,CPU访问片外ROM,并执行其指令。当PC0FFFH时,自动转向片外ROM。=0,不论片内是否含有内存,只执行片外ROM的指令。3.2 DS18B20简介DS18B20内部结构主要有四个部分:配置寄存器、非挥发的报警触发器TH和TL、64位的只读程序存储器ROM、温度传感器。总共有三个管脚,包含DQ,GND,VDD。其中DQ为数字信号端,GND为电源地,VDD为电源输入端。DS18B20的主要性能特点如下:(1) 仅可用一个端口便可以通信;(2) 无须外部器件;(3) DS18B20支持多点组网功能;(4) 适应电压范围广,电压范围为3.05.5V;(5) 待机功耗为零;(6) 温度

23、以9位或12位数字;(7) 具有报警命令识别功能;(8) 具有负电压特性,电源接反时,芯片不会烧坏;DS18B20的管脚图及部分温度值与DS18B20输出的数字量对照表见图 3.5和表3-1所示: 图3.5 DS18B20温度传感器 表3-1 部分温度值与DS18B20输出的数字量对照温度值/ 数字输出(二进制) 数字输出(十六进制) +125 0000 0111 1101 0000 07D0H+85 0000 0101 0101 0000 0550H+25.625 0000 0001 1001 0001 0191H+10.125 0000 0000 1010 0010 00A2H+0.5 0

24、000 0000 0000 1000 0008H0 0000 0000 0000 0000 0000H-0.5 1111 1111 1111 1000 FFF8H-10.125 1111 1111 0110 1110 FF5EH-25.625 1111 1111 0110 1111 FF6FH-55 1111 1100 1001 0000 FC90H3.3四位共阳极数码管四位共阳极数码管,位控制端(1-4)给高电平使能相应的位,笔段控制端(A-B、DP.)给低电平可点亮。第四章 系统主要硬件电路设计本次设计的思路:本次设计采用AT89C51单片机为控制核心,当前温度利用温度传感器DS18B20

25、采集并送入单片机处理,单片机根据预设温度与当前温度的比较决定是否开启风扇和风扇转速,并通过四位共阳极LED数码管显示风扇档位和当前环境温度。当前温度高于预设温度上限,风扇工作在高档位2档;低于预设温度上限高于预设温度下限时风扇工作在低档位1档;当前温度低于预设温度下限风扇停止转动0档。单片机根据当前的温度输出相应占空比的PWM脉冲,送入5V的直流电机,从而产生不同转速。复位方式是:上电自动复位,没有复位按键。系统总体设计图如图3.1所示。 AT89C51温度、档位显示键盘功能输入 电机调速 数字温度传感器图3.1 系统总体设计结构图4.1 DS18B20的工作原理及其单片机的接口电路 DS18

26、B20 内部结构如图3-1所示,主要由4 部分组成:64 位ROM、温度传感器、非挥发的温度报警触发器TH 和TL、配置寄存器。其管脚排列如图3-2所示,DQ 为数字信号端,GND 为电源地,VDD 为电源输入端。 图4-1 DS18B20内部结构图 图3-2 DS18B20外形及管脚因为DS18B20只有一根数据线。所以它和单片机的通信是需要串行通信,由于AT89C51有两个串行端口,所以可以不用软件来模拟实现。通过单线接口访问DS18B20必须遵循如下协议:初始化、ROM操作命令、存储器操作命令和控制操作。要使传感器工作,一切处理必须从序列开始。单片机发送(Tx)-复位脉冲(最短为480s

27、的低电平信号)。接着单片机便释放数据线线并进入接收方式(Rx)。经过4.7K的上拉电阻总线被拉至高电平状态。在检测到I/O引脚上的上升沿信号之后,DS18B20需要等待15-60s,然后接着发送脉冲信号(60-240s的低电平信号)。并且以存在复位脉冲表示DS18B20已经准备好了发送或接收,然后给出正确的ROM命令和存储操作命令的数据。DS18B20通过使用时间片进行写入和读出数据的操作,时间片被用来处理数据位和进行何种指定操作。它有写时间片和读时间片两种。写时间片:当单片机把数据线从逻辑高电平拉至逻辑低电平时,产生写时间片。有两种类型的写时间片:写1时间片和写0时间片。所有时间片需要有60

28、微秒的持续期,在各个写周期之间必须要保持最短为1微秒的恢复时间。读时间片:在从DS18B20读数据时,使用读时间片。当单片机把数据线从逻辑高电平拉至逻辑低电平时产生读时间片。数据线在逻辑低电平必须保持至少1微秒的时间;来自温度传感器DS18B20的输出数据在时间下降沿之后的15微秒内有效。为了使单片机读出从读时间片开始算起15微秒的状态,其必须停止把引脚驱动拉至低电平状态。在时间片结束之后,I/O引脚通过外部的上拉电阻拉回至高电平状态,所有读时间片的最短保持时间为60微秒,包括两个读周期间至少要有1s的恢复时间。一旦主机检测到DS18B20的存在,它便会发送一个器件ROM操作命令。所有的ROM

29、操作命令均为8位长。 图3-3 DS18B20与单片机接口电路4.2 风扇PWM调速原理及其单片机接口电路我们采用的是PWM来实现直流电动机的调速,优点:控制原理简单,输出波动小,线性好,对邻近电路干扰小。缺点:功率低,散热问题严重。PWM调速原理:输出电压 (2-1) (2-2)式2-1中称为占空比。占空比D表示了在一个周期T里开关管导通的时间与周期的比值。D的变化范围为0=D=1。当在电源电压U不变的情状态下,输出的平均电压取决于占空比D的大小,改变D值也就可以改变输出电压的平均值了,进而可以达到控制直流电机转速的目的,也就实现了PWM调速。风扇驱动电路核心元件由两个三级管组成。Q1为NP

30、N型三极管8050,基极高电平有效;Q2为PNP型三极管8550,基极低电平有效。R3、R4是限流电阻,R5是上拉电阻。当外界温度高于预设温度上限时,P1.0输出较高电平令Q1导通,当Q1导通电流较大时Q2基极会产生低电平使Q2导通大幅度导通风扇转速较快。当外界温度低于预设温度上限高于预设温度下限时,P1.0会根据程序占空比输出一个间断的高电平,使风扇转速较慢。当外界温度低于预设温度下限时,占空比为零,风扇停止转动。4.3晶振及复位电路设计单片机工作时需要时钟信号,时钟信号通常可由外部方式或者单片机的内部方式提供。本次设计采用内部时钟方式,利用单片机内部自带的反相放大器,XTAL2为放大器的输

31、出端,XTAL1为放大器的输入端,这两个引脚外接石英晶体振荡器和微电容,构成可以自激的振荡器。本设计在XTAL1和XTAL2外接了一个12MHZ的晶振,22pf的电容9。复位是使单片机回复到初使的状态,就跟计算机的重启差不多,并从初始状态从新工作。单片机是高电平复位,一般有两种方式:按键复位和上电复位,两种复位方式均可。本次设计采用上电复位,当系统上电时,系统复位一次,电阻R1为10k。其时钟电路与复位电路如图3.4所示: 4.4 数码显示电路 显示电路部分包括4个共阳极七段数码管,PNP型晶体管,电阻器等。提供段选数据的方式是用单片机的P0端口连接共阳极数码管的七位数据端,通过用单片机的P2

32、端口的P2.0P2.3连接数码管的片选端来提供片选信号输出,用8550(PNP型)三极管搭建驱动电路驱动来驱动数码管显示的显示电路。因为P0口内部没有上拉电阻,所以需要在P0接一个10K的排阻到电源。通过P0口把要显示的数据送给数码管进行点亮,并且通过P2.0P2.3四个端口轮流打开数码管的位选通,由于每位数码管所刷新显示的时间非常短(扫描周期在20ms左右)和人眼视觉暂留,所以我们基本看不出它的闪烁,而是固定同步显示各数据。4.5按键连接电路按键包括三个独立按键S1 S2和S3,一端与单片机的P3.1、P3.2和P3.3口连接,另一端接地,当按下任一键时,P3口读取低电平有效。系统上电后,进

33、入按键扫描子程序,以查询的方式确定各按键,完成温度初值的设定。其中按键S1为设置键,可设置温度上下限值,第一次按下设置键设置温度上限值,第二按下设置键设置温度下限值,再按加减键就可以修改温度值。每按一次S2温度加键,系统对最初设定值加五,按键S3为减按键,每按下一次,系统对初定值进行减一计算。其连线图如图3-4所示。第五章 软件设计5.1 程序设置程序设计部分主要包括主程序、温度读取函数、DS18B20初始化函数、DS18B20温度转换函数、按键扫描函数、风扇电机控制函数、数码管显示函数以及温度处理函数。DS18B20初始化函数完成对DS18B20的初始化;DS18B20温度转换函数完成对环境

34、温度的实时采集;单片机对温度传感器数据的读取及数据换算由温度读取函数完成,温度上下限初值的加减设定由按键扫描函数根据需要来完成;温度处理函数对采集到的温度进行分析处理,为电机转速的变化提供条件;风扇电机控制函数则根据温度的数值完成对电机转速及启停的控制。主程序流程图如图4-1所示。否 初始化读取传感器温度按键扫描并显示温度测量温度与设置温度比较低于下限高于下限低于上限高于上限风扇停止风扇50%速度旋转风扇全速旋转j100,j+1是第六章 系统调试6.1 软件调试6.1.1 按键部分的调试起初根据流程图设计编写的系统程序:P3口是程序的按键接口,现实采用P0控制数码管LED的段码,数码管位码由P

35、2口控制,从而实现数码管的显示以及按键功能。程序经过编译没有出错,但在仿真调试过程中,数码管只是显示的乱码,没有显示正确的温度,按键功能也不管用,当按键按下时,数码管温度显示并不变化。经过反复查找与分析,发现按键扫描程序中没有加入按键消抖程序和松手检测程序,按键在按下与松手时,会有一定程度上的的抖动,从而可能使单片机处理时做出不正确的判断,导致按键调节预设温度初值时失灵,甚至根本不工作。因此必须在按键扫描程序中加入消抖部分程序和松手检测程序,即在按键按下与松手时加入延时判断程序,以检测按键是否完全按下或真的已松手。在按键扫描程序中加入了消抖程序,按键也能有效的工作了,达到了很好的效果。6.1.

36、2显示部分的调试数码管不能正确的显示,主要是因为所有数码管的段码都由P0口传送,而数码管显示又采用了动态扫描的方式,但在程序中却没有设置显示段码的暂存器,导致当P0口传送段码时发生混乱,不能正确识别段码。应在系统中加入锁存器,或是在程序中设定存储段码的空间。并且在数码管显示程序中加入了段码的存储空间后,数码管能够正常的显示温度了。6.1.3 传感器DS18B20温度采集部分调试因为数字式集成温度传感器DS18B20是高度集成化的,所以为软件的编写和调试带来了很大的方便,低功耗、高精度、体积小也为控制电机转速的精度和稳定性提供了很好的条件。软件设计中采用了P1.2引脚作为数字温度输入口,通过温度

37、转换程序使输入的数字信号得以显示。通过软件设计,实现了对环境温度的连续检测,由于硬件LED个数的限制,只能显示档位和环境温度的整数部分。6.1.4 电动机调速电路部分调试本设计中,采用了以两个三极管为核心的驱动电路驱动直流电机,本系统仅驱动一个。软件设置了P1.0口输出不同的PWM波形,通过三极管驱动直流电机转动,通过软件中程序设定,根据不同温度输出不同的PWM波,从而得到不同的占空比控制风扇直流电机。6.2 硬件调试6.2.1 传感器DS18B20温度采集部分调试将DS18B20芯片的数据线接在对应的单片机P1.2口上,并将VCC和GND焊接到相应位置。系统调试中为测试DS18B20能否在系

38、统板上工作,将手心靠近或者用手指捏住芯片时,若可发现LED显示的后两位温度迅速升高,即可验证了DS18B20能在电路板上工作。由于DS18B20有3个引脚,因此在调试过程中应注意各个引脚所对应位置,以免其接反而导致芯片不能正常工作甚至烧毁芯片。6.2.2电动机调速电路部分调试系统本部分的设计中重在软件设计,但是在选择三极管时要选择两个合适的三极管以达到能驱动直流电机的电压。因为外围的驱动电路只是将送来的PWM信号放大从而驱动电机转动。系统软件设置在P1.0口输出是电机转动的PWM占空比,当环境温度高于设置温度下限时,电机开始转动,若此时用高于环境温度的热源靠近芯片DS18B20时,发现当当前温

39、度大于预设温度上限,风扇转速较高;小于预设温度上限,大于预设温度下限风扇转速较低;小于预设温度下限风扇自动关闭。6.2.3 按键显示部分的调试系统显示部分实现了以下功能:LED显示的第一位实现了显示当前风扇挡数,LED的后两位能根据按键的调整显示所需的设计温度或者是环境温度。且LED的显示效果很好,很稳定。6.3 系统功能6.3.1 系统实现的功能本系统能够实现:单片机系统检测环境温度的变化,然后根据环境温度变化来控制风扇直流电机输入占空比的变化,从而产生不同的转动速度,也可根据按键调节不同地上下限温度,再由环境温度与设置温度的差值来控制电机。当当前环境温度低于设置温度下限时,电机停止转动;当

40、当前环境温度高于设置温度下限时,单片机根据不同的环境温度和设置温度的比较输出不同占空比的PWM信号,当当前温度大于预设温度上限,风扇转速较高;小于预设温度上限,大于预设温度下限风扇转速较低;小于预设温度下限风扇自动关闭。并能通过按键调节当前的设置温度。6.3.2 系统功能分析系统总体上由六部分组成,即按键电路、温度检测电路、复位电路、电机驱动电路、数码管显示电路。首先考虑的是温度检测电路,温度检测电路是整个系统的首要部分,首先要通过温度传感器检测到环境温度,然后才能用单片机来判断温度的高低,然后通过单片机的占空比输出相应的平均电压控制直流风扇电机的转速。其次是电机驱动电路,电路的设计中采用了以

41、两个三极管为核心的驱动电路,实现较好的控制效果;该部分需要使用外围电路将单片输出的PWM信号转化为平均电压输出,根据不同的PWM波形得到不同的平均电压,从而控制电机的转速。再次是数码管的动态显示电路,该部分的功能实现对环境温度、设置温度和风扇档位的显示,其中DS18B20采集环境温度,按键实现不同设置温度的调整,实现了对环境温度和档位的及时动态显示。总 结 到目前为止,我的论文已经完成。从最开始的无从入手,毫无头绪,到对硬件软件设计思路的清晰,整个设计过程都是对我大学四年学习的考察。因为我对电路和编程一直都挺感兴趣的,所以我选择了这个题目,定下论文题目后,我马上开始收集与论文相关的材料,尽量让

42、我准备的资料更加完整,在之后的写作过程中,我也遇到了许多的问题和困难,多亏了老师的指导和同学们的帮助,我才能让论文和实物作品慢慢成形,当我终于完成了所有的任务之后,看着我的论文,我觉得一切都是值得的。这次毕业论文的制作过程让我更加了解了自己,知道了独立思考的重要性。我会牢记在这次毕业设计中所经历和感受到的一切,这会我知道今后无论遇到任何事什么困难,都需要脚踏实地、认真谨慎,更要有不怕困难,坚持不懈的精神。 谢 辞本次课题是在王老师的悉心指导下完成的。在对本课题的设计以及论文编写过程中,王老师给予充分正确的指导。在此,谨向王老师表示崇高敬意和衷心的谢意!同时也感谢所有帮助过本课题完成的其他老师以

43、及同学的大力支持,没有他们的积极配合,这次毕业设计也是不能完成的那么顺利。通过本次毕业设计的制作,我深刻地意识到专业知识的重要性,也深刻理解了理论联系实际的真正含义,并且也检验了大学四年的学习成果。在这次设计中我学会了如何把理论和实际问题结合起来,让实践来验证理论,让理论来指导实践。尽管通过这次毕业设计觉得自己有了质的飞跃,但仍需要在以后的工作和学习过程中中继续努力、不断完善。这几个月的设计是对过去所学知识的系统总结和扩充的过程,为今后的发展打下了良好的基础。由于自身专业知识水平有限,设计中一定存在诸多的不足之处,还敬请各位老师批评指正。 参考文献 1 胡汉才.单片机原理及其接口技术.北京:清

44、华大学出版社,20042 刘国钧,陈绍业,王凤翥.图书馆目录.第1版.北京:高等教育出版社,19573 求是科技.单片机典型模块设计实例导航.北京:人民邮电出版社,20044 王化详,张淑英.传感器原理.天津:天津大学出版社,20025 荣俊昌.新型电风扇原理与维修.北京:高等教育出版社,20046 王港元.电工电子实践指导.江西:江西科学技术出版社,20057 余小平,奚大顺.电子系统设计M.北京:航空航天大学出版社,2007.37-538 来清民.传感器与单片机接口及实例M.北京:航空航天大学出版社,2008.90-929 刘健,徐炜,伊均萍,刘良成.电路分析M.北京:电子工业出版社,2005.75-7910 郑海春、姜月.智能无线防盗报警系统.西化:微计算机信息, 2009(2).21-4311 童诗白、华成英.模拟电子技术基础(第三版).北京:高等教育出版社,2007.12 附录附录一:电路原理图附录二:源程序#include#include#define uchar unsigned char#define uint unsigned int/

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
百度文库年卡

猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

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

关于我们      便捷服务       自信AI       AI导航        获赠5币

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

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

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

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服