基于51单片机的智能散热风扇(源码+万字报告+实物)

目录
第一章 绪论 1
1.1 引言 1
1.2 选题的背景及意义 1
1.3基于单片机的智能散热风扇设计要求及内容 2
1.4本文的结构 3
第二章 单片机STC89C52RC芯片简介 4
2.1 单片机的概述 4
2.2单片机STC89C52RC的简介 4
2.2.1 STC89C52RC芯片的引脚及性能 4
2.2.2 增加的新功能 7
第三章 温度监测单元的元器件的选型 8
3.1 温度传感器DS18B20概述 8
3.1.1 特性 8
3.1.2 引脚 8
3.1.3 详细说明及运用 9
3.2 DS18B20的内部处理顺序 10
3.3 DS18B20命令集 10
第四章 硬件系统的设计及分析 12
4.1 硬件系统的整体设计 12
4.2 硬件的各个功能模块的设计与分析 12
4.2.1 电源模块电路设计 12
4.2.2 复位电路的设计 13
4.2.3 晶振电路的设计 14
4.2.4 温度采集电路的设计 14
4.2.5 LCD1602液晶显示电路的设计 15
4.2.6矩阵键盘和独立按键电路的设计 16
4.2.7 EEPROM掉电保存电路的设计 17
4.2.8 1308红外一体化电路的设计 18
第五章 软件系统的设计与分析 19
5.1软件系统的结构分析 19
5.2 软件系统的程序设计 19
5.2.1 主程序与中断程序 19
5.2.2 温度传感器DS18B20的数据测量和处理子程序 21
5.2.3 LCD1602液晶显示子程序 22
5.2.4 按键扫描子程序 23
5.2.5 基于IIC通信总协议的数据存取子程序 25
5.2.6 1308红外接收信号读写子程序 26
第六章 PWM脉宽调制技术 27
6.1 PWM脉宽调制技术简介 27
6.2 PWM调节电压 28
第七章 温度监测及调节系统的调试 30
7.1硬件系统调试 30
7.1.1 Altium Designer 绘制电路原理图 30
7.1.2 Altium Designer 绘制PCB布线图 31
7.1.3硬件调试具体过程 32
7.2软件系统调试 32
7.2.1 Keil uVision4 编程 32
7.2.2软件系统调试具体过程 34
7.3基于51单片机的智能散热风扇系统的联合调试 35
第八章 结论 36
致谢 38
参考文献 39
附录A:原理图 40
附录B:PCB图 41

第一章 绪论
1.1 引言
随着技术的发展革新,出现了许多的电器,人类的生活中也越来越离不开这些电器,而这些电器长时间使用也就会产生热量,如果散发出来的热量无法及时散发出去必然会烧坏器件导致设备不可使用,在这样的情况下,散热风扇也就随之发展起来,开始的时候也就是普通的风扇固定的转速其他不可调节,然而对于当代社会的发展,这已经完全不能满足时代的要求,现在,新型的散热风扇都是智能化、人性化的多功能产品,不仅降低了功耗而且更加贴合人类的要求。对于基于单片机控制的智能散热风扇来说,更是以其特有的优势逐步占领市场。发展智能散热风扇已是必不可少的。
1976年intel公司研制出的MCS—48系列8位微处理器标志着单片机问世。现如今随着单片机的逐渐改进和发展,单片机已经完全渗透到我们生活中的各个领域,每个领域都可见到单片机的踪影。例如在生活方面,摄像机、全自动洗衣机、空调、冰箱等常见的家用电器以及使用广泛的智能IC卡等等;军事方面,飞机上的各种仪表、导弹火箭的装置等;工业方面,各种类型的零件加工机床,机器人,汽车中 保障系统等;医疗方面,各种医疗器械、治疗仪器都有使用单片机。由此可见,单片机不仅发展及其神速,而且应用也极为广泛,成为生活中不可或缺的元素。
1.2 选题的背景及意义
随着科技的进步,工业自动化的发展,原先的散热风扇只有固定的调节档位已经不符合时代的要求。传统的散热风扇只是单纯的有散热的功能,其电机的转速也是固定的,不可调节转速,这样不能达到节能的要求。而且目前的技术产品都往自动化、智能化的方向发展,这也就要求设计中电机转速可以根据温度的高低自动调节达到节能的效果,并且不需要人对其进行实时的控制。
本毕业设计是基于生活中需要降温的要求,能够自动监测空间的温度的状况,并将数据传输给中央处理单元,控制电动机的运行从而达到不同等级的散热功能。当温度超过限制时电机自动调节转速等级实现智能散热功能,而且可以外界控制温度限值以及电机转速的等级,数据过液晶显示屏显示出来。
这个设计不仅符合时代的发展而且节约资源,增加了更多的功能如调节档位、显示温度等,相信这类的技术的发展会慢慢占领市场,逐步完善贴合人类的想法,真正实现自动化、智能化、人性化。
1.3基于单片机的智能散热风扇设计要求及内容
基于单片机的智能散热风扇的设计主要可以分为监测单元、控制单元和中央处理单元。由监测单元传感器DS18B20进行温度的采集,并将数据传输至中央处理单元进行处理显示,再由控制单元将调节的数据传输至中央处理单元进行处理并返回数据控制直流电机的运行。其中,通过IIC通信总线协议将数据写入EEPROM中,实现断电后再次启动可读取上次的数据的功能。
基于单片机的智能散热风扇设计的控制系统核心就在于使用的STC89C52芯片,通过温度传感器DS18B20对温度数据的实时采集,经过温度传感器内转换器转换成对应的二进制数存储在芯片的RAM中,在单片机发出温度读取命令时,温度传感器返回对应的参数值至中央处理单元。其系统框图如图1.1所示。

              图1.1 系统功能框图

