基于单片机的温度测控系统的硬件设计(编辑修改稿)内容摘要:

在输出高 电平时,需接 ~10K 的上拉电阻。 ( 10) P1 口( 1~8 脚):由 ~ 组成, P1 口是一个内部带有上拉电阻的准8 位双向 I/0 口 ,能驱动 4 个 LSTTL 输入。 ( 11) P2 口( 21~28 脚):由 ~ 组成, P2 口是一个内部带有上拉电阻的准 8 位双向 I/0 口 , 同时可用作高 8 位地址线和 8 位数据线,能驱动 4 个LSTTL 输入。 ( 12) P3 口 ( 10~17 脚):由 ~ 组成, P3 口是一个带内部有上拉电阻的准 8 位双向 I/0 口。 同时,它的每一条口线都具有第二功 能,表 所示。 表 P3 口各位的第二类功能 口线 第二功能 RXD(串行口的输入端) TXD(串行口的输出端) (外部中断 INT0 输入端,低电平 0 有效) (外部中断 INT1 输入端,低电平 0 有效) T0(定时 /计数器 0 计数脉冲的输入端) T1(定时 /计数器 1 计数脉冲的输出端) (片外数据存储器写选通信号的输出端,低电平 0 有效) (片外数据存储器读选通信号的输出端,低电平 0 有效) /计数器 STC89C52RC 单片机内部自带三个 16 位定时 /计数器 T0、 T1 和 T2, T0 和 T1均可作为定时器或计数器使用。 6 个特殊功能寄存器决定了它的工作方式及功 10 能。 (1)TMOD:用来设置定时 /计数器 T0 和 T1 的工作方式。 寄存器内部如表 所示。 表 控制寄存器 (TMOD) 位编号 位定义 GATE C/’T M1 M0 GATE C/’T M1 M0 TMOD 的低 4 位用于定时 /计 数器 T0 的工作方式选择,高四位用于定时 /计数器 T1 的工作方式选择。 GATE:选择定时 /计数器是否受外部中断控制。 若 GATE=1,定时 /计数器 T0启停受引脚 (中断 0)控制;定时 /计数器 T1 启停受引脚 (中断 1)控制;若 GATE=0,定时 /计数器的启停与外部中断(中断 0和中断 1)无关。 C/’T:定时 /计数方式选择位。 当 C/’T=0 时为定时方式; C/’T=1 时为计数方式。 M M0:定时 /计数器工作模式时选择位。 定时 /计数器工方式如表 所示。 表 四种定时 /计数器工作方式 M1 M2 工作方式 功能描述 0 0 方式 0 13 位定时 /计数器 0 1 方式 1 16 位定时 /计数器 1 0 方式 2 8 位定时 /计数器 1 1 方式 3 分为两个独立的 8 位计数器( T0) (2)定时 /计数器控制寄存器( TCON) TCON 用于控制定时 /计数器的启停、溢出和外部中断触发方式。 TCON 寄存器内部各位定义如表 所示。 表 TCON 内部各位定义 位编号 未定义 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 单片机内部结构 STC89C52RC 单片机内部由中央处理器、存储器、输入 /输出端口、定时 /计数器、中断系统以及系统总线等构成,内部结构框图如 所示。 11 图 STC89C52RC 单片机内部结构 单片机内部主要由中央处理器( CPU)、片内数据存储器( RAM)、片内程序存储器( ROM)和输入 /输出接口组成。 STC89C52RC 单片机的 CPU 是一个 8 位二进制数的中央处理器,主要由运算器、控制器和特殊寄存器组构成。 运算器:运算器的核心 为算术逻辑单元( ALU),主要由布尔处理器、累加器( ACC)、暂存器( TMP TMP2)、程序状态字寄存器( PSW)和寄存器( B)构成。 主要功能为处理数据的算术运算。 控制器:控制器的主要功能为对来自存储器中的指令进行译码,通过定时控制电路,在规定的时刻发出各种操作所需的全部内部和外部的控制信号,使各部分协调工作 ,控制器主要由程序计数器( PC)、指令寄存器( IR)、指令译码器( ID)和定时控制逻辑电路等组成。 特殊寄存器( SFR):也称为专用寄存器 ,主要用来指示当前要执行指令的内存地址,存放特定的操作数, 指示指令的运行状态等。 STC89C52RC 单片机共有 12 26 个特殊功能寄存器,离散地分布在片内 RAM 的高 128B 地址中。 STC89C52RC 内部有两个存储器,分为程序存储器( ROM)和数据存储器( RAM),但由于访问的地址一样,因而要采用不同形式的指令进行操作。 程序存储器:主要存放单片机的要执行的程序,一般为 Flash STC89C52RC 来说, ROM 的大小为 8KB,片内存储空间地址为 0000H~1FFFH,若 EA=0,当 PC 值在 0000H~1FFFH 之间时, CPU 从内部程序存储器取指令,当PC 值大于 1FFFH 时,则从外部程序存储器取址。 另外,程序存储器中有几个特殊存储单元,这些存储单元是提前固定好的,具有特殊用途。 具体如表 所示。 表 程序存储器中的特殊单元 0000H 单片机上电或复位后,程序从该地址开始执行 0003H 外部中断 0 入口地址 000BH 定时 /计数器 0 溢出中断入口地址 0013H 外部中断 1 入口地址 001BH 定时 /计数器 1 溢出中断入口地址 0023H 串行口中断入口地址 002BH 定时 /计数器 2 溢出或 T2EX( )端负跳变时的入口地址 内部数据 存储器:主要存放运算的中间结果、数据暂存、缓冲、标志位以及用户自定义的字形表等。 STC89C52RC 单片机内部数据存储器可分为片内 RAM区和特殊功能寄存器区( SFR)。 其内部 RAM 的大小为 256B,低 128 字节的内部 RAM(地址 :00H7FH) ,可直接寻址或间接寻址。 高 128 字节的内部 RAM(地址 :80HFFH) ,只能间接寻址。 特殊功能寄存器( SFR)(地址 :80HFFH) , 只能直接寻址 .因此可以通过寻址方式的不同,来区分特殊功能寄存器 SFR 和高 128位的内部 RAM。 52 系列单片机在 51 的基础上 增加了 5 个特殊功能寄存器,主要与定时 /计数器 2 相关联。 如表 所示: 表 STC89C52RC 附加的 SFR SFR 功能 名称 SFR 符号 字节地址 复位值 (二进制) 位地址和位名称 D7 D6 D5 D4 D3 D2 D1 D0 定时 /计数器 2 T2C C8H 00000000 CF CE CD CC CB CA C9 C8 13 控制寄存器 ON TF2 EXF2 RCLK TCLK EXEN2 TR2 C/T2 CP/RL2 定时 /计数器 2 自动重装字节 RLDL CAH 00000000 定时 /计数器 2 自动重装字节 RLDH CBH 00000000 定时 /计数器 2 低字节 TL2 CCH 00000000 定时 /计数器 2 高字节 TH2 CDH 00000000 主要硬件介绍 在此次设计用用到了很多硬件,比如 DS18B LCD1602 液晶显示屏、功率晶体管 MJ1101 L298N 等等。 这里选取主要的几个硬件进行介绍。 显示屏 LCD1602 LCD1602 工业字符型液晶 显示屏 ,能够同时显示 16x02 即 32 个字符。 它是一种专门用来 显示字母、数字、符号等的 点阵 型液晶模块。 LCD1602 的引脚图如下。 图 LCD1602 引脚图 D714D613D512D411D310D29D18D07E6RW5RS4VSS1VDD2VEE3L C D 1L M 0 1 6 L 14 ( 1) VSS 为电源地接电源负极 ( 2) VDD 接 5V 电源正极 ( 3) VEE 为液晶显示器对比度调整端,接电源 正极 时对比度最弱,接电源 地 时对比度最高 ( 4) RS 为 寄存器 选择,高电平时选择 数据寄存器 、低电平时选择 指令寄存器。 ( 5) RW 为读写信号线,高电平时进行读操作, 低 电平时进行写操作。 ( 6) E端为使能端 ,高电平时读取信息,负跳变时执行指令。 ( 7) D0~ D7 为 8位双向数据端 , 读写状态依赖于 RS的电平状态。 温度传感器 DS18B20 DS18B20 是 常用的温度传感器,具有体积小,硬件开销低,抗干扰能力强,精度高的特点。 DS18B20 主要的 技术性能 如下: ( 1) 独特的单线接口方式, DS18B20 在与微处理器连接时仅需要一条口线即可实现微处理器与 DS18B20 的双向通讯。 ( 2) 测温范围 - 55℃ ~ +125℃ ,固有测温误差 1℃。 ( 3) 支持 多点组网 功能,多个 DS18B20 可以并联在唯一的三线上,最多只能并联 8 个,实现多点测温,如果数量过多,会使供电电源电压过低,从而造成信号传输的不稳定。 ( 4) 工作电源 : ~(可以数据线寄生电源) ( 5) 在使用中不需要任何外围元件 ( 6) 测量结果以 9~12 位数字量方式串行传送 ( 7) 适用于狭小空间设备测温 DS18B20 的引脚图如下 : 图 DS18B20 引脚 2 7 . 0DQ2 V C C3G N D1U5D S 1 8 B 2 0 15 ( 1) VCC 端接外部电源正极( 3V— )也可使用内部的寄生电源。 ( 2) DQ 端为双向数据传输端口,与单片机的引脚相连。 ( 3) GND 端接电源负极。 DS18B20 的测温原理: DS18B20 的测温原理如图 所示,图中低温度系数晶振的振荡频 率受温度的影响很小用于产生固定频率的脉冲信号送给减法计数器 1,高温度系数晶振随温度变化其震荡频率明显改变,所产生的信号作为减法计数器 2 的脉冲输入,图中还隐含着计数门,当计数门打开时, DS18B20 就对低温度系数振荡器产生的时钟脉冲后进行计数,进而完成温度测量 .计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将 55 ℃所对应的基数分别置入减法计数器 1 和温度寄存中,减法计数器 1 和温度寄存器被预置在 55 ℃所对应的一个基数值。 首先 DS1820 提供的读暂存寄存器指令 (BEH)读出以 ℃为分辨率的温 度测量结果,然后切去测量结果中的最低有效位 (LSB),得到所测实际温度整数部分 T 整数,然后再用 BEH 指令读取计数器 1 的计数剩余值 M 剩余和每度计数值 M 每度,考虑到 DS1820 测量温度的整数部分以 ℃、 ℃为进位界限的关系,实际温度 T 实际可用下式计算得到: T 实际 =(T 整数- ℃ )+(M 每度- M 剩余 )/M 每度。 斜累加 器 计数器 1 预 置 低温度系数晶振 比 较 =0 温度寄存器 预置 高温度系数晶振 计数器 2 =0 图 DS18B20 测温原理 16 直流电机驱动 模块 L298n L298N 是一种高电压、大电流电机驱动芯片。 该芯片 采用 15 脚封装。 主要特点是:工作电压高,最高工作电压可达 46V;输出电流大,瞬间峰值电流可达3A,持续工作电流为 2A;额定功率 25W 内含两个 H 桥的高电压大电流全桥式驱动器,可以用来驱动直流电动机和步进电动机、继电器线圈等感 性负载;采用标准逻辑电平信号控制;具有两个使能控制端,在不受输入信号影响的情况下允许或禁止器件工作有一个逻辑电源输入端,使内部逻辑电路部分在低电压下工作;可以外接检测电阻,将变化量反馈给控制电路。 使用 L298N 芯片驱动电机, 该芯片可以驱动一台两步进电机或四相步进电机,也可以驱动两台直流电机。 L298N 用来驱动直流电机的模块引脚如图 所示: 图 L298N 模块引脚图 ( 1) VCC 接电源正极( 3V46V)。 ( 2) GND 接电源负极。 ( 3) IN1IN4 与单片机相连,输入高低电平来控制电机的正反转。 ( 4) ENA、 ENB 为使能端,输入 PWM 信号可以用来调节电机转速快慢。 ( 5) OUT1 与 OUT OUT3 与 OUT4 可以分别控制两个电机与电机的两端相连。 ( 6) SENSA 与 SENSB 接电源负极。 I N15I N27E N A6O UT 12O UT 23E N B11O UT 313O UT 414I N310I N412S E N。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。