基于单片机温控电风扇_毕业论文内容摘要:

各单元模块的硬件设计 6 第三章 各单元模块的硬件设计 系统主要器件包括 DS18B20 温度传感器、 AT89C52 单片机、五位 LED 共阴数码管、风扇直流电机,达林顿反向驱动器 ULN2803。 辅助元件包括电阻、电容、电源、按键、拨码开关等。 系统器件简介 DS18B20 单线数字温度传感器简介 DS18B20 数字温度传感器,是采用美国 DALLAS 半导体公司生产的DS18B20 可组网数字温度传感器芯片 封装而成,它具有微型化、低功耗、高性能、抗干扰能力强、易配微型处理器等优点,可直接将温度转化成串行数字信号供处理器处理。 适用于各种狭小空间设备数字测温和控制领域。 DS18B20 的主要特征:测量的结果直接以数字信号的形式输出,以“一线总线”方式串行传给 CPU,同时可传送 CRC 校验码,具有极强的抗干扰纠错能力;温度测量范围在 55℃ ~ +125℃之间,在 10℃ ~ +85℃时精确度为177。 ℃;可检测温度分辨率为 9~ 12位,对应的可分辨温度分别为 ℃, ℃, ℃和 ℃,可实现高精度测温 ;它单线接口的独特性,使它与微处理器连接时仅需一条端口线即可实现与微处理器的双向通信;支持多点组网功能,即多个DS18B20 可以并联在唯一的三线上,实现组网多点测温的功能;工作电压范围宽,其范围在 ~。 DS18B20 内部结构主要有四部分: 64 位 ROM、温度传感器、非挥发的温度报警触发器 TH 和 TL、配置寄存器。 其管脚有三个,其中 DQ 为数字信号端, GND 为电源地, VDD 为电源输入端。 达林顿反向驱动器 ULN2803 简介 本系统要用单片机控制风扇直流电机,需要加驱动电路,为直流电机提供足够大的驱动电流。 在本系统驱动电路中,选用达林顿反向驱动器 ULN2803 来驱动风扇直流电机。 ULN2803 在使用时接口简单,操作方便,可为电机提供较大的驱琼州学院本科毕业论文 (设计 ) 7 动电流,它实际上是一个集成芯片,单块芯片可同时驱动 8 个电机。 每个电机由单片机的一个 I/O 口输出的为 5V 的 TTL 信号。 UNL2803 由 8 个 NPN 达林顿晶体管组装而成,共 18 个引脚,引脚 1~ 8 分别是 8 路驱动器的输入端,输入信号可直接是 TTL 或是 CMOS 信号;引脚 11~ 18 分别是 8 路驱动器的输出端;引脚 9 为接地线,引脚 10 为电源输入。 当输入 TTL信号为 5V 或 CMOS 信号为 6~ 15V 时,输出的最大电压为 50V,最大电流为 500mA,工作温度范围为 0~ 70℃。 本系统选用的电机为 12V 直流无刷电机,可用 ULN2803来驱动。 AT89C52 单片机简介 AT89C52 是 51 系列单片机的一个型号,它是由 ATMEL 公司生产的一个低电压、高性能的 8 位单片机,片内器件采用 ATMEL 公司的非易失性、高密度存储技术 ,与标准的 MCS51 指令 系统兼容,同时片内设置有通用 8 位中央处理器和8k 字节的可反复擦写的只读程序存储器 ROM 以及 256 字节的数据存储器 RAM,在许多较复杂 的控制系统中 AT89C52 单片机得到了广泛的应用。 AT89C52 有 40 个引脚,各引脚介绍如下: VCC: +5V 电源线; GND:接地线。 P0 口: ~ ,这组引脚共 8 条,其中 为最高位, 为最低位。 这 8 条引脚共有两种不同的功能,分别适用于两种不同的情况。 第一种情况是单片机不带片外存储器, P0 可以作为通用 I/O 口使用, ~ 用于传送 CPU的输入 /输出数据,此时它需外接一上拉电阻才能正常工作。 第二种情况是单片机带片外存储器,其各个引脚在 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 位地 址,共同选中片外存储单元,但此时不能传送存储器第三章 各单元模块的硬件设计 8 的读写数据。 在一些型号的单片机中, P2 口还可以配合 P1 口传送内部 EPROM 的12 位地址中的 4 位地址。 P3 口: P3 口引脚是 8 个带内部上拉电阻的双向 I/O 口,当 P3 口写入 1 后,它们被内部上拉为高电平,它也可以作为普通的 I/O 口使用,传送用户的输入输出数据, P3 口也作为一些特殊功能端口使用,如图 31 所示。 : RXD(串行数据接受口) , : TXD(串行数据发送口) : 0INT (外部中断 0 输入 ), : 1INT (外部中断 1 输入) : T0(计数器 0 计数输入) , : T1(计时器 1 外部输入) : WR (外部 RAM 写选通信号) : RD (外部 RAM 读选通信号) 图 31 AT89C52 单片机 RST:复位输入。 当振荡器复位器件时,要保持 RST 脚两个机器 周期的高电平状态。 ALE/PROG :地址锁存允许 /编程线,当访问片外存储器时,在 ~ 引脚线上输出片外存储器低 8 位地址的同时还在 ALE/PROG 线上输出一个高电位脉冲,其下降沿用于把这个片外存储器低 8 位地址锁存到外部专用地址锁存器,以便空出 ~ 引脚线去传送随后而来的片外存储器读写数据。 在不琼州学院本科毕业论文 (设计 ) 9 访问片外存储器时,单片机自动在 ALE/PROG 线上输出频率为 1/6 晶振频率的脉冲 序列。 PSEN :外部程序存储器 ROM 的选通信号。 在由外部程序存储器取指期间,每个机器周期两次 PSEN 有效。 但在访问外部数据存储器时,这两次有效的PSEN 信号将不出现。 EA /VPP:允许访问片外存储器 /编程电源线,当 EA 保持低电平时,则在此期间允许使用片外程序存储器,不管是否有内部程序存储器。 当 EA 保持高电平时,则允许使用片内程序存储器。 在 FLASH 编程期间,此引脚也用于施加 12V编程电源( VPP)。 XTAL1 和 XTAL2: 片内震荡电路输入线,这两个端子用来外接石英晶体和微电容,即用来连接单片机片内 OSC 的定时反馈回路。 LED 数码管简介 本系统选用五个 LED 数码管来进行温度显示。 LED 又称为数码管,它主要有8 段发光二极管组成的不同组合,其中 a~ g 为数字和字符显示段, dp 为小数点的显示,通过 a~ g 这 7 个发光二极管点亮的不同组合,可以显示 0~ 9 和 A~ F共 16 个数字和字母。 LED 数码管可以分为共阴极和共阳极两种结构,如图 32( a)和图 32( b)所示。 共阴极结构把 8 个发光二极管阴极连接在一起,共阳极结构是把 8 个发光二极管阳极连接在一起。 通过单片机引脚输出高低电平,可使数码管显示相应的数字或字母,这种使数码管显示字形的数据称字形码,又称段选码。 数码管引脚 图 32 七段 LED数码管 第三章 各单元模块的硬件设计 10 表 31 七段 LED的段选码表 显示字符 共阴极段 码 共阳极段码 显示字符 共阴极段码 共阳极段码 0 3FH C0H 8 7FH 80H 1 06H F9H 9 6FH 90H 2 5BH A4H A 77H 88H 3 4FH B0H B 7FH 83H 4 66H 99H C 39H C6H 5 6DH 92H D 3FH A1H 6 7DH 82H E 79H 86H 7 07H F8H F 71H 8EH 一个共阴极数码管接至单片机的电路,要想显示“ 7”,须 a、 b、 c 这 3 个显示段发光(即这 3 个字段为高电平)只要在 P0 口输入 00000111( 07H)即可。 这里 07H 即为数字 7 的段选码。 字形与段选码的关系见表 31 所示。 电路设计 开关复位与晶振电路 在单片机应用系统中,出单片机本身需要复位以外,外部扩展 I/O 接口电路也需要复位,因此需要一个包括上电和按钮复位在内的系统同步复位电路。 单片机上的 XTAL1 和 XTAL2 用来外接石英晶体和微调电容,即用来连接单片机内 OSC的定时反馈回路。 笨设计中开关复位与晶振电路如图 33 所示,当按下按键开关S1 时,系统复位一次。 其中电容 C C2 为 33pF, C3 为 10uF,电阻 R R3 阻值为 10k,晶振频率为 12MHz。 琼州学院本科毕业论文 (设计 ) 11 图 33 系统复位与晶振电路 独立 按键 连接电路 按键 包括两个独立按键 S2 和 S3,一端与单片机的 和 口连接,另一端接地,当按下任一键时, P1 口读取低电平有效。 系统上电后,进入 按键 扫描子程序,以查询的方式确定各按键,完成温度初值的设定。 其中按键 S2 为加按键,每按一次,系统对最初设定值加一,按键 S3 为减按键,每按下一次,系统对初定值进行减一计算。 其连线图如图 34 所示。 第三章 各单元模块的硬件设计 12 图 34 独立按键连接电路 数码管显示电路 本设计制作中选 用 5 位共阴极数码管作为显示模块,它和单片机硬件的接口如图 35 所示。 其中前 3 位数码管 DS DS DS3 用于显示温度传感器实时检测采集到的温度,可精确到 摄氏度,显示范围为 0~ 摄氏度;后 2 位数码管 DS DS5 用于显示系统设置的初值温度,只能显示整数的温度值,显示范围为 0~ 99 摄氏度。 5 位数码管的段选 a、 b、 c、 d、 e、 f、 g、 dp 线分别与单片机的 ~ 口连接,其中 P0 口需要接一 10K 的上拉电阻,以使单片机的 P0口能够输出高低电平。 5 位数码管的位选 W1~ W5 分别与单片机的 ~ 口相连接,只要在 ~ 口任一位中输出低电平,则选中与该位相连的数码管。 琼州学院本科毕业论文 (设计 ) 13 图 35 数码管显示电路 温度采集电路 DS18B20 数字温度传感器通过其内部计数时钟周期的作用,实现了特有的温度测量功能。 低温系数振荡器输出的时钟信号通过由高温度系数振荡器产生的门周期而被计数,计数器预先设置有与 55℃相应的一个基权值。 如果计数器计数到 0 时,高温度系数振荡周期还未结束,则表 示测量的温度值高于 55℃,被预置在 55℃的温度寄存器中的值就加 1℃,然后这个过程不断反复,知道高温系数振荡周期结束为止。 此时温度寄存器中的值即为被测温度值,这个值以 16 位二进制的形式存放在存储器中,通过主机发送存储器读命令可读出此温度值,读取时低位在前,高位在后,依次进行。 由于温度振荡器的抛物线特性的影响,其内用的斜率累加器进行补偿。 DS18B20 在使用时,一般都采用单片机来实现数据采集。 只须将 DS18B20 信号线与单片机 1 位 I/O 线相连,且单片机的 1 位 I/O 线可挂多个 DS18B20,就可第三章 各单元模块的硬件设计 14 实现单点或多 点温度检测。 本设计中将 DS18B20 接在 口实现温度的采集,其与单片机的连接如图 36 所示。 图 36 温度采集电路 风扇电机驱动与调速电路 本设计中由单片机的 I/O 口输出 PWM 脉冲,通过一个达林顿反向驱动器ULN2803 驱动 12V 的直流无刷电机以及实现风扇电机转速的调节。 按键控制设置温度,通过软件向单片机输入相应控制指令,由单片机通过 口输出与转速相应的 PWM 脉冲,经过 ULN2803 驱动风扇直流电机控制电路,实现电机转速与启停的自动控制。 当环境温度升高时,直流电机的转速会相 应按照设定的等级有所提高;当环境温度下降时,电机的转速会相应的下降;当环境温度低于设置温度时,电机停止转动,而环境温度又高于预设温度时,电机重新启动。 电路图如图 37 所示,风扇电机的一端接 12V 电源,另一端 ULN2803 的 OUT7引脚, ULN2803 的 IN7 引脚与单片机的 引脚相连,通过控制单片机的 引脚输出 PWM 信号,由此控制风扇直流电机的速度与启停。 琼州学院本科毕业论文 (设计 ) 15 图 37 风扇电机驱动与调速电路 系统选用的风扇电机为 12 直流无刷电机,达林顿反向驱动器 ULN2803 输入TTL 信号为 5V 或 CMOS 信号 为 6~ 15V 时,输出的最大电压为 50。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。