监测单元要求的任务:

  1. 采集温度数据,通过单片机中央处理单元的处理,转换成实际的温度值;
  2. 实时对数据进行保存;
  3. 准确的显示温度数值以及温度等级。
    控制单元要求的任务:
  4. 通过矩阵键盘或独立按键调节温度限值和电机转速;
  5. 远距离利用红外遥控来控制以上参数
    1.4本文的结构
    本文以监测温度实现自动化、智能化、人性化为背景,对基于51单片机的智能散热风扇系统进行了研究。全文一共分为八章,每章的主要内容特点如下:
    第一章简要的概括了基于51单片机的智能散热风扇的有关背景、特点以及意义;
    第二章介绍了单片机STC89C52RC的基本概念;
    第三章研究了基于单片机的散热风扇的硬件选取,对温度传感器各项性能指标以及原理进行分析,讨论了温度传感器数据的采集处理方法。
    第四章对基于单片机的智能散热风扇系统进行整体的分析,详细的解读各个硬件模块并设计出电路;
    第五章对基于51单片机的智能散热风扇系统的软件方面加以分析,从每个模块着手编写程序,最后结合起来形成具体的系统;
    第六章讲述了PWM脉宽调制技术,详细描述了调节电压来控制速度;
    第七章详细介绍了如何使用Altium Designer 绘制电路原理图以及PCB图,利用Keil软件编写各个子程序并联合起来进行调试,以及解决调试过程中出现的问题;
    第八章对本设计进行了总结。

