数字电压表的设计 下载本文

单片机原理 课程结业报告

题目(14): (数字电压表的设计)

学号:031240634 姓名:刘漫

一、 设计要求

以单片机为核心,设计一个数字电压表。采用中断方式,对2路0~5V的模拟电压进行循环采集,采集的数据送LED显示,并 存入内存。超过界限时指示灯闪烁。

二、 设计原理

以单片机为控制器,ADC0809为ADC器件的AD 转换电路,设计要求的电压显示,是对ADC采集所得信号的进一 步处理。为得到可读的电压值,需根据ADC的原理,对采集所得的信号进行计算,并显示在LED上。本项目中ADC0809的参考电压为+5V,根据定义,采集所得的二进制信号addata所指代的电压值 为:

adata?5V 256而若将其显示到小数点后两位,不考虑小数点的存在(将其乘以100),其计算的数值为:

addata?100?5V?addata?1.96V

256。将小数点显示在第二位数码管上,即为实际的电压。本示例程序将1.25 V和2.5 V作为两路输入的报警值,反映在二进制数字上,分别为0x40和0x80。当AD结果超过这一数 值时,将会出现二极管闪烁和蜂鸣器发声。

三、 设计电路图

3.1设计思路

1、根据设计要求,选择AT89C51单片机为核心控制器件。

2、A/D转换采用ADC0809实现,输出端口与单片机的接口为P1口,时钟等端口与P2口的低四位引脚相连。

3、数字电压显示采用LCD显示。

3.2系统组成

硬件电路设计由3个部分组成:A/D转换电路,AT89C51单片机系统,LCD显示系统。硬件电路设计框图如图所示:

模拟电压 ADC0809 转换 AT89C51单片机 数据显示

数字电压表系统硬件设计框图

3.3原理图

四、 核心代码设计思路及程序流程图

4.1程序设计方案

根据模块划分的原则,将该程序划分为初始化模块、A/D转换子程序和显示子程序,这三这个程序模块构成了整个系统软件的主程序,如图1如所示: