单片机课程设计-数字电压表的设计

上传人:aa****6 文档编号:29985977 上传时间:2018-01-26 格式:DOC 页数:10 大小:182.50KB
返回 下载 相关 举报
单片机课程设计-数字电压表的设计_第1页
第1页 / 共10页
单片机课程设计-数字电压表的设计_第2页
第2页 / 共10页
单片机课程设计-数字电压表的设计_第3页
第3页 / 共10页
单片机课程设计-数字电压表的设计_第4页
第4页 / 共10页
单片机课程设计-数字电压表的设计_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《单片机课程设计-数字电压表的设计》由会员分享,可在线阅读,更多相关《单片机课程设计-数字电压表的设计(10页珍藏版)》请在金锄头文库上搜索。

1、一、实验题目:数字电压表的设计二、实验目的 深入了解 MCS51 系列单片机的功能以及应用,学会用单片机制作简单的仪表。三、设计要求模块进行组合,设计数字电压表,将每一个部分工作原理介绍清楚,系统软件设计时针,对每一个模块的设计应明确。主程序应明确各部分的组成及采用的连接方式。通过调节输入信号的大小,观察自己设计的数字电压表的输出与另一块数字电压表测量的输出比较,达到了解、理解数字电压表设计的步骤、方法的目的(0-5V,LED 输出) 。四、数字电压表设计的总体方案通过一个 A/D(ADC0809 模拟数字转换)芯片采集后将外测电压信号转换为数字信号,再由单片机(AT89S52)处理信号,输出

2、信号,由数码管显示各路电压。更改程序使能用按键进行复位、通道选择、单路循环选择;并在超过设定报警电压(4.7V)时以 LED 灯发光报警。4.1 单片机部分芯片介绍单片机采用 AT89S52,它是一个低功耗,高性能 CMOS 8 位单片机,片内含 8k Bytes ISP(In-system programmable)的可反复擦写 1000 次的 Flash 只读程序存储器,器件采用 ATMEL 公司的高密度、非易失性存储技术制造,兼容标准 MCS-51 指令系统及 80C51 引脚结构,芯片内集成了通用 8 位中央处理器和 ISP Flash存储单元,功能强大的微型计算机的 AT89S52

3、可为许多嵌入式控制应用系统提供高性价比的解决方案。单片机基础电路如下:图 1 单片机部分功能特性概述:40 个引脚,8k Bytes Flash 片内程序存储器,256 bytes 的随机存取数据存储器(RAM) ,32 个外部双向输入/输出(I/O)口,5 个中断优先级 2层中断嵌套中断,2 个 16 位可编程定时计数器,2 个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器 。此外,AT89S52 设计和配置了振荡频率可为0Hz 并可通过软件设置省电模式。空闲模式下,CPU 暂停工作,而 RAM 定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存 RAM的数据,停止芯

4、片其它功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、 TQFP 和 PLCC 等三种封装形式,以适应不同产品的需求。引脚功能:VCC:电源电压GND:地P0 口:P0 口是一组 8 位漏极开路型双向 I/O 口,也即地址/数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动 8 个 TTL 逻辑门电路,对断口 P0写“1”时,可作为高阻抗输入端使用。在访问外部数据存储器或程序存储器时,这组端口线分时转换地址(低 8 位)和数据总线复用,在访问期间激活内部上拉电阻。在 FLASH 编程时,P0 口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。P1 口:P1

5、口是一个带内部上拉电阻的 8 位双向 I/O 口,P1 的输出缓冲级可驱动(吸收或输出电流)4 个 TTL 逻辑门电路。对端口写“1” ,通过内部上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(In) 。与 AT89C51 不同之处是,P1.0 和 P1.1 还可分别作为定时/计数器 2 的外部计数输入(P1.0/T2)和输入(P1.1/T2EX) 。第二功能:P1.0:T2(定时/计数器 2 外部计数脉冲输入) ,时钟输出P1.1:T2EX(定时/计数 2 捕获/重新载触发和方向控制)P2 口:P2 是一个带内部上拉电阻