第二章 单片机STC89C52RC芯片简介
2.1 单片机的概述
单片机是整个系统的控制中枢,其控制所有器件协调完成特定的功能。单片机是一种采用超大规模集成电路技术将中央处理单元CPU(由运算器和逻辑控制器组成,不仅包括了中断系统而且也包含了部分外部特殊功能寄存器)、只读存储器ROM(用来存放程序以及一些原始数据和表格)、随机存储器RAM(可读写的数据存放在其中,掉电保存)、四个8位并行I/O口、两个定时/计数器等功能模块集成在一块硅片上的集成电路芯片。单片机就是一个小而完善的微机系统。现在社会中单片机的踪影到处可见,如生活中的空调、冰箱还有工业中各种仪器等。单片机的系列也十分多,而使用最为广泛之一的就是51单片机。
通常在设计单片机硬件电路时都会将整个系统分为很多单独部分,每个部分实现一个特定的功能,先设计好各个模块,之后再将模块按逻辑合并成一个整体,这种模块化设计方法有利于降低系统设计的复杂性,提高利用率。
2.2单片机STC89C52RC的简介
STC89C52RC芯片是一种8位运算的微控制器,具有功耗低、性能好等优点,它属于经典的MCS—51内核,而且芯片中含有不需要取下芯片就可以直接烧写程序的Flash存储器,存储空间是8k,。STC89C52RC芯片的CPU是8位的,还有在系统可编程Flash,许多控制系统都会使用它,使用该芯片不仅灵活、高效,而且它的价格低廉、性能可靠、抗干扰能力强,有较广的应用范围。另外STC89C52有两种可选节电模式:掉电保护模式和空闲模式。前者是在掉电的情况下,RAM中内容不会丢失,在下一个中断、复位出现之前,单片机都是停止工作的;后者情况是CPU会暂停一切工作,除此之外的一些部分还是正常工作的例如RAM、定时器/计数器等等。
2.2.1 STC89C52RC芯片的引脚及性能
STC89C52RC的功能有以下几点:
8k字节程序存储空间;512字节数据存储空间;内带2k字节EEPROM存储空间;32个通用I/O口;3个定时器/计数器;外部中断4路,下降沿中断或低电平触发电路;通用异步串行口(UART);STC89C52RC是增强型的8051单片机,它的时钟/机器周期有6和12之分,这根据具体情况选择;它可分为3V和5V,本系统使用的是一个5V单片机,工作电压的范围在53.3V到5.5V之间;工作频率范围是0~40MHZ,实际工作频率可达到48MHZ;有ISP(在系统可编程)/IAP(在应用可编程);看门狗(WDT)电路以及片内振荡器、时钟电路;。
STC89C52RC芯片管脚概述:
STC89C52RC单片机芯片共有40个引脚:4个I/O口P0、P1、P2、P3,共32个外部双向输入/输出口;控制口;电源和时钟。具备的功能:8KB Flash片内程序存储器,512B RAM,2KB EEPROM,1个通用异步串行口(UART),8个中断源,4个中断优先级,可编程计数/定时器有3个,除了上述功能还内带一些电路如看门狗(WDT)电路以及片内振荡器、时钟电路。芯片管脚具体如下图:

图2.1 STC89C52RC芯片
芯片管脚的说明:
8位组成的P0口不仅可以双向传输数据而且还可以输出低8位地址,它是漏极开路的I/O口,在四组I/O口中,也是唯一一组可以直接对外部存储器进行读和写操作。当端口写入“1”时,其被定义为高阻输入口;当它作为输出口使用时,可以驱动8个TTL逻辑门电路。在访问期间地址和数据分时复用时,内部的上拉电阻被激活。P0口在校验程序时,输出指令字节;接收指令字节是在Flash ROM编程时;其中,校验程序的时候必须要外接上拉电阻。
P1口是标准的8位双向I/O口,专门供用户使用的。当端口写入“1”时,作为输入口使用;当它作为输出口使用时,可以驱动4个TTL逻辑门电路。P1口的内部带有上拉电阻,其会在作为输入端口使用时,将端口拉到高电位,这时,外部信号将引脚拉低就会产生一个弱电流。
P2口不被用来扩展外部存储器时,它的功能与P1口一致。P2口在系统扩展时使用,如果访问的外部数据存储器的数据存储地址是8位的,则P2口上的内容不变;如果访问的是16位地址,P2口可作为高8位地址线使用。P2口在flash编程、校验时也会接收高位地址以及一些控制信号。
P3口是具有两种功能的I/O口。它的第一功能与P1口一样可以用于数据的双向传输,但是P3口除了作为一般的I/O口来使用,它还有第二功能用途,如表2.1所示。
表2.1 P3口引脚的第二功能
端口引脚 第二功能
P3.0 RXD(串行输入口)
P3.1 TXD(串行输出口)
P3.2 /INT0(外中断0)
P3.3 /INT1(外中断1)
P3.4 T0(定时/计数器0)
P3.5 T1(定时/计数器1)
P3.6 /WR(外部数据存储器的写选通道)
P3.7 /RD(外部数据存储器的读选通道)

