模拟电风扇控制设计单片机毕业设计毕业论参考模板Word格式文档下载.docx
《模拟电风扇控制设计单片机毕业设计毕业论参考模板Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《模拟电风扇控制设计单片机毕业设计毕业论参考模板Word格式文档下载.docx(34页珍藏版)》请在冰豆网上搜索。
6.过热检测与保护电路不用传感器,用信号源产生的正弦波信号代替传感器“感应”出的信号,若信号幅度大于10mV,则电机停止转动。
第二章系统设计总体方案
本设计采用AT89C52单片机为核心控制器件,系统框图如图2所示
图2
2.1设计方案特点
1、初始加电时,电风扇不加电,四位数码显示器不显示,只有按下“自然风”、“常风”和“睡眠风”任一按键,电风扇开始工作。
同时,定时器只要不进行新的时间设置,电路就将按系统默认控制负载定时工作的时间方式自动开始运行。
2、电路允许用户随时通过按键开关自行输入设置新的定时时间参数,其范围可在1分钟至990秒之间任意设置。
3、在进行时间参数设置和整个定时过程中,系统采用四位数码管显示,最高位显示风类,后三位显示定时时间,做“百位、十位、个位”的倒计时显示,同时用数码管上小数点的同步闪亮作为秒显示,显示直观、准确。
4、在整个定时状态下,电路具有允许用户随时自行选择使用“自然风”状态,也可选择使用“常风”和“睡眠风”状态。
5、过热检测与保护电路不用传感器,用信号源产生的正弦信号代替传感器“感应”出的信号,若信号幅度大于10mV,则电机停止转动。
6、按下“摇头”键,“摇头”电机先正转30ms,再反转30ms,如此往复。
2.2关于最小系统AT89S51
AT89S51是一个低功耗,高性能CMOS8位单片机,片内含4kBytesISP(In-systemprogrammable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISPFlash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。
AT89S51具有如下特点:
40个引脚,4kBytesFlash片内程序存储器,128bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。
此外,AT89S51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。
空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。
同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。
AT89S51单片机的基本结构和外部引脚如图3所示
图3
AT89S51单片机的各引脚功能如下:
VCC:
供电电压。
GND:
接地。
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
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”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3.0RXD(串行输入口)
P3.1TXD(串行输出口)
P3.2/INT0(外部中断0)
P3.3/INT1(外部中断1)
P3.4T0(记时器0外部输入)
P3.5T1(记时器1外部输入)
P3.6/WR(外部数据存储器写选通)
P3.7/RD(外部数据存储器读选通)
P3口同时为闪烁编程和编程校验接收一些控制信号。
I/O口作为输入口时有两种工作方式即所谓的读端口与读引脚读端口时实际上并不从外部读入数据而是把端口锁存器的内容读入到内部总线经过某种运算或变换后再写回到端口锁存器只有读端口时才真正地把外部的数据读入到内部总线上面图中的两个三角形表示的就是输入缓冲器CPU将根据不同的指令分别发出读端口或读引脚信号以完成不同的操作这是由硬件自动完成的不需要我们操心1然后再实行读引脚操作否则就可能读入出错为什么看上面的图如果不对端口置1端口锁存器原来的状态有可能为0Q端为0Q^为1加到场效应管栅极的信号为1该场效应管就导通对地呈现低阻抗,此时即使引脚上输入的信号为1也会因端口的低阻抗而使信号变低使得外加的1信号读入后不一定是1若先执行置1操作则可以使场效应管截止引脚信号直接加到三态缓冲器中实现正确的读入由于在输入操作时还必须附加一个准备动作所以这类I/O口被称为准双向口89S51的P0/P1/P2/P3口作为输入时都是准双向口接下来让我们再看另一个问题从图中可以看出这四个端口还有一个差别除了P1口外P0P2P3口都还有其他的功能
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA/VPP:
当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;
当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:
来自反向振荡器的输出。
2.3AT89S51单片机主要功能部件
•8位的CPU,8031CPU与MCS-51兼容
•4K字节可编程FLASH存储器(寿命:
1000写/擦循环)
•全静态工作:
0Hz-24KHz
•三级程序存储器保密锁定
•128*8位内部RAM
•32条可编程I/O线
•两个16位定时器/计数器
•6个中断源
•可编程串行通道
•低功耗的闲置和掉电模式
•片内振荡器和时钟电路
第三章系统硬件设计
3.1系统硬件设计电路图
该系统已AT89S51单片机为核心,由电源电路,时钟电路,复位电路,显示电路,键盘,电机组成。
图2是系统硬件电路图。
图4
3.2单片机复位电路和时钟电路
复位电路:
首先形成单片机最小系统,在89S51单片机芯片XTAL1、XTAL2加入时钟电路,RST加入复位电路,EA加入高电平。
80C51的复位是由外部的复位电路来实现的。
复位电路分为上电复位和手动复位,我们采用的是上电+手动复位,正常工作时按下S1键,9脚变成高电平,单片机复位,按键松开,通过电容放电,9脚回到低电平。
采用的是12MHZ晶振,所以C=10uf,R1=8.2K,R2=2OOΩ。
图5
时钟电路:
80C51单片机的时钟信号通常有两种方式产生:
一是内部时钟方式,二是外部时钟方式。
采用内部时钟方式:
80C51单片机各功能的运行都是时钟控制信号为基准,有条不紊的工作。
因此,时钟频率直接影响单片机的速度,始终电路的质量也直接影响单片机系统的稳定性。
80C51内部有一个用于构成振荡器的高增益反相放大器,该高增益反相放大器的输入端为芯片引进XTAL1,输出端为引脚XTAL2。
这两个引脚跨接石英晶体振荡器(简称晶振)和微调电容,就构成一个稳定的自激振荡器,如图4时钟电路所示,是80C51内部时钟方式的振荡器电路。
电路中的电容C1、C2典型值通常选择30pF,对外接电容虽然没有严格要求,但电容的大小会影响振荡器频率的高低。
振荡器稳定性和起振的快速性。
晶振的频率越高,则系统的时钟频率也就越高,单片机的运行速度也越快,此次实验我们选择的晶振是12MHZ晶振。
晶振为12MHZ时的机器周期的计算:
一机器周期=12个振荡周期,时钟频率f=1/T,
一机器周期=1/T×
12,若晶振=12MHZ,
一机器周期=1/12M×
12=1uS
外部时钟方式时把外部已有的时钟信号引入到单片机内,此方式常用与多片80C51单片机同时工作,以便于各单片机的同步。
图6
3.3AT89S51单片机电源电路
电路主要分为:
变压、整流、滤波、稳压四个部分。
电流进入电路,通过一个220V变9V的电源变压器把220V的交流电压变为9V的交流电压,然后通过整流器把9V交流,功率为15W左右。
变压器次级线圈输出的9V交流电压经过全桥QD2进行全波整流,C19滤波,7805稳压后,输出稳定的+5V直流工作电压。
图7
3.474LS245功能
74LS245是我们常用的芯片,用来驱动led或者其他的设备,它是8路同相三态双向总线收发器,可双向传输数据。
74LS245还具有双向三态功能,既可以输出,也可以输入数据。
当8051单片机的P0口总线负载达到或超过P0最大负载能力时,必须接入74LS245等总线驱动器。
当片选端/CE低电平有效时,DIR=“0”,信号由B向A传输;
(接收)
DIR=“1”,信号由A向B传输;
(发送)当/CE为高电平时,A、B均为高阻态。
由于P2口始终输出地址的高8位,接口时74LS245的三态控制端/1G和/2G接地,P2口与驱动器输入线对应相连。
P0口与74LS245输入端相连,/E端接地,保证数据现畅通。
8051的/RD和/PSEN相与后接DIR,使得/RD且/PSEN有效时,74LS245输入(P0.i
←Di),其它时间处于输出(P0.i→Di)。
图8
图9
3.574ls06功能
74LS06器件包含6路反相缓冲器/驱动器,带有高压集电极开路输出,可连接高电平电路的接口(如MOS),可驱动高强度电流负载,当然也可以充当反相缓冲器用于驱动TTL输入。
74LS06的额定输出电压为30V,74LS06的最大吸取电流为40mA。
74LS06兼容大多数TTL电路。
74LS06的输入是二极管钳位式,可以把传输产生的不良影响降到最低,大大简化了电路的设计。
74LS06典型功耗为175mW,平均传输延迟时间为8ns。
六高压输出反相缓冲器/驱动器(OC,30V)
简要说明:
7406为集电极开路输出的六组反相驱动器,其主要电特性的典型值如下:
tPLHtphlPD10ns15ns155mW
引出端符号:
1A-6A输入端1Y-6Y输出端
极限值:
电源电压7V,输入电压5.5V,输出截止态电压30V
工作环境温度74060~70℃存储温度-65~150℃
图10
图11
3.6SM4203644位数码管
SM420364为共阴4位数码管,管脚顺序为从数码管的正面看,以第一个脚为起点,12,9,8,6为公共脚。
A-11,B-7,C-4,D-2,E-1,F-10,G-5,I-3。
图12
3.7稳压芯片H7805
稳压芯片H7805系列为3端正稳压电路,TO-220封装,能提供多种固定的输出电压,应用范围广。
内含过流、过热和过载保护电路。
带散热片时,输出电流可达1A。
虽然是固定稳压电路,但使用外接元件,可获得不同的电压和电流。
外形图及引脚排列如图13所示。
图13
它的主要特点:
•输出电流可达1A输出电压有:
5V
•过热保护
•短路保护
•输出晶体管SOA保护
功能框图如图14所示。
图14
3.8直流电机
直流电机是一种能实现机电能量转换的电磁装置,它能使绕组在气隙磁场中旋转感生出交流电动势,并依靠换向装置,将此交流电变为直流电。
其产生交流电的物理根源在于,电机中存在磁场和与之有相对运动的电路,即气隙磁场和绕组。
旋转绕组和静止气隙磁场相互作用的关系可通过电磁感应定律和电磁力定律来分析。
根据电磁感应定律,在恒定磁场中,当导体切割磁场磁力线时,导体中将感应电动势。
如果磁力线、导体及其运动方向三者互相垂直,则导体中产生的感应电动势的大小为
图15
式中,b为磁感应强度,单位为t;
为导体切割磁力线的有效长度,单位为m;
为导体切割磁场的线速度,单位为m/s;
为导体感应电动势,单位为v。
依据电磁力定律,当磁场与载流导体相互垂直时,如图15(a)所示,作用在载流导体上的电磁力为
式中,
为载流导体中电流,单位为a;
为电磁力,单位为n。
电磁力的方向用左手定则确定,如图15(b)所示。
直流电动机的工作原理是基于载流导体在磁场中受力产生电磁力形成电磁转矩的基本原理。
但要获得恒定方向的转矩,需将其外电路的直流电流变为绕组中的交流电流,即同样需要机械整流装置。
直流电动机的基本结构与直流发电机相同,如图16所示,此时a、b电刷接在直流电源上,电机的轴上带着被拖动的负载。
图16
当直流电流从电刷a流人,经换向片1、线圈abcd、换向片2,由电刷b流出时,如图16(a)所示,载流导体在磁场中将受到电磁力的作用,据左手定则,使线圈沿逆时针方向转动。
当电枢转过半周时,如图16(b)所示,dc处于n极下,ab处于s极下,此时电流仍从电刷a流入,经换向片2、线圈dcba、换向片1,最后由电刷b流出,据左手定则,此时线圈仍然沿逆时针方向转动。
因此,电枢将沿一个恒定方向转动。
实际上,直流电动机的电枢上有许多线圈,这些线圈产生的电磁转矩合成为一个总的电磁转矩,拖动负载转动。
总之,在上述直流电动机的工作过程中,单从电枢线圈的角度看,每个导体中的电流方向是交变的;
但从磁极看,每个磁极下导体中电流的方向是固定的,即不管是哪个导体运行到该极下,其中的电流方向总是相同的。
因此,直流电动机可获得恒定方向的电磁转矩,使电机持续旋转。
这就是直流电动机的工作原理。
第四章系统软件设计
4.1占空比
在一串理想的脉冲序列中(如方波),正脉冲的持续时间与脉冲总周期的比值。
例如:
脉冲宽度1μs,信号周期4μs的脉冲序列占空比为0.25。
在一段连续工作时间内脉冲占用的时间与总时间的比值。
在CVSD调制(continuouslyvariableslopedeltamodulation)中,比特“1”的平均比例。
在周期型的现象中,现象发生的时间与总时间的比。
负载周期在中文成语中有句话可以形容:
「三天打渔,两天晒网」,则负载周期为0.6。
占空比是高电平所占周期时间与整个周期时间的比值。
图17
4.2程序框图
主程序
开始
初始化
显示
Y
N
定时器T0中断程序
Y
定时器T1中断程序
关中断
NNY
第五章系统软硬件联合调试
5.1软件仿真
1、把程序在KeiluVision3中调试,成功无错误后生成Hex文件。
2、根据电路图在proteus软件中画出电路图,检查无错误。
3、双击89S51导入生成的Hex文件。
4、点击proteus软件左下方的开始键,进行仿真,观察高低电平情况。
5.2硬件安装与调试
1、电源电路
(1)安装复位开关
(2)安装电源接口
(3)安装相关电阻电容
(4)安装显示灯
(5)安装晶振
(6)接电源调试
(7)用万用表测量电压是否为+5V,接电源灯是否亮
2、功能电路
(1)在电路板上布局好元件位置
(2)根据电路图在电路板反面用导线将线路连接好,尽量做到线路简洁不杂乱,方便线路检查
(3)线路连接好后用万用表检测线路是否连接好
5.3焊接注意事项与焊接顺序
1、注意事项
(1)焊接时间不宜过久,但要完全熔着,以免造成冷焊
(2)注意不要有虚焊
(3)线路上不相连的器件在焊接时不能因为器件相隔距离小,而造成焊点相连
(4)焊点的表面要平滑、有光泽
2、焊接顺序
主要应该注意先焊接小的器件,最后焊接大的;
在焊接好后应先拿开焊丝再拿开电烙铁
5.4软件调试步骤
1、打开KeiluVision3软件,进入界面
2、打开软件后,新建一个项目并保存
3、新建一个文件并添加到项目里
4、在文件中输入程序
5、编译文件,查看是否有错
6、程序正确后为目标1设置选项
7、进行调试
图18
图19
5.5软硬件联调步骤
1、将仿真器安装到电路板上
2、与电脑USB口连接,接通电源
3、运行KeiluVision3软件,添加程序
4、设置好目标选项,选择串口、波特率
5、编译,运行调试
6、若程序和硬件都没有问题,喇叭响,按键可切换歌曲
5.6烧录程序的步骤
1、在KeiluVision3中产生Hex文件
2、保存文件
3、打开MicrocontrLierIspstoftware软件
4、在菜单栏中选择OPTIONSSelectPortLPT1OK
5、选择OPTIONSSelectDeviceAT89S51OK
6、在菜单栏中选择文件LoadBuffer.hex文件
7、在工具栏中选择AutoProgram
8、最后选择OK即可
图20
图21
图22
图23
第六章总结与体会
本设计报告主要介绍了用单片机实现的模拟电风扇的设计方法。
系统介绍了该电路的硬件构成和软件工作过程,系统以AT89S51为核心,主要采用中断控制系统,结合所学的单片机的知识,实现系统的功能要求。
设计中很好的使软、硬件相结合,基本上达到了设计的要求。
通过这次毕业设计,使我对单片机及其附属电路有了一定的了解,对课本上的知识有了近一步的掌握,也深刻明白了自己的不足。
完成本次课程设计的过程,是一个从无到有的过程,经历了兴奋、自信、失落、奋发、所悟、完成几个过程。
课程设计时,仔细阅读设计的题目和要求,以为没什么困难的,所用的知识书上都有。
可是当我动手开始做的时候,才发现其中的算法,设计是那么繁琐。
经过一天的努力,毫无结果。
失落的心情油然而生。
于是,再到图书馆和网上查找资料,在经过借鉴很多类似的资料,文献后,总算是有点眉目了。
埋头苦干的过程是痛苦的,尤其是在思考算法和程序框架时,迷茫,烦躁,特别是当苦思出来一个结果,又被自己推翻,心痛的无法言绘,在这不断循环中,终于最后完善了程序。
其中的煎熬是很痛苦的,深刻明白攻克自己“未知领域”的困难。
但当课程设计完成时,那感觉是甜蜜的,没有耕耘,哪来得收获的喜悦,不懂付出怎么能知道回报的快乐,一分耕耘一分收获,有付出才会有回报,就在这样的痛与快乐的交换中,我学到了知识,学到了做人的道理。
通过这短短几个月的制作,我感觉到自己从课本上学到的理论知识和实践仍有很大的差距。
很多元器件根本不知道有什么功效,在仿真仪器中是什么代码。
有的知识,自己感觉已经掌握得差不多了,但是实际操作起来就有问题出现了。
我遇到了不少问题,花费了很多的时间。
这让我重新反思我们的学习,深刻领悟到我们这个专业动手,实践的重要性。
理论不经过实践考验,是没法实施的,就像我们编的程序,很多方面考虑的都不够,几乎没有涉及到实际应用时的防范方法措施。
这次的课程设计,让我学到了很多书本上学不到的东西,学到了实际应用时,是取用成本的最小化,做设计不仅要考虑大的方面,小的方面也必须做到完美。
最大的收获是:
对按键,显示器,单片机汇编语言的应用有了深刻的了解。
致谢
我从本课题的选择,开题报告,电路设计,焊接实验到最后论文定稿及重复修改等都得到了周老师的悉心指导与教诲,感谢周老师多次地为我指点迷津,帮助我开拓思路,精心点拨,热忱鼓励。
他实事求是的教学态度,孜孜不倦的教诲,严谨的治