6、的 8 位双向 I/O 口,P2 的输出缓冲级可驱动(吸收或输出电流)4 个 TTL 逻辑门电路。对端口写“1” ,通过内部上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL) 。在访问外部程序存储器或 16 位地址的外部数据存储器(例如执行 MOVXDPTR 指令)时,P2 口送出高 8 位地址数据。在访问 8 位地址的外部数据存储器(如执行 MOVXRI 指令)时,P2 口输出 P2 锁存器的内容。P3 口:P3 口是一组带有内部上拉电阻的 8 位双向 I/O 口。P3 口输出缓冲级可驱动(吸收或输出电流)4 个

7、TTL 逻辑门电路。对 P3 口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的 P3 口将用上拉电阻输出电流。P3 口除了作为一般的 I/O 口线外,更重要的用途是它的第二功能端口引脚 第二功能:P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 INT0(外中断 0)P3.3 INT1(外中断 1)P3.4 TO(定时/计数器 0)P3.5 T1(定时/计数器 1)P3.6 WR(外部数据存储器写选通)P3.7 RD(外部数据存储器读选通)RST:复位输入。当振荡器工作时,RST 引脚出现两个机器周期以上高电平将使单片机复位。ALE/PROG:当访

8、问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低 8 位字节。一般情况下,ALE 仍以时钟振荡频率的 1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个 ALE 脉冲。如有必要,可通过对特殊功能寄存器(SFR)区中的 8EH 单元的 D0 位置位,可禁止 ALE 操作。该位置位后,只有一条 MOVX 和 MOVC 指令才能将 ALE 激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置 ALE 禁止位无效。PSEN:程序存储允许 PSEN 输出是外部程序存储器的读选通信号,当 AT89C5

9、2由外部程序存储器取指令(或数据)时,每个机器周期两次 PSEN 有效,即输出两个脉冲。在此期间,当访问外部数据存储器,将跳过两次 PSEN 信号。 EA/VPP:外部访问允许。欲使 CPU 仅访问外部程序存储器(地址为0000H-FFFFH) ,EA 端必须保持低电平(接地) 。需注意的是:如果加密位 LB1被编程,复位时内部会锁存 EA 端状态。如 EA 端为高电平(接 Vcc 端) ,CPU 则执行内部程序存储器中的指令。XTAL1:振荡器反相放大器的内部时钟发生器的输入端。XTAL2:振荡器反相放大器的输出端。4.2、AD 采样方案采用 8 位 AD 转换器 ADC0809,编程简单方

10、便,价格便宜。采样电路如图2。图 2 ADC0809 采样电路ADC0809 是带有 8 位 A/D 转换器、8 路多路开关以及微处理机兼容的控制逻辑的 CMOS 组件。它是逐次逼近式 A/D 转换器,可以和单片机直接接口。 ADC0809 由一个 8 路模拟开关、一个地址锁存与译码器、一个 A/D 转换器和一个三态输出锁存器组成。多路开关可选通 8 个模拟通道,允许 8 路模拟量分时输入,共用 A/D 转换器进行转换。三态输出锁器用于锁存 A/D 转换完的数字量,当 OE 端为高电平时,才可以从三态输出锁存器取走转换完的数据。1 产生 AD 变换器的控制信号:ADC0809 是 CMOS 的

11、 8 位 A/D 转换器,片内有 8 路模拟开关,可控制8 个模拟量中的一个进入转换器中。ADC0809 的分辨率为 8 位,转换时间约100us,含锁存控制的 8 路多路开关,输出有三态缓冲器控制,单 5V 电源供电。主要控制信号说明:START 是转换启动信号,高电平有效;ALE 是 3 位通道选择地址(ADDC、ADDB 、ADDA )信号的锁存信号。当模拟量送至某一输入端(如 IN1 或 IN2 等) ,由 3 位地址信号选择,而地址信号由 ALE 锁存;EOC是转换情况状态信号,当启动转换约 100us 后,EOC 产生一个负脉冲,以示转换结束;在 EOC 的上升沿后,若使输出使能信