由表2.1可以看出P3口的每一位都可以独立的被定义,这些就是与其他口的不同之处。
两个时钟引脚:
XTAL1是内部时钟工作电路的输入和反相振荡电路的输入端;
XTAL2是反相振荡电路的输出端。
芯片的控制线有以下4根:
RST(Reset)复位功能:要想实现对单片机的复位,就需要在WDT计时溢出后,RST引脚输出两个机器周期以上时间的高电平。若是要关闭此功能,可以对地址是8EH的特殊功能寄存器AUXR上的DISRTO位进行设置,若对DISRTO位不做修改而是处于默认状态下,RST端输出高电平才能正常复位;
ALE//PROG:当P0口访问外部存储器时,输出外部存储器的低8位地址,ALE就输出脉冲对该8位地址进行锁存。如果不访问,ALE还会输出正脉冲信号,该脉冲信号是按照六分之一的时钟振荡频率来输出的,所以它可用于定时。/PROG(片内EPROM编程脉冲)在片内EPROM编程期间输入编程脉冲;
/EA(外部访问允许)。该引脚是用来选择访问内程序存储器和外程序存储器的,它是一个低电平有效的引脚,也就是EA端必须接GND(保持低电平),这样才允许CPU访问外部ROM(地址是0000H到FFFFH)。如果CPU要访问内部存储器,执行内部ROM中的指令,则EA端应该接VCC(保持高电平)。如果加密方式设定为1时,复位时EA端状态会被内部锁存。
电源引脚:
VCC:芯片电源的输入端,接+5V;
GND:接地。
2.2.2 增加的新功能
STC89C52RC兼容标准MCS-51指令系统,对与51单片机而言它增加的新功能有以下几点:
1.一个全双工串行通信口UART;
2.芯片内部增加了2KB EEPROM;
3.中断源增加到8个,4个中断优先级;
4.最高工作频率为33MHZ,而它的极限工作频率是48MHZ,其具有更高的工作频率,使得其拥有更快的计算速度;
5.内部集成看门狗(WDT)计时器;
6.全新的加密算法;
7.向下完全兼容51系列产品。

第三章 温度监测单元的元器件的选型
3.1 温度传感器DS18B20概述
3.1.1 特性
每一个DS18B20都有唯一的系列号,所以同一条单线总线上允许多个DS18B20存在,这也就有利于实现多点测温。为了使信号传输比较稳定,所以最多可以并联8个DS18B20使供电电源电压不会太低。它在小空间的工业设备、电缆线槽等工业领域都有广泛地应用,完成测温和控制。DS18B20输出、输入的信号都是通过单线接口进行传输的,所以DS18B20只需要一根线连接到单片机中央处理单元,外加接地。DS18B20的特性包含以下几点:
1.独特的单线接口,只需一根线即可通信;
2.不需要外部元件;
3.数据线供电,不需要备份电源
4.具有多点能力,简化了分布式温度检测的应用;
5.提供9位数字值的温度读数;
6.测量范围在-55℃到+125℃之间,期间的增量值是0.5℃(等效华氏度范围:-67°F ~ +257°F 增量值:0.9°F);
7.在1s(典型值)内可以将温度转换成数值
8.应用范围包括家用电器、工业系统、任何热敏系统等。
3.1.2 引脚

引脚说明:
GND 地
DQ 单线运用的数据输入\输出引脚
VDD 可选的VDD
NC 空引脚
DNC 不连接

