3.3 多路选择器
模拟量输入是单片机控制系统的关键部分,需要单片机进行处理的信号可以是温度、压力、气体或液体的流量、浓度等连续变化的物理量,这些信号必须经过单片机的数据采集系统来转换成连续变化的电信号,单片机才能对其进行处理。
基于单片机89C51为核心的控制系统的模拟量输入开关,可以选择多路选择器CD4051。多路选择器CD4051是一个8选1的模拟开关电路。通过它可以由软件分时选通各个模拟通道的输入。
模拟开关电路4051的介绍:
CD4051相当于一个单刀八掷开关,开关接通哪一通道,由输入的3 位地址码ABC 来决定。其真值表如下。“INH”是禁止端,当“INH”=1 时,各通道均不接通。
图3.5 CD4051实物图
12
INH 0 0 0 0 0 0 0 0 1 C 0 00 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 A 0 1 0 1 0 1 0 1 输出 “0” “1” “2” “3” “4” “5” “6” “7” 均不接通 图3.6 4051真值表
图3.7 4051引脚图
13
引脚号 1,2,4,5,12,13,14,15 9,10,11 3 6 7 8 16 符号 IN/OUT A,B,C OUT/IN INH VEE VSS VDD 功能 输入/输出端 地址端 公共输出/输入端 禁止端 模拟信号接地端 数字信号接地端 电源+ 图3.8 CD4051引脚功能说明表
图3.9 CD4051与89C51单片机的电路连接图
14
3.4 AT89C51单片机
3.4.1 AT89C51单片机的基本组成
89C51单片机的基本组成包括: (1)一个8位的微处理器
(2)片内数据存储器RAM为128B,有21个特殊功能寄存器(SFR) (3)片内程序存储器Flash ROM有4KB
(4)可寻址片内统一编址的64KB的ROM,可寻址片外64KB的RAM (5)4个8位并行I/O接口(P0-P3);一个全双工通用异步串行接口UART; (6)两个16位的定时器/计数器;
(7)5个中断源、两个优先级的中断控制系统; (8)具有位操作功能的布尔处理机及位寻址功能; (9)片内振荡器和时钟产生电路
3.4.2 89C51单片机的引脚
VCC:电源电压 GND:地 P0口:
P0口是一组8位漏极开路双向I/O口,即地址/数据总线复用口。作为输出口时,每一个管脚都能够驱动8个TTL电路。当“1”被写入P0口时,每个管脚都能够作为高阻抗输入端。P0口还能够在访问外部数据存储器或程序存储器时,转换地
15
址和数据总线复用,并在这时激活内部的上拉电阻。P0口在闪烁编程时,P0口接收指令,在程序校验时,输出指令,需要接电阻。
图3.10 AT89C51单片机的引脚图
P1口:
P1口是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动4个TTL电路。对端口写“1”,通过内部的电阻把端口拉到高电平,此时可作为输入口。因为内部有电阻,某个引脚被外部信号拉低时输出一个电流。闪烁编程时和程序校验时,P1口接收低8位地址。 P2口:
P2口是一个内部带有上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动4个TTL电路。对端口写“1”,通过内部的电阻把端口拉到高电平,此时,可作为输入口。因为内部有电阻,某个引脚被外部信号拉低时会输出一个电流。在访问
16