12、号 OE 为高电平,则控制打开三态缓冲器,把转换好的 8 位数据结果输出至数据总线。至此 ADC0809 的一次转换结束了。对于 ADC0809 芯片的其他介绍请参阅其数据手册。芯片 ADC0809的控制时序图。在实验仪器中 CS 与 WR 相与后接在了 ALE 和 START 端,CS 与 RD 相与后接在了 OE 端,通过对时序和电路的综合考虑,建议使用如下的 AD 控制时序。由图可知,当 CS 和 WR 同时为高电平时,ADC0809 开始转换,当转换完成后,在 INT 脚输出高电平,等待读数据;当 CS 和 RD 同时为高电平时,通过数据总 D70从 ADC0809 读出数据。从图我们

13、可将整个控制气分成 4 个步骤状态:S0 、S1 、S2 、S3,各状态的动作方式如下:状态 S0: CS=1、WR=1、RD=0(由控制器发出信号要求 ADC0809 开始进行模/ 数信号的转换)。状态 S1:CS=0、WR=0、RD=0 (ADC0809 进行转换动作,转换完毕后 INT将低电位升至高电位) 。状态 S2: CS=1、WR=0、RD=1(由控制器发出信号以读取 ADC0809 的转换资料) 。状态 S3: CS=0、WR=0、RD=0(由控制器读取数据总线上的数字转换资料)。由上述的四个状态可以归纳出整个控制器的动作功能有:负责在每个步骤送出所需的 CS、WR 、RD 控制

14、信号。在状态 S1 时, 监控 INT 信号是否由低变高,如此以便了解转换动作结束与否。在状态 S3,读取转换的数字资料。2编码转换电路:计算转换后的数字电压信号与 BCD 码的对应关系:对 8 位的 ADC0809 而言,它的输出准位共有 28 =256 种,即它的分辨率是 1/256,假设输入信号为 05V 电压范围,参考电压(Vref/2 )为 2.56V 时,则它最小输出电压是 5V/256=0.01953V,这代表 ADC0809 所能转换的最小电压值,我们在该实验中取最小电压准位为 0.02V。当 ADC0809 收到的信号是(76H ),则其对应的电压值为: 76H0.02V =

15、 2.36V 要实现电压值与 BCD 码的对应关系用多种方法(如查表法、比较法等)。查表法需要写大量的数据,比较麻烦,在示例程序中作者使用了比较法。3输出 7 段数码管显示电路:该电路的功能是将转换好的 BCD 码显示在 3 位数码管上,在最高为的数码管上要显示小数点。这个电路在前面的实验中多次用到,此处不再叙述。4 用并行 ADC0809 实现电压表。 NINTR,NRD,NCS ,NWR,DIN7.0分别接并行 ADC0809 模块中的相应接口。SEL1.0和 SEG6.0分别接 7 段数码管的扫描端 SEL1.0和 ga,DP 接小数点输入端 DP,ADC0809 的时钟输入端接 625

16、KHz,建议 CLKG 接 8KHZ 左右时钟,CLK 接高于 16HZ 时钟。VREF-接地;VREF+接+5V;A0,A1 ,A2 接拨码开关; A0,A1,A2 八种状态分别对应 IN0.7,手动 DCTUNER 控制 DCOUT 输出,DCOUT 接 A0,A1,A2 八种状态中的一种。(2) 控制系统硬件电路设计(显示采用四位数码管); (3) 软件流程图设计,汇编程序编写;4.4 显示方案显示部分(采用共阴 4 位八段数码管显示。如图 3 所示:)图 3 数码管电路图显示部分与单片机连接图如图 4:图 4 显示与单片机连接图4.5程序描述1 主程序流程图: a) 把“单片机系统”区

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号