3.1.3 详细说明及运用
温度传感器DS18B20包括了3个主要部件:
1.温度灵敏元件;
2.64位光刻ROM:前8位是每个产品系列的自身编码,用连续数字表示的接下来的48位代表唯一系列号,还有8位是对前几位的校验,通过光刻ROM这样就可以区分一根总线上的多个DS18B20;
3.存储器RAM:DS18B20的RAM有两种分别为可电擦除和高速暂存,其中,非易失性温度触发器TH和TL是在可电擦除RAM中。
DS18B20使用的是单线接口,对于一线通信接口而言,ROM必须先被设置好,之后才能使用记忆、控制功能,所以首先主机必须提供以下五个ROM功能命令中的一个:Read ROM(读ROM);Search ROM(搜索ROM);Match ROM(符合ROM);Alarm Search(告警搜索);Skip ROM(跳过ROM)。
这五种命令之一被执行完成后,由于是对每个器件的ROM操作,如果一线上存在多个器件,就可以知道线上挂有多少设备以及挑选的器件类型是什么样的,这时存储器和控制器功能也可以使用了,主机在6种操作命令中选一个执行。指示DS18B20完成温度测量的就是其中一个控制器操作命令,在完成温度测量指令后,测量结果被放在内部高速暂存存储器中,并且可以发出阅读记忆功能的操作命令,就可以读取片上存储器的存储内容。
工作原理分析:
当温度变化时,高温度系数晶振的振荡率明显变化,其决定了门开通期,将高温度系数振荡器产生的脉冲作为计数器2的输入。DS18B20测量温度就是在门开通期间,对低温度系数晶振减法计数所经历的时钟周期。计数器1和温度寄存器设置的基数值应相对于-55℃,计数器1在门开通期间对低温度系数晶振输出的脉冲进行计数,直到设定值减至为零温度寄存器就加一,在此基础对上述过程进行重复操作,当计数器2的设定值减至零,就可以得到测量的温度,该温度值就是温度寄存器中的值。在此过程中,斜率累加器电路的输出会对计数器1的预设值进行修正。因为测量温度不是线性进行的,而是非线性的,所以就需要斜率累加器对此过程进行修正,并补偿非线性,这样测量的温度具有高分辨率。所以,在确定了以上计数器的值以及斜率累加器的值,就可以得到相应的分辨率。
DS18B20内部完成温度计算,提供的温度读数是二进制补码的,展现形式是16位的,前8位是符号扩展位,全为1时表示温度为负值,为0表示温度为正,对后8位值取原码,再将二进制转换成十进制就得到了温度值。当温度以1/2℃LSB(最低有效位)形式表示时,产生的9位格式如下:
MSB(最高有效位) LSB(最低有效位)

上面列出的是补码形式,计算得出的结果是-50℃,所以当温度以1/2℃LSB形式表示时结果就为-25℃。
3.2 DS18B20的内部处理顺序
经过单线接口访问DS18B20的顺序如下:
1.初始化
初始化是一切处理(如发复位脉冲、接收存在脉冲)的开端。
2.执行ROM操作命令
在初始化后,如果接收到器件的存在脉冲,主机就要执行8位的ROM功能命令。
读ROM(33H):此命令只允许总线上存在一个从属器件,如果多个器件同时发送数据时就会出现数据冲突。
“符合”ROM(55H):要想对后继的存储器操作命令做出响应就必须与64位ROM序列严格相符才行,若不符则需等待复位脉冲。
搜索ROM(F0H):主机可以通过此命令来识别总线上器件个数或从片的64位ROM编码。
告警搜索(ECH):仅在最近一次测量温度高于TH或低于TL时,DS18B20才会对此命令做出响应。
3.3 DS18B20命令集

指令 说明 约定代码 发出约定代码后单总线的操作 注
温度变换命令
温度变换 启动温度变换 44h 读温度“忙”状态 1
存储器命令
读暂存存储器 从暂存存储器读字节 BEh 读9字节数据
写暂存存储器 写字节至暂存存储器地址2和地址3处(TH和TL温度触发器) 4Eh 写数据至地址2和地址3的2个字节
复制暂存存储器 把暂存存储器复制入非易失性存储器(仅地址2和地址3) 43h 读复制状态 2
重新调出E2 把存储在非易失性存储器内的数值重新调入暂存存储器(温度触发器) E3h 读温度“忙”状态
读电源 发DS18B20电源方式的信号至主机 B4h 读电源状态

注:
1.若器件在接收到温度变换命令之后从VDD引脚没有获取电源,则DS18B20的I/O引脚必须保持2s高电平,这样才能提供变换所需要的电源。
2.若器件接收到复制暂存存储器命令之后未从VDD引脚取得电源,则I/O引脚必须保持10ms的高电平,这样才能提供复制过程所需的电源。

