单片机c语言教程通过高低电平控制定反位继电器状态及表示灯 请问图纸和 C语言怎样设计?谢谢

求一个MSP430单片机程序
可以判断输入的高低电平来控制末端继电器通断_百度知道
求一个MSP430单片机程序
可以判断输入的高低电平来控制末端继电器通断
我有更好的答案
么简单的要用MSP430么
其他类似问题
msp430单片机的相关知识
等待您来回答
您可能关注的推广回答者:回答者:
下载知道APP
随时随地咨询
出门在外也不愁扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
51單片機C語言程序設計與實驗
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口请问 有关用C语言描述单片机引脚高低电平语句,除了如P1_0表示p1.0口外,还有其他比较方便的表示方法吗_百度知道
请问 有关用C语言描述单片机引脚高低电平语句,除了如P1_0表示p1.0口外,还有其他比较方便的表示方法吗
提问者采纳
用P1_0表示p1.0是要声明 sbit P1_0 = p1.0是吧?这样多一步变量的声明而已,用起来其实很方便呀。要是想用另外个方法的话,那就直接对p1整体赋值吧,但是这里有一点就是,对p1整体赋值但是又只想改变p1.0的值就要用与和或运算了具体做法是:p1 = p1 | 0X80;
肇臼尺妒侔德踌泉穿沪
设置1p1 = p1 & 0X7F;
设置0这样看起来,还没定义变量的方便
不用先申明的
应该是默认的
还有我想解决的是比如在P0口内的8个引脚循环显示外接的LED,但是在C语言描述中,老是要反复写明引脚的当前状态,所以想寻求个能不能像++.--移位之类的语句代替呢
八个引脚循环显示外接LED,就是做个流水灯是吧?应该可以给P1口循环赋值来定,你试试看这个怎么样P1=0X01;while(1){
if(P1==0X80)
//要是灯是P1.0口的话,下一个设置为P1.7口
//P1.7....P1.6.......P1.5......
//这里加个延迟函数}我寝室电脑没有编译环境,只有按想象着写了,你先试试看行不行
提问者评价
其他类似问题
其他2条回答
这时,P1引脚的高电平,被外接二极管电平所钳制,为0.7V。 低四位为P1.4 - P1.7 ≈ 0V 用万用表 黑表笔接敛颧翅断俨登愁券传猾单片机 20脚,红表笔接
你是想做跑马灯之类的东西吧?#include&intrins.h&然后试试这个语句:P0=_CROL_(P0,a);意思是把P0口的数据左移a位,同理_CROR_右移。
等待您来回答
您可能关注的推广
下载知道APP
随时随地咨询
出门在外也不愁单片机与c语言入门_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
文档贡献者贡献于
评价文档:
323页¥23.8822页免费48页免费325页¥19.2032页免费 40页免费40页免费50页1下载券45页1下载券11页免费
喜欢此文档的还喜欢428页免费42页免费9页免费60页免费8页免费
单片机与c语言入门|
把文档贴到Blog、BBS或个人站等:
普通尺寸(450*500pix)
较大尺寸(630*500pix)
大小:4.63MB
登录百度文库,专享文档复制特权,财富值每天免费拿!
你可能喜欢基于AT89C52单片机的智能温控风扇设计-工作总结范文网
全站搜索:
您现在的位置:&>&&>&工学
基于AT89C52单片机的智能温控风扇设计
智能温控风扇的设计
郑州科技学院
专科毕业设计(论文)
智能温控风扇的设计学生姓名专业班级学
号所 在 系指导教师完成时间
I智能温控风扇的设计智能温控风扇的设计
基于检测技术和单片机控制技术,设计了一种智能温控调速风扇。阐述了智能温控调速风扇的工作原理、硬件设计、软件实现的过程。系统原理简单,工作稳定,成本低,具有一定的节能效果。通过单片机的控制我们实现了电风扇的主要功能:当按下开关键时,系统初始化默认的设定温度为25度,如果外界温度高于设定温度电风扇进行运转,如果外界温度高于低于设定温度则风页不转动,同时显示外界的温度。可以设置所需的温度,并同时显示所设定的温度,同时按加减键退出设定功能。电风扇的自动控制,让电风扇这一家用电器变的更智能化。克服了普通电风扇无法根据外界温度自动调节转速困难。智能电风扇的设计具有重要的现实意义。关键词
AT89C52/温度传感器/直流电机/模拟风扇II智能温控风扇的设计Esign of intelligent temperature control fan
Based detection and single-chip control technology, the design of a smart temperature control fan speed. Explains smart temperature control fan speed control works, hardware design, software implementation process. System is simple, stable, low cost, has a certain energy-saving effect.Controlled by the microcontroller to achieve a fan of our main functions: When you press the key to open the system initialize the default set temperature is 25 degrees, if the outside temperature is above the set temperature for fan operation, if the outside temperature is high below the set temperature in the wind does not turn the page, displaying the outside temperature. You can set the desired temperature, and also shows the set temperature, press the plus or minus key to exit the setting mode.Automatic fan control, so fans of the home appliances become more intelligent. Unable to overcome the ordinary fan speed automatically adjusted according to outside temperature difficult. Smart fan design has important practical significance.KEY WORDS
AT89C52, temperature sensor, D.C. electric machine,Simulation of fan.III智能温控风扇的设计目
中文摘要.......................................................................................................Ⅰ 英文摘要.......................................................................................................Ⅱ1
绪论 ......................................................................................................... 31.1
引言 .................................................................................................. 31.2
发展现状与应用领域 ..................................................................... 32
整体方案的设计 ..................................................................................... 52.1
系统整体设计 .................................................................................. 52.2
方案论证 .......................................................................................... 52.3
温度传感器的选择方案 ................................................................. 52.4
控制核心的选择.............................................................................. 62.3
显示电路的选择.............................................................................. 72.4
调速方式的选择.............................................................................. 72.5
控制执行部件的选择 ..................................................................... 83
主要原件的介绍 ..................................................................................... 93.1
温度传感器 ...................................................................................... 93.1.1
温度传感器的种类和选择 ........................................................................... 93.1.2
DS18B20的工作原理及其单片机的接口电路 .......................................... 93.2
单片机 ............................................................................................ 113.2.1
单片机的种类及选择 ................................................................................. 113.2.2
AT89C52 单片机简介 ............................................................................... 133.2.3
AT89C52的性能特点和芯片引脚图 .......................................................... 153.3
直流电机 ........................................................................................ 164
硬件设计 ............................................................................................... 194.1
开关复位电路 ................................................................................ 194.2
数码管显示电路............................................................................ 194.3
温度采集电路 ................................................................................ 204.4
风扇电机驱动与调速电路 ........................................................... 215
软件设计 ............................................................................................... 236
系统调试 ............................................................................................... 256.1
系统存在的不足及展望 ............................................................... 256.2
调试过程中遇到的故障及解决方法 ........................................... 25结束语 ......................................................................................................... 26致 谢 ......................................................................................................... 27
智能温控风扇的设计参考文献 ..................................................................................................... 28附 录1:电路总图 .................................................................................. 29附
录2:实物图 ...................................................................................... 30附
录3:源程序 ...................................................................................... 31附
录4:温控风扇清单 .......................................................................... 35
智能温控风扇的设计1
引言生活中,我们经常会使用一些与温度有关的设备。比如,现在虽然不少城市家庭用上了空调,但在占中国大部分人口的农村地区依旧使用电风扇作为降温防暑设备,春夏(夏秋)交替时节,白天温度依旧很高,电风扇应高转速、大风量,使人感到清凉;到了晚上,气温降低,当人入睡后,应该逐步减小转速,以免使人感冒。虽然电风扇都有调节不同档位的功能,但必须要人手动换档,睡着了就无能为力了,而普遍采用的定时器关闭的做法,一方面是定时时间长短有限制,一般是一两个小时;另一方面可能在一两个小时后气温依旧没有降低很多,而风扇就关闭了,使人在睡梦中热醒而不得不起床重新打开风扇,增加定时器时间,非常麻烦,而且可能多次定时后最后一次定时时间太长,在温度降低以后风扇依旧继续吹风,使人感冒;第三方面是只有简单的到了定时时间就关闭风扇电源的单一功能,不能满足气温变化对风扇风速大小的不同要求。又比如在较大功率的电子产品散热方面,现在绝大多数都采用了风冷系统,利用风扇引起空气流动,带走热量,使电子产品不至于发热烧坏。要使电子产品保持较低的温度,必须用大功率、高转速、大风量的风扇,而风扇的噪音与其功率成正比。如果要低噪音,则要减小风扇转速,又会引起电子设备温度上升,不能两全其美。为解决上述问题,我们设计了这套温控自动风扇系统。本系统采用高精度集成温度传感器,用单片机控制,能显示实时温度,并根据使用者设定的温度自动在相应温度时作出小风、大风、停机动作,精确度高,动作准确。1.2
发展现状与应用领域当今社会已经完全进入了电子信息化,温度控制器在各行各业中已经得到了充分的利用。具有对温度进行实时监控的功能,以保证工业仪器,测量工具,农业种植的正常运作,它的最大特点是能实时监控周围温度的高低,并能同时控制电机运作来改变温度。它的广泛应用和普及给人们的日常生活带来了方便。简易温度监测控制器是利用单片机系统来完成的一个小型的控制系统。现阶段运用与国内大部分家庭,系统效率越来越高,成本也越来越低。其发展趋势可以根据其性质进行相应的改进可以运用与不同场合的温度监测控制,并带来大量的经济效益。3智能温控风扇的设计它广泛应用于城市、农村、各种工业生产,在一定情况下亦适用于太阳能、锅炉及对温度敏感的产业的自动控制和温度报警,是实现无人值守的理想产品,市场极为广阔,需求量大。并且使用寿命长,适用范围广,安装极其容易。4智能温控风扇的设计2
整体方案的设计2.1
系统整体设计
方案论证本设计要实现风扇直流电机的温度控制,使风扇电机能根据环境温度的变化自动启停及改变转速,需要比较高的温度变化分辨率以及稳定可靠的换挡停机控制部件。2.3
温度传感器的选择方案在本设计中,温度传感器的选择有以下两种方案:方案一:采用热敏电阻作为检测温度的核心元件,并通过运算放大器放大,由于热敏电阻会随温度变化而变化,进而产生输出电压变化的微弱电压变化信号,再经模数转换芯片ADC0809将微弱电压变化信号转化为数字信号输入单片机处理。5智能温控风扇的设计方案二:采用数字式的集成温度传感器DS18B20作为温度检测的核心元件,由其检测并直接输出数字温度信号给单片机进行处理。对于方案一,采用热敏电阻作为温度检测元件,有价格便宜,元件易购的优点,但热敏电阻对温度的细微变化不太敏感,在信号采集、放大以及转换的过程中还会产生失真和误差,并且由于热敏电阻的R-T关系的非线性,其自身电阻对温度的变化存在较大误差,虽然可以通过一定电路来修正,但这不仅将使电路变得更加复杂,而且在人体所处环境温度变化过程中难以检测到小的温度变化。故该方案不适合本系统。对于方案二,由于数字式集成温度传感器DS18B20的高度集成化,大大降低了外接放大转化等电路的误差因数,温度误差变得很小,并且由于其检测温度的原理与热敏电阻检测的原理有着本质的不同,使得其温度分辨力极高。温度值在器件内部转化成数字量直接输出,简化了系统程序设计,又由于该温度传感器采用先进的单总线技术,与单片机的接口变得非常简洁,抗干扰能力强,因此该方案适用于本系统。2.4
控制核心的选择在本设计中采用AT89C52单片机作为控制核心,通过软件编程的方法进行温度检测和判断,并在其I/O口输出控制信号。AT89C52单片机工作电压低,性能高,片内含8k字节的只读程序存储器ROM和256字节的随机数据存储器RAM,它兼容标准的MCS-51指令系统,单片价格也不贵,适合本设计系统。方案一:采用电压比较电路作为控制部件。温度传感器采用热敏电阻或热电偶等,温度信号转为电信号并放大,由集成运放组成的比较电路判决控制风扇转速,当高于或低于某值时将风扇切换到相应档位。方案二:采用单片机作为控制核心。以软件编程的方法进行温度判断,并在端口输出控制信号。对于方案一,采用电压比较电路具有电路简单、易于实现,以及无需编写软件程序的特点,但控制方式过于单一,不能自由设置上下限动作温度,无法满足不同用户以及不同环境下的多种动作温度要求,故不在本系统中采用。对于方案二,以单片机作为控制器,通过编写程序不但能将传感器感测到的温度通过显示电路显示出来,而且用户能通过键盘接口,自由设置上下限动作温度值,满足全方位的需求。并且通过程序判断温度具有极高的精准度,能精确把握环境温度的6智能温控风扇的设计微小变化。故本系统采用方案二。2.3
显示电路的选择方案一:采用四位共阳数码管显示温度,动态扫描显示方式。方案二:采用液晶显示屏LCD显示温度对于方案一,该方案成本低廉,显示温度明确醒目,在夜间也能看见,功耗极低,显示驱动程序的编写也相对简单,这种显示方式得到广泛应用。不足的地方是扫描显示方式是使四个LED逐个点亮,因此会有闪烁,但是人眼的视觉暂留时间为20MS,当数码管扫描周期小于这个时间时人眼将感觉不到闪烁,因此可以通过增大扫描频率来消除闪烁感。对于方案二,液晶体显示屏具有显示字符优美,不但能显示数字还能显示字符甚至图形的优点,这是LED数码管无法比拟的。但是液晶显示模块价格昂贵,驱动程序复杂,从简单实用的原则考虑,本系统采用方案一。2.4
调速方式的选择 方案一:采用数模转换芯片DAC0832来控制,由单片机根据当前环境温度值输出相应数字量到DAC0832中,再由DAC0832产生相应模拟信号控制晶闸管的导通角,从而通过无级调速电路实现风扇电机转速的自动调节。方案二:采用单片机软件编程实现PWM(脉冲宽度调制)调速的方法。PWM是英文Pulse Width Modulation的缩写,它是按一定的规律改变脉冲序列的脉冲宽度,以调节输出量和波形的一种调节方式,在PWM驱动控制的调节系统中,最常用的是矩形波PWM信号,在控制时需要调节PWM波得占空比。占空比是指高电平持续时间在一个周期时间内的百分比。在控制电机的转速时,占空比越大,转速就越快,若全为高电平,占空比为100%时,转速达到最大。用单片机I/O口输出PWM信号时,有如下三种方法:(1) 利用软件延时。当高电平延时时间到时,对I/O口电平取反,使其变成低电平,然后再延时一定时间;当低电平延时时间到时,再对该I/O口电平取反,如此循环即可得到PWM信号。在本设计中应用了此方法。(2) 利用定时器。控制方法与(1)相同,只是在该方法中利用单片机的定时器来定时进行高低电平的转变,而不是用软件延时。应用此方法时编程相对复杂。7智能温控风扇的设计(3) 利用单片机自带的PWM控制器。在STC12系列单片机中自身带有PWM控制器,但本系统所用到得AT89系列单片机无此功能。对于方案一,该方案能够实现对直流风扇电机的无级调速,速度变化灵敏,但是D/A转换芯片的价格较高,与其温控状态下无级调速功能相比性价比不高。对于方案二,相对于其他用硬件或者软硬件相结合的方法实现对电机进行调速而言,采用PWM 用纯软件的方法来实现调速过程,具有更大的灵活性,并可大大降低成本,能够充分发挥单片机的功能,对于简单速度控制系统的实现提供了一种有效的途径。综合考虑选用方案二。2.5
控制执行部件的选择方案一:采用数模转换芯片AD0832控制,由单片机根据当前温度值送出相应数字量到AD0832,由AD0832产生模拟信号控制晶闸管的导通角,从而配合无级调速电路实现温控时的自动无级风力调节。方案二:采用继电器,继电器的接有控制晶闸管导通角的电阻的接入电路与否由单片机控制,根据当前温度值在相应管脚送出高/低电平,决定某个继电器的导通角控制电阻是否接入电路。对于方案一,该方案能够实现在风扇处于温控状态时也能无级调速,但是D/A转换芯片价格较高,与其温控状态下无级调速功能相比性价比不高。对于方案二,虽然在温控状态下只能实现弱/大风两级调速,但采用继电器价格便宜,控制可靠,且出于在温控状态时无级调速并不是特别需要的功能,综合考虑采用方案二。8智能温控风扇的设计3
主要原件的介绍 系统主要器件包括DS18B20温度传感器、AT89C52单片机、四位LED共阴数码管、风扇步进电机。辅助元件包括电阻、电容、晶振、电源、按键、开关等。3.1
温度传感器3.1.1
温度传感器的种类和选择目前市场上常用的温度传感器有pt100,温敏电阻,DS18B20等等。本次设计我们采用DS18B20,DS18B20是DALLAS公司生产的一线式数字温度传感器它具有以下特点:(1)独立的单线接口,只需一个接口引脚即可通信;(2)多点能力使分布使分布式温度检测应用得以简化;(3)不需外部元件;(4)可用数据线供电,不需要备用电源;(5)测量范围从-55摄氏度到+125摄氏度,增值量为0.5摄氏度;(6)以9位数字值方式读出温度;(7)在1秒(典型值)内把温度变为数字;(8)用户可定义的,非易失行的温度警告设置;(9)告警收索命令识别和寻址温度在编订的极限范围之外的器件;(10)应用范围包括恒温控制,工业系统,消费类产品,温度计和各种热敏系统。3.1.2
DS18B20的工作原理及其单片机的接口电路DS18B20 内部结构如图3-1所示,主要由4 部分组成:64 位ROM、温度传感器、非挥发的温度报警触发器TH 和TL、配置寄存器。其管脚排列如图3-2所示,DQ 为数字信号端,GND 为电源地,VDD 为电源输入端。
9智能温控风扇的设计图3-1 DS18B20内部结构图
图3-2 DS18B20外形及管脚由于DS18B20只有一根数据线。因此它和主机(单片机)通信是需要串行通信,而AT89S51有两个串行端口,所以可以不用软件来模拟实现。经过单线接口访问DS18B20必须遵循如下协议:初始化、ROM操作命令、存储器操作命令和控制操作。要使传感器工作,一切处理均从序列开始。主机发送(Tx)--复位脉冲(最短为480μs的低电平信号)。接着主机便释放此线并进入接收方式(Rx)。总线经过4.7K的上拉电阻被拉至高电平状态。在检测到I/O引脚上的上升沿之后,DS18B20等待15-60μs,并且接着发送脉冲(60-240μs的
10智能温控风扇的设计低电平信号)。然后以存在复位脉冲表示DS18B20已经准备好发送或接收,然后给出正确的ROM命令和存储操作命令的数据。DS18B20通过使用时间片来读出和写入数据,时间片用于处理数据位和进行何种指定操作的命令。它有写时间片和读时间片两种。写时间片:当主机把数据线从逻辑高电平拉至逻辑低电平时,产生写时间片。有两种类型的写时间片:写1时间片和写0时间片。所有时间片必须有60微秒的持续期,在各写周期之间必须有最短为1微秒的恢复时间。读时间片:从DS18B20读数据时,使用读时间片。当主机把数据线从逻辑高电平拉至逻辑低电平时产生读时间片。数据线在逻辑低电平必须保持至少1微秒;来自DS18B20的输出数据在时间下降沿之后的15微秒内有效。为了读出从读时间片开始算起15微秒的状态,主机必须停止把引脚驱动拉至低电平。在时间片结束时,I/O引脚经过外部的上拉电阻拉回高电平,所有读时间片的最短持续期为60微秒,包括两个读周期间至少1μs的恢复时间。一旦主机检测到DS18B20的存在,它便可以发送一个器件ROM操作命令。所有ROM操作命令均为8位长。
图3-3 DS18B20与单片机接口电路3.2
单片机3.2.1
单片机的种类及选择当今世界上的单片机种类繁多,厂商琳琅满目,产品性能各异。其种类如下:(1)AVR单片机:ATMEL公司的AVR单片机,是增强型RISC内载Flash的单片机,芯片上的Flash存储器附在用户的产品中,可随时编程,再编程,使用户的产品设计容易,更新换代方便。AVR单片机采用增强的RISC结构,使其具有高速处理能力,在一个时钟周期内可执行复杂的指令,每MHz可实现1MIPS的处理能力。AVR11智能温控风扇的设计单片机工作电压为2.7~6.0V,可以实现耗电最优化。AVR的单片机广泛应用于计算机外部设备,工业实时控制,仪器仪表,通讯设备,家用电器,宇航设备等各个领域。(2)Motorola单片机:Motorola是世界上最大的单片机厂商。从M6800开始,开发了广泛的品种,4位,8位,16位,32位的单片机都能生产,其中典型的代表有:8位机M6805,M68HC05系列,8位增强型M68HC11,M68HC12 ,16位机M68HC16, 32位机M683XX。 Motorola单片机的特点之一是在同样的速度下所用的时钟频率较Intel类单片机低得多,因而使得高频噪声低,抗干扰能力强,更适合于工控领域及恶劣的环境。(3)MicroChip单片机:MicroChip单片机的主要产品是PIC 16C系列和17C系列8位单片机,CPU采用RISC结构,分别仅有33,35,58条指令,采用Harvard双总线结构,运行速度快,低工作电压,低功耗,较大的输入输出直接驱动能力,价格低,一次性编程,小体积。 适用于用量大,档次低,价格敏感的产品。在办公自动化设备,消费电子产品,电讯通信,智能仪器仪表,汽车电子,金融电子,工业控制不同领域都有广泛的应用,PIC系列单片机在世界单片机市场份额排名中逐年提高,发展非常迅速。(4)MDT20XX系列单片机:工业级OTP单片机,Micon公司生产,与PIC单片机管脚完全一致,海尔集团的电冰箱控制器,TCL通信产品,长安奥拓铃木小轿车功率分配器就采用这种单片机。(5)Scenix单片机:Scenix公司推出的8位RISC结构SX系列单片机与Intel 的Pentium II等一起被&&Electronic Industry Yearbook 1998&&评选为1998年世界十大处理器。在技术上有其独到之处:SX系列双时钟设置,指令运行速度可达50/75/100MIPS(每秒执行百万条指令,XXX M Instruction Per Second) ;具有虚拟外设功能,柔性化I/O端口,所有的I/O端口都可单独编程设定,公司提供各种I/O的库函数,用于实现各种I/O模块的功能,如多路UART,多路A/D,PWM,SPI,DTMF,FS,LCD驱动等等。采用EEPROM/FLASH程序存储器,可以实现在线系统编程。通过计算机RS232C接口,采用专用串行电缆即可对目标系统进行在线实时仿真。(6)EPSON单片机:EPSON单片机以低电压,低功耗和内置LCD驱动器特点著名于世,尤其是LCD驱动部分做得很好。广泛用于工业控制,医疗设备,家用电12智能温控风扇的设计器,仪器仪表,通信设备和手持式消费类产品等领域。目前EPSON已推出四位单片机SMC62系列,SMC63系列,SMC60系列和八位单片机SMC88系列。(7)东芝单片机:东芝单片机门类齐全,4位机在家电领域有很大市场,8位机主要有870系列,90系列,该类单片机允许使用慢模式,采用32K时钟时功耗降至10UA数量级。东芝的32位单片机采用MIPS 3000A RISC的CPU结构,面向VCD,数字相机,图像处理等市场。(8)8051单片机:8051单片机最早由Intel公司推出,其后,多家公司购买了8051的内核,使得以8051为内核的MCU系列单片机在世界上产量最大,应用也最广泛,有人推测8051可能最终形成事实上的标准MCU芯片。LG公司生产的GMS90系列单片机,与Intel MCS-51系列,Atmel 89C51/52,89C2051等单片机兼容,CMOS技术,高达40MHZ的时钟频率,应用于: 多功能电话,智能传感器,电度表,工业控制,防盗报警装置,各种计费器,各种IC卡装置,DVD,VCD,CD-ROM。(9)华邦单片机:华邦公司的W77,W78系列8位单片机的脚位和指令集与8051兼容, 但每个指令周期只需要4个时钟周期,速度提高了三倍,工作频率最高可达 40MHz。同时增加了WatchDog Timer,6组外部中断源,2组UART,2组Data pointer及Wait state control pin。 W741系列的4位单片机带液晶驱动,在线烧录,保密性高,低操作电压(1.2V~1.8V)。3.2.2
AT89C52 单片机简介AT89C52是52系列单片机的一个型号,它是由ATMEL公司生产的一个低电压、高性能的8位单片机,片内器件采用ATMEL公司的非易失性、高密度存储技术生产,与标准的MCS-51指令系统兼容,同时片内置有通用8位中央处理器和8k 字节的可反复擦写的只读程序存储器ROM以及256 字节的数据存储器RAM,在许多许多较复杂的控制系统中AT89C2单片机得到了广泛的应用。AT89C2有40个引脚,各引脚介绍如下:VCC:+5V电源线;GND:接地线。P0口:P0.7~P0.0,这组引脚共8条,其中P0.7为最高位,P0.0为最低位。这8条引脚共有两种不同的功能,分别使用于两种不同的情况。第一种情况是单片机不带片外存储器,P0口可以作为通用I/O口使用,P0.7~P0.0用于传送CPU的输入/13智能温控风扇的设计输出数据,此时它需外接一上拉电阻才能正常工作。第二种情况是单片机带片外存储器,其各引脚在CPU访问片外存储器时先是用于传送片外存储器的低8位地址,然后传送CPU对片外存储器的读写数据。 P1口:P1口是一个内部含上拉电阻的8位双向I/O口。它也可作为通用的I/O口使用,与P0口一样用于传送用户的输入输出数据,所不同的是它片内含上拉电阻而P0口没有,故P0口在做该用途时需外接上拉电阻而P1口则无需。在FLASH编程和校验时,P1口用于输入片内EPROM的低8位地址。P2口:P2口为一个内部上拉电阻的8位双向I/O口,它可以作为通用I/O口使用,传送用户的输入/输出数据,同时可与P0口的第二功能配合,用于输出片外存储器的高8位地址,共同选中片外存储单元,但此时不能传送存储器的读写数据。在一些型号的单片机中,P2口还可以配合P1口传送片内EPROM的12位地址中的高4位地址。P3口:P3口引脚是8个带内部上拉电阻的双向I/O口,当P3口写入1后,它们被内部上拉为高电平。它也可作为通用的I/O口使用,传送用户的输入输出数据,P3口也作为一些特殊功能端口使用,如图3-4所示:
14智能温控风扇的设计EA/VPP:允许访问片外存储器/编程电源线,当EA保持低电平时,则在此期间允许使用片外程序存储器,不管是否有内部程序存储器。当EA端保持高电平时,则允许使用片内程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1和XTAL2:片内振荡电路输入线,这两个端子用来外接石英晶体和微调电容,即用来连接单片机片内OSC的定时反馈回路。3.2.3
AT89C52的性能特点和芯片引脚图AT89C52单片机,采用双列直插封装(DIP),有40个引脚。该单片机采用Atmel公司的高密度非易失性存储技术制造,与美国Intel公司生产的MCS―51系列单片机的指令和引脚设置兼容。其主要特征如下:(1)8位CPU(2)内置4K字节可重复编程Flash,可重复擦写1000次(3)完全定态操作:0Hz~24Hz,可输出时钟信号(4)128B的片内数据存储器(5)32根可编程I/O线(6)2个16位定时/计数器(7)中断系统有6个中断源,可编为两个优先级(8)一个全双工可编程串行通道15
智能温控风扇的设计(9)具有两种节能模式:闲置模式和掉电模式值得注意的是,P0、P1、P2、P3口作为普通I/O口使用时都是准双向口结构,其输入操作和输出操作本质不同,输入操作是读引脚状态,输出是对锁存器的写入操作。当内部总线给口锁存器置0或1时,锁存器中的0、1状态立即反映到引脚上。但在输入操作时,如果锁存器状态为0引脚被钳位0状态,导致无法读出引脚的高电平输入。因此,准双向口作为输入口时,应先使锁存器置1(称之为置输入方式)。然后,再读引脚,例如:要将P1口的状态读入到累加器A中,应执行以下两条指令:MOV P1,#0FFH ;P1口置入方式 MOV A, P1 ;读P1口引脚状态到A另外,I/O口的端口自动识别功能,保证了无论是P1口(低8位地址)P2口(高8位地址)的总线复用,还是P3口的功能复用,内部资源自动选择而不需要用指令进行状态选择。近年来,随着计算机技术的发展,单片机的功能越来越强大。由于单片机的寿命长、速度快、低功耗、低噪声、可靠性高的特点及16位、32位单片机的出现,在工业领域仍具有很大的发展潜力。 AT89C52引脚图如图3-5所示。
图3-5 AT89C52引脚图
直流电机16智能温控风扇的设计直流电动机的结构原理图如图3-6所示。
图3-6 无刷直流电动机的机构原理图它主要有电动机本体、位置传感器和电子开关线路三部分组成。电动机本体在结构上与永磁同步电动机相似,但没有笼型绕组和其它启动装置。其定子绕组一般制成多相(三相、四相、五相不等),在实际应用中多为三相,三相绕组又可分为星形连接和三角形连接。转子由永久磁钢按一定极对数(2P=2,4....)组成。图中的电动机本体为三相俩极。三相定子绕组分别与电子开关线路中相应的功率开关器件连接,在图 中A相、B相、C相绕组分别与功率开关V1、V2、V3相接。位置传感器的跟踪转子与电动机转轴相连接。当定子绕组的某一相通电时,该电流与转子永久磁场的磁极所产生的磁场相互作用而产生转矩,驱动转子旋转,再由位置传感器将转子磁场位置变换成电信号,去控制电子开关线路,从而使定子各相绕组按一定次序导通,定子相电流随转子位置的变化而按一定的次序换相。由于电子开关线路的导通次序是与转子转角同步的,因而起到了机械换向器的换向作用。因此,所谓直流电动机,就其基本结构而言,可以认为是一台由电子开关线路、永磁式同步电动机以及位置传感器三者组成的“电动机系统”。其原理框图,如图3-7所示。17智能温控风扇的设计
图3-7 直流电动机原理框图电动机转子的永久磁钢与永久有刷直流电动机中所使用的永久磁钢的作用相似,均是在电动机的气隙中建立足够的磁场,其不同之处在于无刷直流电动机中永久磁钢装在转子上,而直流有刷电动机的磁钢装在定子上。无刷直流电动机电子开关线路是用来控制电动机定子上各相绕组通电的顺序和时间,主要有功率逻辑开关单元和位置传感器信号处理单元两个部分组成。功率逻辑开关单元是控制电路的核心,其功能是将电源的功率以及一定逻辑关系分配给无刷直流电动机定子上各相绕组,以便使电动机产生持续不断的转矩。而相绕组导通的顺序和时间主要取决于来自位置传感器的信号。但位置传感器产生的信号一般不能直接用来控制功率逻辑开关单元,往往要经过一定逻辑处理后才能去控制逻辑开关单元。综上所述,组成无刷直流电动机各主要部件的框图,如图3-8所示。
图3-8 直流电动机的组成框图 18智能温控风扇的设计4
硬件设计4.1
开关复位电路
在单片机应用系统中,除单片机本身需要复位以外,外部扩展I/O接口电路也需要复位,因此需要一个包括上电和按钮复位在内的系统同步复位电路。单片机上的XTAL1和XTAL2用来外接石英晶体和微调电容,即用来连接单片机片内OSC的定时反馈回路。本设计中开关复位与晶振电路如图4-1所示,当按下按键开关S1时,系统复位一次。其中电容C1、C2为20pF,C3为10uF,电阻R2、R3为10k。
图4-1 系统复位电路4.2
数码管显示电路本设计制作中选用4位共阴极数码管作为显示模块,它和单片机硬件的接口如图4-2所示。其中前2位数码管DS1、DS2用于显示温度传感器实时检测采集到的温度,可精确到0.1摄氏度,显示范围为0~99.9摄氏度;后2位数码管DS3、DS4用于显示系统设置的初值温度,只能显示整数的温度值,显示范围为0~99摄氏度。4位数码管的段选a、b、c、d、e、f、g、dp线分别与单片机的P0.0~P0.7口连接,其中P0口19智能温控风扇的设计需接一10K的上拉电阻,以使单片机的P0口能够输出高低电平。5位数码管的位选W1~W5分别与单片机的P2.0~P2.4口相连接,只要P2.0~P2.4中任一位中输出低电平,则选中与该位相连的数码管。
图4-2 数码管显示电路4.3
温度采集电路DS18B20数字温度传感器通过其内部计数时钟周期来的作用,实现了特有的温度测量功能。低温系数振荡器输出的时钟信号通过由高温度系数振荡器产生的门周期而被计数,计数器预先置有与-55℃相对应的一个基权值。如果计数器计数到0时,高温度系数振荡周期还未结束,则表示测量的温度值高于-55℃,被预置在-55℃的温度寄存器中的值就增加1℃,然后这个过程不断重复,直到高温度系数振荡周期结束为止。此时温度寄存器中的值即为被测温度值,这个值以16位二进制形式存放在存储器中,通过主机发送存储器读命令可读出此温度值,读取时低位在前,高位在后,依20智能温控风扇的设计次进行。由于温度振荡器的抛物线特性的影响,其内用斜率累加器进行补偿与单片机1位I/O线相连,且单片机的1位I/O线可挂接多个DS18B20,就可实现单点或多点温度检测在本设计中将DS18B20接在P1.7口实现温度的采集。其与单片机的连接如图4-3所示。
图4-3 温度采集电路4.4
风扇电机驱动与调速电路 本设计中由单片机的I/O口输出PWM脉冲,通过一个达林顿反向驱动器ULN2803驱动12V直流无刷风扇电机以及实现风扇电机速度的调节。键盘控制设置温度,通过软件向单片机输入相应控制指令,由单片机通过P1.7口输出与转速相应的PWM脉冲,经过ULN2803驱动风扇直流电机控制电路,实现电机转速与启停的自动控制。当环境温度升高时,直流电机的转速会相应按照设定的等级有所提高;当环境温度下降时,电机的转速会相应的下降;当环境温度低于设置温度时,电机停止转动,而环境温度又高于预设温度时,电机重新启动。电路如图4-4所示,风扇电机的一端接12V电源,另一端接ULN2803的OUT7引脚,ULN2803的IN7引脚与单片机的P3.1引脚相连,通过控制单片机的P3.1引脚21智能温控风扇的设计输出PWM信号,由此控制风扇直流电机的速度与启停。
风扇电机驱动与调速电路系统选用的风扇电机为12V直流无刷电机,单达林顿反向驱动器ULN2803输入TTL信号为5V或CMOS信号为6~15V时,输出的最大电压为50V,最大电流为500mA,工作温度范围为0~70℃。本系统中单片机I/O口输出的TTL信号为5V,因此此风扇电机可以用ULN2803来驱动。22
智能温控风扇的设计5
软件设计主程序流程图如5-1所示:
图5-1 主程序流程图通过单片机模块检测温度采集模块采集到的温度并作出相应处理,当温度高于25℃时,风扇电路导通,风扇转动并随温度改变转速。当温度低于25℃时,风扇电路不通电,风扇不转。实现风扇自动停止并随温度变化自动调速,同时显示当前温度。
23智能温控风扇的设计程序实现的功能是上电复位时检测温度传感器DS18B20是否存在或它工作是否正常,当不存在或工作不正常时从蜂鸣器发出报警声,提示用户检查DS18B20,安装或者更换。这部分功能由DS18B20复位与检测子程序RESET完成。当检测到传感器工作正常后,发出温度转换命令及读取温度值命令,将从DS18B20读取的二进制温度值转换为七段码在LED上显示出来。显示功能由温度显示子程序DISP1子程序实现。功能介绍:单片机复位后,进行初始化工作,然后进入按键功能模块,最后完成工作。初始化中,将DS18B20,内部RAM,包括按键,默认为控制状态,温度设定为25℃。加减按键同时按下进入温度设定状态,然后按加或减按键进行温度设定,然后再次同时按加减键退出。24智能温控风扇的设计6
系统调试6.1
系统存在的不足及展望本系统由于时间的限制和成本的问题,所以做的比较简单。在本次系统中,只有降温电路而没有升温电路,就是说当传感器检测到温度太低时却不能对其进行升温,而且对本次设计没有对电机设计调速系统,从而电机只能以一种速度进行调节,不能自己选择调节升降温的速率。对于本系统,虽然在某些方面存在着不足,但是对于一般精度要求的不高的温度检测中的应用能够满足用户的需求,并且它的造价成本低,容易上手,简单实用等特点。根据不同用户的需求,不同情况的需要,对其进行进一步的扩展和改进。例如,对其装一个升温电路或者报警电路,并设计一个调速电路,这样用户可以根据自己需要进行调节温度,而且有报警电路可以更加放心的监控温度高低。已成型的温度控制器广泛应用于城市、农村、学校、工矿企事业单位及工业控制,是实现无人值守的理想产品,市场极为广阔,需求量大。并且使用寿命长,适用水质范围广,安装极其容易。6.2
调试过程中遇到的故障及解决方法在软硬件联合调试过程中,主要遇到了以下几个问题:(1)不管怎么样调节电位器,LCD都是暗的。(2)由于驱动电流不够,电机不会转。(3)系统的仿真完全通过,但在把程序写入AT89C52后,系统却不能正常运行。 解决方法依次如下:(1)更换了一个电位器,调节后液晶亮度明显正常。(2)外接一个电机驱动电路。(3)把AT89C52上的29脚和31脚接上高电平,就能使单片机只访问内部程序存储器。25智能温控风扇的设计结束语
经过这次毕业设计,我觉得自己学到了不少东西。归纳起来,主要有以下几点:(1)大学期间主要是学习基础理论知识,并未真正地去应用和实践。但是经过这次毕业设计,我接触到了更多平时没有接触到的仪器设备、元器件以及相关的使用调试经验,发现了自己很多不足之处。我还体会到了所学理论知识的重要性:知识掌握得越多,设计得就更全面、更顺利、更好。(2)毕业设计能够从理论设计和工程实践相结合、巩固基础知识与培养创新意识相结合、个人作用和集体协作相结合等方面全面的培养学生的综合素质。这些对我在将来的工作和学习当中都会有很大的帮助。(3)学会了怎样查阅资料和利用工具书。一个人不可能什么都学过,什么都懂,因此,当在设计过程中需要用一些不曾学过的东西时,就要去有针对性地查找资料,然后加以吸收利用,以提高自己的应用能力,而且还能增长自己见识,补充最新的专业知识。(4)实践能力得到了进一步提高,在调试过程中积累了一些经验。(5)毕业设计对以前学过的理论知识起到了回顾作用,并对其加以进一步的消化和巩固。(6)毕业设计培养了严肃认真和实事求是的学习态度。同学之间的友谊互助也充分的在毕业设计当中体现出来了。26智能温控风扇的设计致 谢
籍此论文结束之际,我要向我所有的良师益友表以深深的谢意。首先要感谢我的论文指导老师――赵明冬老师。在本论文的谋篇布局、编写、修改各个方面她都给了我很多的宝贵意见和建议。除了论文,赵老师在工作上也给了我很多无私的帮助,特别在我在做此次系统时遇到难题的时候,多亏赵老师及时指导,才能使我顺利完成此次设计。其次我要感谢我身边的曾给予我帮助的每一位老师、同学和朋友。再次我要感谢我生活学习了三年的母校――郑州科技学院,感谢我的学院――电气工程系。母校给了我一个宽阔的学习平台,让我在三年的时间里不断的吸取新知,不断的充实自己。最后,我要以感恩的心再一次感谢我认识的每一个人,是你们让我的人生变得更加精彩!在次我为每位伴随我度过三年的同学,老师,领导门深深的鞠一个恭,谢谢!谢谢你们!27智能温控风扇的设计参考文献[1]韩志军.单片机系统设计与应用实例,机械工业出版社,2010,2[2]冯先成.单片机应用系统设计,北京航空大学出版社,2009[3]李群芳.单片微型计算机接口技术及应用,电子工业出版社,2005,1[4]李钢,赵彦峰.1-Wire总线数字温度传感器DSI8B20原理及应用[J].现代电子技术,2005,2[5]楼俊军.基于Proteus和Keil的单片机演奏乐曲的实现[J] ,科技信息,2010[6]吴金戍,沈庆阳,郭庭吉.8051单片机实践与应用,清华大学出版社,2002[7]王会明,侯加林. 智能电风扇控制器的研制[J], 电子与自动化,1998,5[8]张毅刚.MCS-51单片机原理及应用[M],哈尔滨工业大学出版社,2004,06[9]蔡朝洋.单片机控制实习与专题制作[M],北京航空航天大学出版社,2006,11[10]肖兰.电机与拖动,中国水利水电出版社,2004,08[11] 胡汉才.单片机原理及其接口技术,清华大学出版社,2004[12] 荣俊昌.新型电风扇原理与维修,高等教育出版社,2004[13] 王港元.电工电子实践指导,江西科学技术出版社,2005[14] 刘进山.基于MCS-51电风扇智能调速器的设计[J], 广州:电子质量,2004,10[15] 蔡明生.电子设计[M],高等教育出版社,2004,1228智能温控风扇的设计附 录1:电路总图
29智能温控风扇的设计附
录2:实物图
30智能温控风扇的设计附
录3:源程序#include&reg52.h&#define ui unsigned int#define uc unsigned charsbit DQ=P1^6;sbit k=P1^0;sbit led=P1^4;uc code bmb[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};uc wd,fuhao,ds,a,b,g,b1,f,void xy(ui z){for(x=z;x&0;x--);}void chu_shi(){DQ = 1;xy(16);DQ = 0;xy(140);DQ = 1;xy(100);}void fa_song(uc f){for (i=8; i&0; i--){DQ = 0;DQ = 0;DQ = 0;DQ = 0;DQ = 0;
DQ = 0;DQ = 0;DQ = 0;DQ = 0;DQ = 0;
xy(1);DQ =f&0x01;xy(8);DQ = 1;f=f&&1;}}uc
jie_shou(){uc i,b;for (i=8;i&0;i--){b=b&&1;DQ = 0;31智能温控风扇的设计DQ = 1;xy(1);if(DQ==1){b=b|0x80;}else {b=b|0x00;}xy(8);}}void xianshi(){b=wd/100;a=wd%100/10;g=wd%10;f=xshu/1000;if(fuhao==0){if(b!=0){P2=0x01;P0=bmb[b];xy(200);
P2=0x00;P0=0xy(30);P2=0x04;P0=bmb[a];xy(200);
P2=0x00;P0=0xy(30);
}else{if(a!=0){P2=0x04;P0=bmb[a];xy(200);
P2=0x00;P0=0xy(30);
}}P2=0x10;P0=bmb[g]&0x7f;xy(200);
P2=0x00;P0=0xy(30);P2=0x40;P0=bmb[f];xy(200);
P2=0x00;P0=0xy(30);}if(fuhao==1){P2=0x01;P0=0xy(200);P2=0x00;P0=0xy(30);if(a!=0){P2=0x04;P0=bmb[a];xy(200);
P2=0x00;P0=0xy(30);32智能温控风扇的设计}P2=0x10;P0=bmb[g]&0x7f;xy(200);
P2=0x00;P0=0xy(30);P2=0x40;P0=bmb[f];xy(200);
P2=0x00;P0=0xy(30);}}void wendu(){uc w1,w2;chu_shi();fa_song(0xcc);fa_song(0x44);for(b1=4;b1&0;b1--)xianshi();chu_shi();fa_song(0xcc);fa_song(0xbe);w1=jie_shou();w2=jie_shou();if((w2&0xf8)==0){xshu=w1;fuhao=0;wd=w2;wd=wd&&4;wd=wd&0xf0;w1=w1&&4;w1=w1&0x0f;wd=wd|w1;xshu=xshu&0x0f;xshu=xshu*625;}else{w1=~w1;w2=~w2;xshu=w1;fuhao=1;wd=w2;wd=wd&&4;wd=wd&0xf0;w1=w1&&4;w1=w1&0x0f;wd=wd|w1;xshu=xshu&0x0f;xshu=xshu*625;}for(b1=4;b1&0;b1--)xianshi();}void main(){kg=0;33智能温控风扇的设计
} while(1) {
while(!k);
if(kg==2)kg=0;
if(fuhao==0)
if(wd&35)P3=0x0c;
if(wd&29&&wd&36)P3=0x24;
if(wd&24&&wd&30)P3=0x28;
if(wd&25)P3=0x2c;
} }34智能温控风扇的设计附
录4:温控风扇清单
郑 州 科 技 学 院毕业设计(论文)任务书
智能温控风扇专业
姓名主要内容、基本要求、主要参考资料等:主要内容:1.根据设计要求确定系统的总体框图。2.了解掌握AT89C52单片机的基本结构和应用特点。3.熟悉温度传感器和专用控制集成电路工作原理。4.根据系统的要求绘制系统硬件电路图。5.进行部分软件功能的设计。基本要求:1.设计智能温控风扇的总体方案与硬件设计。2.绘出总体程序流程图和模块化设计,并作相关程序编译。3.对设计进行调试,模拟智能温控风扇工作过程。主要资料:现代化传感器技术与系统、传感器与检测技术、52单片机C语言常用模块与综合系统设计、传感器原理及其应用。
完 成 期 限:
2012年4月指导教师签名:评审小组负责人签名:年
郑州科技学院毕业设计(论文)开题报告表
郑州科技学院毕业设计(论文)检查表
郑州科技学院毕业设计评审表
上一篇: 下一篇:
All rights reserved Powered by
copyright &copyright 。文档资料库内容来自网络,如有侵犯请联系客服。}

我要回帖

更多关于 单片机c语言 arccos 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信