自动化系统创意设计大赛作品说明书作品名称:温控风扇系统设计队员 :2015年4月目录1、引言 (3)2、背景ﻩ33、意义与应用ﻩ34、原理简介ﻩ45、方案设计 (4)6、STC12C5A60S2单片机............................................................................................ 56。
1简介ﻩ56、2 PWM寄存器设置 (5)6。
3 PWM占空比计算方法ﻩ56.4I/O工作方式设置 ................................................................................................................. 67、LCD液晶显示屏 (6)8、温度传感器DS18B20ﻩ88.1 初始化 (9)8.2 写操作ﻩ108。
3 读操作ﻩ109、风扇 (10)拓展1: ................................................................................................................................................. 1011拓展2:ﻩ1210、硬件电路设计ﻩ10.1原理图与部分电路PCB图ﻩ1210、2 电机驱动电路......................................................................................................................... 13 11、软件设计 (14)11。
1主函数流程图......................................................................................................................... 14 11。
2温度控制风扇程序流程图 .. (15)11。
3按键控制风扇程序流程图 ................................................................................................. 16 11.4 按键设定温度程序流程图 (17)12、结语ﻩ18参考文献: ............................................................................................................................... 18附录Ⅰ:实物硬件图ﻩ18附录Ⅱ:程序ﻩ18摘要:本设计就是基于STC12C5A60S2单片机技术与温度传感器测量外界温度得设计原理,进行了不同设计方案得比较,给出了设计得硬件电路,同时对各种关键硬件进行较详细得介绍,并且以流程图得方式对系统设计作出介绍。
系统主要通过温度传感器控制不同得PWM占空比输出来控制风扇得档位。
而出于方便、可选择性得考虑,系统也添加了辅助功能,就就是直接手动控制风扇得档位。
关键词:STC12C5A60S2单片机,DS18B20温度传感器,PWM1、引言温控风扇在节能环保方面具有一定得作用,其工作原理除了普通得手动档位调节,主要就是通过温度传感器感应外界温度,并自主地进行档位得调节,这样在风扇开着得情况下,不需进行手动就可以根据不同得外界温度进行自主调节风力大小,达到节能目得。
2、背景随着空调机在日常生活中得普遍应用,很容易想到电风扇会成为空调得社会淘汰品,其实经过市场得考验与证实,真实得并不就是这样得,在空调产品得冲击下,电风扇产品仍然具有很强大得生命力,电风扇在市场得考验中并没有淡出市场,反而销售在不停得复苏中,具有强大得发展空间。
据市场调查,电风扇得不停复苏主要在以下原因:一,就是电风扇虽然没有空调机得强大得制冷功能,但电风扇就是直接取风,风力更加温与,比较适合老年人、儿童以及体质虚弱得人使用。
二,就是电风扇经过多年得市场使用,较符合人们得使用习惯,而且结构简单、操作方便、安装简易。
三,就是电风扇比起空调产品而言,其价格低廉,相对省电,更易得进入老百姓得家庭。
在目前空调还没有普及,并且并不就是所有得情况下空调都适合使用得情况下,智能风扇适合人体对温度得要求,智能风扇还有具有相当作用得、3、意义与应用1、普通电风扇得现状及存在得隐患:大部分只有手动调速,功能单一。
长时间在高负荷工作容易损坏电器,并且造成电量得损失、2、作品可运用在家庭中,风扇得风力随温度而调节,即可以避免人因温度低吹到冷风而着凉,也可达到节能目得,可见温控风扇更具有优越性、3、其次将此系统装在产热多,急需排热得设备上,可以帮助它及时散掉大量得热。
比如电脑散热器等。
4、原理简介1、电源开关,控制系统处于工作还就是停止状态。
2、当系统上电之后,通过单片机读取外界温度,然后在液晶显示屏上显示出来。
通过判断温度得范围,控制风扇得停止与转不同得速度。
同时LED给出档位指示。
温度控制得范围可以通过按键进行设置、3、另外,当不需要温度控制时,可以通过模式切换开关,让系统工作于手动控制模式。
通过按键进行调节风扇得停止,与不同转速。
5、方案设计方案一:采用两片STC89C516RD单片机、液晶1602与ds18b20,进行设计,让单片机1进行温度读取操作,另外得单片机2通过定时器,产生占空比不同得PWM。
两单片机通过串口进行通信,这样单片机1可以通过读取外界得温度,然后对单片机2进行控制。
这样就能在不同得温度区间内,单片机2控制直流5v小风扇不同得转速,从而实现温度自动控制风扇。
方案二:采用STC12C5A60S2单片机、液晶1602与ds18b20。
这也就是一款51单片机,但就是它得性能比STC89C516RD单片机更强大,而且有独立得双路PWM输出。
这样,采用一片STC12C5A60S2单片机就能实现温度读取与直流5v小风扇得转速控制。
方案三:采用stm8s105系列单片机、液晶1602与ds18b20,同样可以实现温度读取与直流5v小风扇得转速控制方案比较:方案一需要耗费更多得硬件资源。
因此我们直接排除方案一。
方案三,如果采用44脚贴片封装得stm8s105单片,可以在很小得覆铜板上把硬件做出来,这样可以节省一些硬件资源。
但就是,因为温度传感器ds18b20得读取就是通过单一I/O口读取得,stm8s105得I/O操作需要设置,让其就是处于输入或者输出方式。
操作非常麻烦。
方案二需要得硬件资源相对较少,而且其I/O口兼容8051单片机,可以实现I/O口准双向操作,这样编程相对简单。
综上所述,我们选择方案二。
6、STC12C5A60S2单片机6、1简介我们采用得单片机为STC12C5A60S2,STC12C5A60S2/AD/PWM系列单片机就是宏晶科技生产得单时钟/机器周期(1T)得单片机,就是高速/低功耗/超强抗干扰得新一代8051单片机,指令代码完全兼容传统8051,但速度快8-12倍。
内部集成MAX810专用复位电路,2路PWM,8路高速10位A/D转换(250K/S)针对电机控制,强干扰场合、其引脚与普通8051单片机基本相同。
6、2 PWM寄存器设置STC12C5A60S2单片机内置两路独立PWM输出,通过设置相应寄存器,可以让占空比改变。
PWM0得输出口在P1。
3,而PWM1得输出口在P1、4相关得设置例子如下面得程序所示:CCON = 0;//初始化PCA控制寄存器//PCA计数器停止运行//清除CF标志位//清除所有中断标志位CL =0; //重置PCA得16位计数器CH= 0;CMOD= 0x02; //设置PCA计数器时钟源为Fosc/2//禁止PCA 计数器溢出中断CCAP0H = CCAP0L = 0xff;//PWM0口输出0%占空比CCAP1H = CCAP1L =1x00; //PWM1口输出100%占空比CCAPM0=0x42;//PCA模块0工作在8位PWM模式并且没有PCA中断CR= 1;//开始计数当寄存器CL值小于[ EPCnL, CAPPnL]时,输出为低电平;当寄存器CL值等于或大于[EP CnL,CAPPnL ]时,输出为高电平;当寄存器CL得值由FF变为00溢出时,[EPCnH CAP PnH]得内容被装载到[EPCnL,CAPPnL ]中。
这样,就可以实现无干扰地实现PWM更新。
6、3PWM占空比计算方法输出得占空比乘以256后,转换为十六进制,然后进行取反,再同时赋值给寄存器CCAPxH 与CCAPxL。
6。
4I/O工作方式设置其I/O口得工作方式有准双向/弱上拉输出,强推挽输出,高阻输入(电流不能流入也不能流出),开漏输出(若外加上拉也可以读取)等。
缺省状态下,I/O得工作方式为准双向/弱上拉、本设计中,对于温度传感器得读写操作,需要I/O工作在准双向得工作状态。
而PWM输出端口,LED驱动输出,端口我们将I/O口得工作方式设置分强推挽输出,输出得拉电流达到20mA,能更好得驱动负载。
设置方式,通过配置相应得寄存器PxM1与PxM0,如下表1所示:表17、LCD液晶显示屏时钟得显示屏选用1602字符液晶。
1602就是指显示得内容为16*2,即能够同时显示两行,每行16个字符。
常见得1602字符液晶有两种,一种显示得就是绿色背光黑色字体,另一种显示蓝色背光白色字体,目前市面上字符液晶绝大多数就是基于HD44780液晶芯片得,控制原理就是完全相同得。
本设计所用1602液晶模块,显示屏就是蓝色背光白色字体、图1为1602字符液晶引脚图图1 1602字符液晶引脚图各引脚功能为:第1脚:GND为地电源、第2脚:VCC接5V正电源。
第3脚:VO为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生重影,使用一个1K得电位器调整对比度、第4脚:RS为寄存器选择,高电平时选择数据寄存器,低电平时选择指令寄存器。
第5脚:R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。
第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。
第7~14脚:DB0~DB7为8位双向数据线。
第15~16脚:背光灯电源、①基本操作时序:读状态输入RS=L,R/W=H,E=H 输出D0-D7=状态字写指令输入RS=L,R/W=L,D0—D7=指令码,E=高脉冲输出无读数据输入RS=H,R/W=H,E=H 输出D0—D7=数据写数据输入RS=H,R/W=L,D0—D7=数据,E=高脉冲输出无②RAM地址映射图:如图2所示:图2 RAM地址映射图当我们在00—0F、40—4F,得地址中任意地写入显示数据时,液晶都可以显示,当写入10-27或50-67地址处时,必须通过移屏指令将它们移入可显示得区域。