第四章 硬件系统的设计及分析
4.1 硬件系统的整体设计
系统设计的重要部分之一就是硬件电路的设计,硬件电路设计的正确性是软件正常工作的重要保证,一旦完成硬件的制作就很难进行修改,故此在设计硬件的时候要彻底的对各个部分进行原理分析,保证电路的正确性。在设计硬件电路要考虑到CPU的处理能力、I/O口的分配、存储容量及速度、电平要求等。
基于51单片机的智能散热风扇系统的设计分为两部分:硬件部分和软件部分设计。硬件部分的设计包括电源模块电路、复位电路、晶振电路、温度采集电路、LCD1602液晶显示电路、矩阵键盘和独立按键电路、EEPROM掉电保存电路、AT24C02A红外一体化电路;软件部分包括主程序与中断程序、温度传感器DS18B20的数据测量和处理子程序、LCD1602液晶显示子程序、按键扫描子程序、基于IIC通信总协议的数据存取子程序、AT24C02A红外接收信号读写子程序。
单片机是整个系统的控制中心,控制各个模块完成特定的功能。硬件的设计采用模块化设计,这样降低了系统设计的复杂性,每个模块实现基本的特定功能,再将模块组合起来完成系统功能。
4.2 硬件的各个功能模块的设计与分析
4.2.1 电源模块电路设计
系统平稳运行的前提和基础是电源模块的稳定可靠,要想设计的电子系统完整而又精致,那么为整个系统提供电源供电模块就是首要需要考虑的问题。应用范围最广、使用时间最早的51系列单片机在实际使用过程中,会出现一个典型的问题就是,容易受到干扰导致程序跑飞,为单片机系统配置一个稳定可靠的电源供电模块就是克服这种现象出现的一个重要手段。通过计算机的USB口或使用外部稳定可靠的5V电源供电模块可以给电源供电模块供给电源。图4.1为电源电路设计图:

            图4.1  电源电路

图中的电源电路中接入了电源指示灯,SW1为电源开关,R1则为LED灯的限流电阻,防止电流过大烧坏LED灯,C1是电源的滤波电容。
4.2.2 复位电路的设计
一般单片机有两种复位方式:高电平、低电平复位。本设计设计的是高电平复位电路,如图4.2所示,进行复位操作,RST引脚被置为“1”,单片机复位有效;若在默认状态下RST端是低电平,这时单片机处于正常工作。图4.2所示的复位电路使用的就是阻容复位,当复位引脚端变为高电平时,该高电平维持的时间要长达两个机器周期及以上。

图4.2 复位电路

复位端外接一个电容和一个电阻,电容的另一端与VCC想接,电阻的另一端与GND相连,这样连接起来就可以实现上电复位。接通电源,其中的电容进行充放电可以保证时间达到复位有效,设计采用的电容是10uf的电极性电容,电阻的大小为10k欧姆。除了上述的一些元器件,还增加了一个按键开关,与电容并联,可以实现按键复位。上述复位电路的工作原理是在接入+5V电源的情况下就可以完成上电复位,要想进行按键复位,则复位引脚端为高电平才能进行,所以要先按一下KW1,这个瞬间复位端被置“1”,并且通过对电容的充电,高电平会被保持一段时间,从而完成了复位功能;松开按键时,电容就会放电使单片机恢复正常工作状态。
4.2.3 晶振电路的设计
晶振是单片机正常工作的重要因素之一,它也称为晶体振荡器。晶振的重要性就体现在它可以提供时钟源,而单片机系统执行所有指令就是以时钟源为基础的。单片机正常工作时,晶体振荡器提供的时钟频率和标准频率相一致;如果单片机没有正常工作,可能晶振引脚电压为0或5V而不是2V左右,这样就会导致晶振不能起振,从而单片机就不能工作。通常时钟频率越高,单片机执行指令的速度就越快。图4.3所示就是晶振电路,通过此电路单片机内部就可以产生时钟信号,从而控制单片机的运行。

图4.3 晶振电路

由图4.3可以看出,单片机的两个引脚(XTAL)外接两个22pf的电容和一个晶振,与芯片内部电路相结合就可以实现自振荡。电路中采用电容就是为了稳定振荡频率,使其接近晶振频率。一般单片机所需的时钟源是由晶振电路与芯片内部的锁相环电路配合作用产生的,所以在晶振不变的情况下,连接不同的锁相环电路,就可以产生不同的时钟频率,这就能满足子系统不同的频率要求。
4.2.4 温度采集电路的设计
当温度变换发生时,I/O线上必须提供足够的功率才能使DS18B20完成准确的温度变换。若DS18B20的工作电流较小时,要使I/O线有足够的驱动能力,10k的上拉电阻是远远不足的。在此条件下有两种方法可以确保DS18B20在其有效变换期内得到足够的电源电流。第一种方法就是发生温度变换时,用一个MOSFET把I/O线直接拉到电源上。在使用寄生电源方式时VDD引脚必须接到地。另一种方法是使用连接到VDD引脚的外部电源,如下图4.4所示,此方法不需要强上拉,换句话说,总线上主机在不向上连接的情况下,还能使线在温度变换期内保持高电平。需要注意的是接入外部电源工作时,GND引脚不可悬空。

图4.4 温度传感器驱动电路
4.2.5 LCD1602液晶显示电路的设计
字符型液晶显示模块由字符型液晶显示屏(LCD)、控制驱动主电路及其扩展驱动电路,少量的电阻、电容等装配在PCB板上而成的。
LCD1602的基本特点:1.液晶显示屏是以若干个5*8点阵块组成的,每个点阵块为一个字符位,字符行距和间距都为一个点的宽度;2.具有可显示192中字符的字符发生器ROM;3.具有80个字节的RAM和64个字节的自定义字符RAM;4.由+5V电源供电。
引脚功能:
VSS是电源地;VCC是+5V逻辑电源;V0是液晶驱动电源;RS为1是数据,为0是指令;R/W为1是读操作,为0是写操作;E是使能信号;D0~D7是数据总线。
1602的驱动电路包括了三个部分:数据口、控制口和电源。RS端与P2.4口相连接,R/W端与P2.5相连,E端与P2.6相连,数据口与P0口的八位数据线相连接,1602液晶显示电路如图4.5所示:

图4.5 LCD液晶显示屏驱动电路

4.2.6矩阵键盘和独立按键电路的设计
键盘是一种外部输入设备,设计的单片机系统可以通过外部设备进行一系列的设置控制。键盘有两种形式分别为编码和非编码。一般情况下都会选用非编码的键盘,因为其硬件电路比较简单,成本较低;而编码键盘与之相反,虽然使用方便但电路复杂。接下来要介绍的就是其中的两种键盘分别为独立键盘、矩阵键盘。
独立键盘的电路如图4.6.1所示,只有8个按键,每一个端口都有相对应的按键,开始端口都被赋予高电平,按下某个按键则对应的端口会被拉低,按此原理进行编程十分简易,但是按键比较少,应用的范围就受到限制,不及矩阵键盘使用广泛。

图4.6.1 独立键盘电路
矩阵键盘电路如图4.6.2所示,相对独立键盘电路比较复杂,编写的程序也比较繁琐,但同样利用了8个端口却有16个按键可使用,这就大大提高了利用率。要判断是否有按键按下或按下的是哪个按键,就需要进行键盘扫描,对每一行按键扫描判读就可以得到准确的位置。

图4.6.2 矩阵键盘电路
4.2.7 EEPROM掉电保存电路的设计

图4.7 AT24C02存储电路
AT24C02芯片遵循IIC协议(总线数据传输协议),对数据进行传送,如图4.7所示电路就构成了一个串行EEPROM存储单元。该芯片的体积小,而且具有写保护功能,即掉电情况下,数据不会丢失而是被保存起来,再次上电可以通过I2C总线读取数据,所以它被广泛地运用。其中会利用I2C总线协议,不仅简单而且有效;除此之外,它的接口简单,这就使得I2C总线不会占用大量的空间,不仅缩小了电路板空间还减少了芯片管脚,有利于降低互联网的成本。
I2C总线工作原理:I2C总线可发送和接收数据,它是由时钟SCL和数据线SDA构成的串行总线。其可实现双向传递,在IC与IC之间以及CPU与被控IC之间,传送率最高可达到100kbps,并联在这条总线上的各种被控电路都有唯一的地址,在信息的传输过程中,按照所需要完成的功能来决定I2C总线上并接的每一模块电路是主控器、受控器或是发送器、接收器。
4.2.8 1308红外一体化电路的设计

图4.8 红外接收一体化电路
红外线光谱是位于红色光之外,比红光的波长还长,波长范围是0.76~1.5um。红外遥控就是利用红外线进行信息传递的一种控制方法,它有很多优点如抗干扰、功耗小、成本低等,而且电路简单,容易编码和解码。图4.8所示的红外一体化电路就是整个红外遥控系统中接收的部分,主要是将接收到的红外信号进行放大解调,还原成原始编码并转换为TTL信号,单片机对此进行识别就可完成一系列的控制。除了接收部分,还有调制和发射部分。遥控器中有红外发光二极管,红外线就是由此发射出去的;将发射的数据和载波进行“与”操作就完成了调制部分。一个完整的红外遥控系统都包括上述三个部分。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值