单片机课程设计报告——数字电压表[1]剖析

合集下载

单片机课程设计报告报告——数字电压表

单片机课程设计报告报告——数字电压表

数字电压表单片机课程设计报告班级:姓名:学号:指导教师:2011 年3 月29 日数字电压表电路设计报告一、题目及设计要求采用51系列单片机和ADC 设计一个数字电压表,输入为0~5V 线性模拟信号,输出通过LED 显示,要求显示两位小数。

二、主要技术指标1、数字芯片A/D 转换技术2、单片机控制的数码管显示技术3、单片机的数据处理技术三、方案论证及选择主要设计方框图如下:1、主控芯片方案1:选用专用转化芯片INC7107实现电压的测量和实现,用四位数码管显示出最后的转换电压结果。

缺点是京都比拟低,内部电压转换和控制局部不可控制。

优点是价格低廉。

方案2:选用单片机AT89C51和A/D 转换芯片ADC0809实现电压的转换和控制,用四位数码管显示出最后的转换电压结果。

缺点是价格稍贵;优点是转换京都高,且转换的过程和控制、显示局部可以控制。

基于课程设计的要求和实验室能提供的芯片,我选用了:方案2。

2、显示局部方案1:选用4个单体的共阴极数码管。

优点是价格比拟廉价;缺点是焊接时比拟麻烦,容易出错。

方案2:选用一个四联的共阴极数码管,外加四个三极管驱动。

这个电路几乎没有缺点;优点是便于控制,价格低廉,焊接简单。

基于课程设计的要求和实验室所能提供的仪器,我选用了:方案2。

四、电路设计原理模拟电压经过档位切换到不同的分压电路筛减后,经隔离干扰送到A/D转换器进展A/D转换。

然后送到单片机中进展数据处理。

处理后的数据送到LED 中显示。

同时通过串行通讯与上位通信。

硬件电路及软件程序。

而硬件电路又大体可分为A/D转换电路、LED显示电路,各局部电路的设计及原理将会在硬件电路设计局部详细介绍;程序的设计使用汇编语言编程,利用Keil和PROTEUS 软件对其编译和仿真。

一般I/O接口芯片的驱动能力是很有限的,在LED显示器接口电路中,输出口所能提供的驱动电流一般是不够的尤其是设计中需要用到多位LED,此时就需要增加LED驱动电路。

单片机数字电压表报告

单片机数字电压表报告

单片机数字电压表设计报告作者:刘兴鹏雷达定杨涛辅导教师:江学焕摘要∙本次设计用单片机芯片AT89s52设计一个数字电压表,能够测量交、直流电压值,四位数码显示。

此系统由电源电路、发光二极管指示、51单片机最小系统、键盘电路、四位数码管动态显示电路、AD采集部分组成。

为使系统更加稳定,使系统整体精度得以保障,本电路使用了TLC549数据转换芯片,单片机系统设计采用AT89S52单片机作为主控芯片,配以RC上电复位电路和11.0592MHZ震荡电路,显示芯片用TEC6122,驱动四位数码管显示。

程序每执行周期耗时缩到最短,这样保证了系统的实时性。

∙关键字:数字电压表、AT89S51单片机、AD采集、四位数码管。

一、硬件部分硬件电路部分已提供,硬件主要是由刘兴鹏焊接成的。

该课题是将单片机应用数字电压表中,由单片机控制AD采样电压,采样到单片机经过转化后显示在数码管上。

其设计方案如下:1、电源电路部分:单片机正常工作电压为5V,输入一个大于5V的电压,电容C3的作用是消除自激振荡,单片机正常工作电压为5V,输入的电压信号经过集成稳压器7805输出+5V电压,电容C3的作用是消除自激振荡,C4的作用滤去电路中可能存在的交流信号,C5消除高频噪声,这样可以保证输出一个+5V的直流电压,电源电路接通无误,则发光二极管发光。

2、单片机最小系统电路:看图可以知道:此电路采用的上电复位,内接方式的时钟电路的工作方式。

其运用到的IC芯片为89S51,其管脚分布如下:(1)单片机晶振的作用把放大器与作为反馈元件的晶体振荡其连接,就构成了内部自激振荡器,爱能够产生振荡时钟脉冲。

(2)单片机晶振的两个电容作用这两个电容叫晶振的负载电容,分别接在晶振的两个脚上和对地的电容,一般在几十皮发。

它会影响到晶振的谐振频率和输出幅度,一般订购晶振时候供货方会问你负载电容是多少。

晶振的负载电容=[(Cd*Cg)/(Cd+Cg)]+Cic+△C式中Cd,Cg为分别接在晶振的两个脚上和对地的电容,Cic(集成电路内部电容)+△C(PCB 上电容)经验值为3至5pf。

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

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

《单片机原理及应用》课程设计报告书课题名称数字电压表设计名姓学号专业指导教师机电与控制工程学院月年日1任务书电压表是测量仪器中不可缺少的设备,目前广泛应用的是采用专用集成电路实现的数字电压表。

本系统以8051单片机为核心,以逐次逼近式A/D转换器ADC0809、LED显示器为主体,设计了一款简易的数字电压表,能够测量0~5V的直流电压,最小分辨率为0.02V。

该设计大体分为以下几个部分,同时,各部分选择使用的主要元器件确定如下:1、单片机部分。

使用常见的8051单片机,同时根据需要设计单片机电路。

2、测量部分。

该部分是实验的重点,要求将外部采集的模拟信号转换成数字信号,通过单片机的处理显示在显示器上,该部分决定了数字电压表的精度等主要技术指标。

根据需要本设计采用逐次逼近型A∕D转换器ADC0809进行模数转换。

3、键盘显示部分。

利用4×6矩阵键盘的一个按键控制量程的转换,3或4位LED显示。

其中一位为整数部分,其余位小数部分。

关键词:8051 模数转换LED显示矩阵键盘2目录1 绪论 (1)2 方案设计与论证 (2)3 单元电路设计与参数计算 (3)4 总原理图及参考程序 (8)5 结论 (14)6 心得体会 (15)参考文献16 (7)31.绪论数字电压表的基本工作原理是利用A/D转换电路将待测的模拟信号转换成数字信号,通过相应换算后将测试结果以数字形式显示出来的一种电压表。

较之于一般的模拟电压表,数字电压表具有精度高、测量准确、读数直观、使用方便等优点。

电压表的数字化测量,关键在于如何把随时连续变化的模拟量转化成数字量,完成这种转换的电路叫模数转换器(A/D)。

数字电压表的核心部件就是A/D转换器,由于各种不同的A/D转换原理构成了各种不同类型的DVM。

一般说来,A/D 转换的方式可分为两类:积分式和逐次逼近式。

积分式A/D转换器是先用积分器将输入的模拟电压转换成时间或频率,再将其数字化。

单片机课程设计报告:电压表(附程序)

单片机课程设计报告:电压表(附程序)

——电压表【课题】电压表【设计要求】设计一个量程可变的数字电压表,用3个LED数码管显示,电压表量程为0~200mV(显示0~200mV)、200mV~2V(显示0.2V~2V)。

【设计原理】一、实验电路图二、工作原理如上图所示,实验中主要用到的芯片有运算放大器、继电器、ADC0832、8951单片机及其外围设备。

电压表的量程为两档,0~200mV 和200mV~2V。

其相对应的运放的放大增益是25倍和2.4倍,这样即使是最大的输入其通过运放后的输出电压都会小于5V,其通过限幅电路后电压均为其真实值。

然后模拟输入电压由AD0832输入,经过模数转换后送给单片机。

由p0口输出字形,同时由p1.4的电平控制74LS573的锁存和直通状态。

P1.5、p1.6、p1.7控制字位。

P1.2控制继电器的工作状态,当P1.2低电平时,三极管工作在截止状态,继电器线圈无电流通过,继电器处于常闭状态,那么相对应的运放的放大增益为25倍。

而当P1.2为高电平时,三极管工作在饱和状态,继电器线圈有电流通过,产生电磁力将继电器的开关吸到常开状态,其对应的放大增益即变为2.4倍。

对于一个模拟输入,现将其放大2.4倍,然后由AD 输入并相应转化,如果它的输出要是小于0.5V ,也就是19H ,则选择此档位是不精确的,也说明此时的输入电压介于0~200mV 之间。

那么我们就需要让P1.2置低电平,将相应的放大倍数改成25以提高转换精度。

若其满足相应的条件则直接将其转换成BCD 码并直接送数显示即可。

实验中用到了模数转换器ADC0832,其引脚图如右图所示,ADC0832是8位逐次逼近型A /D 转换器, 单一正5V 电源供电,CS 为片选, CLK 提供串行输入/输出时钟信号,DO用于串行数字输出,CHO 和CHl 为双通道模拟输入端, 它可用软件设定为单端或差分输人。

在差分方式中,通道口地址的选择由DI 逐位输入,GND 是数字、模拟公共地,cc V (REP V )为芯片电源、参考电压公共端。

单片机应用技术课程报告——数字电压表的设计

单片机应用技术课程报告——数字电压表的设计

单片机应用技术课程报告
5、软件程序设计
(1)、程序设计思路
2)性能指标测试及结果分析
本设计以8051单片机为控制核心,通过集成摸数转换芯片ADC0809将被测信号转换成数字信号,经单片机内部程序处理后,由LED八段数码管显示测量结果。

仿真测试表明,系统性能良好,测量读数稳定易读、更新速度合理,直流电压测量范围为0~5V,最小分辨率为0.02V,满足任务书指标要求。

但是,该系统也存在定程度的不足,例如:
1、若能将测量的电压值实时保存,使用时将更方便。

2、ADC0809可实现对8个通道的输入信号轮流转换,本设计仅仅使用了其中一个通道,造成了较大的资源浪费。

若能对电路稍加改进,实现对多路信号的轮流测量并自动保存相应结果,其应用价值将会更大。

单片机课程设计实验报告数字电压表

单片机课程设计实验报告数字电压表

哈尔滨理工大学课程设计报告书课程名称单片机课程设计题目数字电压表院(系)自动化学院班级电技12-3学号1212020301学生姓名蔡成灼指导教师王宏民辅导教师王宏民2014 年12 月25 日课程设计(论文)任务书自动化学院电子信息科学与技术专业12-3班一、课程设计(论文)题目:数字电压表二、课程设计(论文)工作自20 14 年 12 月 26 日起至 20 14 年 12 月 27 日止三、课程设计(论文) 地点: B302四、课程设计(论文)内容要求:1. 本课程设计的目的(1)进一步巩固和加深对“单片机原理及应用”课程基本知识的理解和掌握,了解51系列单片机在项目开发中的应用。

(2)学习单片机硬件和软件设计开发的一般方法,了解和掌握项目开发过程及方式,培养正确的设计思想和分析问题、解决问题的能力,特别是项目设计能力。

(3)通过对标准化、规范化文档的掌握并查阅有关技术资料等,培养项目设计开发能力,同时提倡团队合作精神。

2. 课程设计的任务及要求1) 基本要求:(1)对系统功能进行需求分析;(2)提出系统的设计方案;(3)完成硬件设计和编写源程序代码并进行必要的调试。

2) 创新要求ADC0832是双通道,由程序可以任意的选取通道进行显示。

3) 课程设计报告撰写及装订要求课程设计报告的撰写要求表述简明,图表准确。

报告按如下内容和顺序用A4纸进行打印并装订成册。

(1)封面采用统一的课程设计封面,并按要求填写好封面要求的个人信息和选题。

(2)设计任务书(3)评阅书(4)目录(5)正文(6)主要参考文献4) 课程设计完成标准要求:每人按指定题目进行设计,严禁抄袭,要求每人自己动手编写程序,采取同一组同时检查程序及运行结果,检查时同组成员每人陈述自己的分工,同一选题不同组如发现代码完全一样,则双方都作不及格处理。

(1)达到课程设计的目的与要求,程序的可读性较好,并调试正确;(2)能正确回答设计的中老师所提问题;(3)课程设计报告书写规范整齐;(4)心得体会认真总结;(5)程序有创新性;成绩评定实行优秀、良好、中等、及格和不及格五个等级。

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

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

单片机预习报告--------------电压表一.题目分析根据题目要求,系统设计需要基于自动控制原理,实现电压量程的自动切换、数据采样、电压显示等功能。

主要来说,系统由信号调理电路、A/D转换电路、单片机控制系统、数码显示系统等几个模块组成。

二.系统总体设计与框图系统框图如图下图所示。

该过程是:首先通过系列比较器检测输入电压的极性与范围,单片机根据电压极性与范围对继电器阵列进行相应的动作,实现了输入量程的全自动转换。

经过调理后的电压信号由AD转换后送出数码显示。

系统总体设计与框图三.各模块方案1)A/D采样系统采用ADC08322)自动量程切换量程切换电路包括电压衰减变换电路和无零漂小信号放大电路。

智能数字电压表中关键技术之一为自动量程转换问题。

用单片机控制多组继电器进行量程切换。

特点是简单实用,缺点是机械噪声大。

3)电压检测为了实现对输入的微小信号或大信号进行精确测量,我们拟采用信号放大或衰减预处理电路,即需要对被测量电压的极性、范围进行判断和确定,从而将被测电压的基本信息传递给单片机系统。

用多组比较器进行电压范围的分段检测,实现对输入电压的粗略测量。

为了粗略地得到被测量的电压范围采用多组比较器的方式,通过阶梯式比较的方法确定输入电压的范围。

4)显示部分采用LED数码管动态扫描显示。

采用3个位LED动态扫描显示的优点是能改善外部信号对显示的干扰,但单片机在工作时要求CPU不停地对LED更新,这将会降低系统的运行速度,且占用资源比较多。

5)信号调理模块该部分主要实现的功能是自动量程切换和电压变换,模块主要由电压极性检测电路、电压范围粗测电路、电压变换电路、继电器模块四部分组成。

7)继电器模块单片机是一个弱电器件,一般情况下它们大都工作在5V甚至更低.驱动电流在mA级以下.而要把它用于一些大功率场合,比如控制电动机,显然是不行的.所以,就要有一个环节来衔接,这个环节就是所谓的"功率驱动".继电器驱动就是一个典型的、简单的功率驱动环节.在这里,继电器驱动含有两个意思:一是对继电器进行驱动,因为继电器本身对于单片机来说就是一个功率器件;还有就是继电器去驱动其他负载,比如继电器可以驱动中间继电器,可以直接驱动接触器,所以,继电器驱动就是单片机与其他大功率负载接口.四.元件清单五.程序设计程序流程图如下。

单片机课程设计报告数字电压表

单片机课程设计报告数字电压表

单片机课程设课题名称:数字电压表课程原理:1、模数转换原理:试验中,我们选用ADC0809作为模数转换的芯片,其为逐次逼近式AD转换式芯片,其工作时需要一个稳定的时钟输入,根据查找资料,得到ADC0809的时钟频率在10KHZ~1200KHZ,我们选择典型值640KHZ。

课题要求测量电压范围是0到5V,又ADC0809的要求:V ref+<=Vcc,V ref->=GND,故我们取V ref+=+5V,V ref-=0V。

由于ADC0809有8个输入通道可供选择,我们选择IN0通道,直接使ADC0809的A、B、C接地便可以了,在当ADC0809启动时ALE引脚电平正跳变时变可以锁存A、B、C 上的地址信息。

ADC0809可以将从IN0得到的模拟数据转换为相应的二进制数,由于ADC0809输出为8位的二进制数,转换时将0到5V分为255等分,所以我们可以得到转换公式为x/255*5化简为:x/51,x为得到的模拟数据量,也就是直接得到的电压量。

在AD转换完成后,ADC0809将在EOC引脚上产生一个8倍于自身时钟周期的正脉冲,以此来作为转换结束的标志。

然后当OE引脚上产生高电平时,ADC0809将允许转换完的二进制数据输出。

2、数据处理原理:由ADC0809的转换原理可以知道我们从其得到数据还只是二进制数据,我们还需要进一步处理来的到x的十进制数,并且对其进行精度处理,也就是课题要求的的精确到小数点后两位,在这里我们用51单片机对数据进行处理。

我们处理数据的思路是:首先将得到的二进制数直接除以十进制数51,然后取整为x的整数部分,然后就是将得到的余数乘以10,然后再除以51,再取整为x的十分位,最后将得到的余数除以5得到x的百分位。

3、数据显示原理:试验中我们用到四位一体的七段数码管,所以我们只能考扫描显示来完成数码管对x的显示,我们用的是四位数码显示管,但是x只是三位的,故我们将将第四位显示为单位U,通过程序的延时,实现四位数码管的稳定显示。

单片机课程设计报告数字电压表设计

单片机课程设计报告数字电压表设计

**学院课程设计报告题目:带流水灯的数字电压表的设计起止日期:自2012年2月27日至2012年3月9日信息科学与工程系系(部)**学生姓名09电科1班班级096666666学号成绩指导教师(签字)2012 年3 月9日**学院课程设计任务书2011-2012学年第学期系(部)信息科学与工程系专业电子科学与技术班级 09电子1班课程名称:单片机原理及接口技术设计题目:带流水灯的数字电压表指导教师(签字):年月日教研室主任(签字):年月日目录1概述 (1)1.1 简述其主要内容 (1)1.2技术指标 (1)2方案的论证及选择 (1)2.1 设计方案 (1)2.2设计思路 (2)3单元电路的设计及元器件的选择 (2)3.1AT89C52 (2)3.2ADC0832模数转换器简介 (2)3.3驱动存储显示电路 (4)3.4流水灯模块 (5)4系统电路总图及原理 (5)4.1 设计原理 (5)4.2软件单元电路设计 (6)4.3系统电路总图。

(7)5经验体会 (7)5.1 设计过程中遇到的问题及解决方案 (7)5.2 设计体会 (7)5.3 对该设计的建议 (8)参考文献 (9)附录A:实物图 (10)附录B:原理图 (11)附录C:程序 (12)附录D:元器件清单 (18)1概述1.1 简述其主要内容使用单片机AT89C52和DC0832设计一个数字电压表,能够测量0—5V 之间的直流电压值,两位数码显示。

在单片机的作用下,能检测两路的输入电压值,用8位串行A/D转换器,8位分辨率,逐次逼近型,基准电压为5V;能用两位LED进行轮流显示或单路选择显示,显示精度0.1伏。

简要地陈述了设计方案和设计思路,然后就对其有关理论知识做了一些简要的介绍,然后在性能指标分析基础上进行单元电路设计,最后设计出整体电路图并且在软件Proteus中进行仿真,验证是否达到技术要求,并在硬件上验证是否实现相应的功能,最后总结设计经验与体会。

基于单片机的数字电压表设计报告

基于单片机的数字电压表设计报告

基于单片机的数字电压表设计报告
一、研究意义
数字电压表是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。

传统的指针式电压表功能单一、精度低,不能满足数字化时代的需求,采用单片机的数字电压表,由精度高、抗干扰能力强,可扩展性强、集成方便,还可与PC进行实时通信。

目前,由各种单片A/D 转换器构成的数字电压表,已被广泛用于电子及电工测量、工业自动化仪表、自动测试系统等智能化测量领域,示出强大的生命力。

与此同时,由DVM扩展而成的各种通用及专用数字仪器仪表,也把电量及非电量测量技术提高到崭新水平。

二、系统硬件设计
模拟电压经过档位切换到不同的分压电路衰减后,经隔离干扰送到A/D转换器进行A/D转换,然后送到单片机中进行数据处理。

处理后的数据送到LCD中显示,同时通过串行通讯与上位机通信。

1)硬件电路框图:
2)硬件电路原理图:
三、系统软件设计1)主程序设计
2)中断子程序设计
四、分析及结论
电压测量通过不同的接口电路可实现温度、湿度、压力等测量,广泛应用于工业领域。

本电路设计别具一格,是一种高精度、低功耗、宽量程、智能化的电压表。

可扩展键盘、EEPROM、报警电路,实现电压异常记录、报警。

单片机数字电压表课程设计报告

单片机数字电压表课程设计报告

单片机数字电压表课程设计报告单片机数字电压表课程设计报告摘要:本次课程设计采用单片机来实现数字电压表的设计,通过对市场上常见单片机的选型和开发工具的使用,实现了数字电压表的硬件和软件设计。

该数字电压表具有分辨率高、测量精度高、响应速度快等特点,可广泛应用于测量高压、低压、直流电压等领域。

关键词:单片机、数字电压表、驱动电路、计数器一、课程设计目的本次课程设计旨在让学生了解数字电压表的设计方法和原理,通过使用单片机来实现数字电压表的设计,提高学生的实践能力和创新能力。

同时,通过本次课程设计,还可以让学生了解单片机的使用方法和开发工具的使用,加深对单片机应用的理解。

二、课程设计内容本次课程设计采用单片机来实现数字电压表的设计,具体包括以下内容:1. 对市场上常见单片机的选型和开发工具的使用。

2. 设计数字电压表的硬件电路,包括驱动电路、计数器、计数器清零电路等。

3. 设计数字电压表的软件电路,包括计数器清零程序、计数器累加程序、显示程序等。

4. 将数字电压表与单片机连接,进行测试和调试。

三、课程设计原理数字电压表的设计原理是利用单片机的计数器来实现对电压值的计数和显示。

单片机通过外部时钟信号来控制计数器的计数频率,将计数器的计数值累加到显示寄存器中,从而实现对电压值的显示。

同时,通过对电压值的测量和计算,可以实现对高压、低压、直流电压的测量和显示。

四、课程设计步骤1. 对市场上常见单片机的选型和开发工具的使用。

2. 设计数字电压表的硬件电路,包括驱动电路、计数器、计数器清零电路等。

3. 设计数字电压表的软件电路,包括计数器清零程序、计数器累加程序、显示程序等。

4. 将数字电压表与单片机连接,进行测试和调试。

五、课程设计成果通过本次课程设计,学生可以独立完成数字电压表的硬件和软件设计,掌握单片机的应用和开发技巧,提高实践能力和创新能力。

同时,学生还可以根据实际应用需求,对数字电压表进行改进和创新,提高其实用性和市场竞争力。

单片机课设班晓鸿000000000000000000000000000

单片机课设班晓鸿000000000000000000000000000

单片机原理及接口技术课程设计实验报告——电压表姓名班晓鸿学号08291002班级电气0801指导教师王健强数字电压表实验报告一、工作原理:这次单片机课程设计的题目是量程可变的数字电压表。

主要用到的芯片有运放、继电器、8051单片机及其外围设备。

我们主要的设计思路是将电压表设计成两档,0~200mV和0~2V。

其相对应的运放的放大增益是25倍和2.5倍,这样即使是最大的输入其通过运放后的输出电压都会小于5V,其通过限幅电路后电压均为其真实值。

然后模拟输入电压由AD0832输入,经过模数转换后送给单片机。

由p0口输出字形,同时由p1.4的电平控制74LS573的锁存和直通状态。

P1.5、p1.6、p1.7控制字位。

P1.2控制继电器的工作状态,当P1.2低电平时,继电器处于常闭状态,那么相对应的运放的放大增益为25倍。

而当P1.2为高电平时继电器工作,其对应的放大增益即变为2.5倍。

对于一个模拟输入,现将其放大2.5倍,然后由AD输入并相应转化,如果它的输出要是小于0.5V,也就是18H,则选择此档位是不精确的,也说明此时的输入电压介于0~200mV之间。

那么我们就需要让P1.2置低电平,将相应的放大倍数改成25以提高转换精度。

若其满足相应的条件则直接将其转换成BCD码并直接送数显示即可。

二、实验电路硬件仿真图三、实验主程序流图开始信号循环采集延时AD转换换挡判断量程选择正确否是BCD码转换结果显示返回四、仿真结果效果图此时量程为200mV,此时的实际输出电压为92mV此时量程为2V,实际输出电压为0.89V五、关于ADC0832在以往的实验中,我们通常采用的A/D转换芯片为0809,二这次课程设计所使用的是ADC0832,是一个我们不熟悉的芯片,所以我们通过查找资料、请教老师,先弄明白了0832的结构和工作原理,为之后的编程打下了基础。

ADC0832 是美国国家半导体公司生产的一种8 位分辨率、双通道A/D转换芯片。

单片机课程设计报告-简易数字电压表

单片机课程设计报告-简易数字电压表

TLC0834
P87C52X2
图1
1) A/D 转换部分
1.1 TLC0834 AD 转换器 TLC0834 的启动和转换可以由软件自由控制。根据 TLC0834 的工作时序图,
图 2 控制逻辑表
图 3 时序图
其转换过程是: 片选 置 CS 为低(保证 CS 有一个从高到低的跳变),该电
平能使所有的逻辑功能有效, CS 引脚在整个转换过程中应保持 低电平。此时 DO 端为高阻,DI 端等待指令 起始 向 DI 端输出第一个逻辑高,表示起始位。由于 DI 端
;调用数据转换子程序 LCALL TURN_SUB ;调用显示子程序 LCALL DISP_SUB ;转换成通道 1 CH1: CLR P1.6 ;清时钟 CLR P1.5 SETB P1.7 ;CS=1 CLR P1.7 ;CS=0 SETB P1.5 ;置 1 启动位 SETB P1.6 CLR P1.6 SETB P1.5 ;1 写 SGL SETB P1.6;时钟 0-1 跳变 CLR P1.6 SETB P1.5 ;1 写 ODD SETB P1.6 CLR P1.6 CLR P1.5 ;0 写 SELECT BIT1 SETB P1.6 CLR P1.6 ;通道 0,单端输入 SETB P1.6
C3
10uF
9
RST
R2
10k 29 30 31 PSEN ALE EA
RV3
58%
U5
1 2 3 4 5 6 7 8 V+ CS CH0 CH1 CH2 CH3 DGND AGND ADC0834 CLK SARS 12 11
RV1
58%
1k
DI DO VCC VREF
13 10 14 9

单片机课程设计(直流数字电压表)

单片机课程设计(直流数字电压表)

课程设计总结与展 望
课程设计目标:掌握单片机基础知识,学会设计直流数字电压表 课程设计内容:包括硬件设计、软件设计、调试和测试等 课程设计成果:成功设计并制作出直流数字电压表 课程设计收获:提高了单片机应用能力,增强了团队合作和沟通能力
课程设计展望:未来将继续深入学习单片机技术,提高实践能力,为未来就业做好准备
实际应用:可用于测量直流电压,广泛应用于电子、电力等领域 市场前景:随着电子技术的发展,市场需求不断增长 技术更新:需要不断更新技术,提高测量精度和稳定性 市场竞争:面临国内外竞争对手的压力,需要提高产品质量和降低成本
智能化:单片机技术在智能设备中的应用越来越广泛,未来发展方向将更加智能化。
物联网:单片机技术在物联网中的应用越来越广泛,未来发展方向将更加注重物联网技术的应用。
单片机课程设计(直 流数字电压表)
汇报人:
目录
添加目录标题
单片机课程设计概 述
硬件电路设计
软件程序设计
系统调试与测试
课程设计总结与展 望
添加章节标题
单片机课程设计概 述
掌握单片机的基本原理和编程方法 提高动手实践能力和创新能力 培养团队合作精神和解决问题的能力 为未来的学习和工作打下坚实的基础
电源测试:检查电源电压是 否稳定,是否符合要求
信号测试:检查信号输入、 输出是否正常,是否符合要 求
功能测试:检查系统功能是 否正常,是否符合设计要求
性能测试:检查系统性能是 否满足设计要求,如响应时 间、精度等
稳定性测试:检查系统在 长时间运行下的稳定性, 如温度、湿度等环境因素 对系统的影响
软件调试:通过运行程序,发现并修复程序中的错误 软件测试:通过测试程序,验证程序的功能和性能是否符合预期 测试方法:包括单元测试、集成测试、系统测试等 测试工具:可以使用自动化测试工具,如JUnit、Selenium等

单片机数字电压表设计报告

单片机数字电压表设计报告

《单片机原理与接口技术》课程设计报告姓名梁家余学号 0314院系自机学院班级电气三班指导教师黄钺冯维杰王玮2012 年 06月目录4) LED显示器与单片机接口设计 (9)9.程序设计 (11)1)程序设计总方案 (11)2)系统子程序设计 (11)(1)初始化程序 (11)10.仿真 (12)1)软件调试 (12)11.显示结果及误差分析 (13)二、总结 (14)三、参考文献 (15)四、附录 (15)一、单片机数字电压表设计1.设计任务基于MCS-51系列单片机AT89C51,设计一个能测量0~5V直流电压的数字电压表 2.设计要求1)选用A/D转换器ADC0808,测定0——+5V范围内的直流电压值。

2)采集的数据送四位数码管实时显示。

3)@实现多路电压循环测量和循环显示。

4)@实现0——500mA电流的测量和显示。

5)实现功率的测量。

3. 设计思路1)根据设计要求,选择AT89C51单片机为核心控制器件。

2)A/D转换采用ADC0808实现,与单片机的接口为P1口和P2口的高四位引脚。

3)电压显示采用4位一体的LED数码管。

4)LED数码的段码输入,由并行端口P0产生:位码输入,用并行端口P2低四位4) LED显示器与单片机接口设计 (9)9.程序设计 (11)1)程序设计总方案 (11)2)系统子程序设计 (11)(1)初始化程序 (11)10.仿真 (12)1)软件调试 (12)11.显示结果及误差分析 (13)二、总结 (14)三、参考文献 (15)四、附录 (15)产生。

4.硬件电路设计1)转换过程如下:开始时,寄存器各位清零,转换时,先将最高位置1,把数据送入A/D转换器转换,转换结果与输入的模拟量比较,如果转换的模拟量比输入的模拟量小,则1保留,如果转换的模拟量比输入的模拟量大,则1不保留,然后从第二位依次重复上述过程直至最低位,最后寄存器中的内容就是输入模拟量对应的二进制数字量[5]。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数字电压表单片机课程设计报告班级:姓名:学号:指导教师:2011 年3 月29 日数字电压表电路设计报告一、题目及设计要求采用51系列单片机和ADC设计一个数字电压表,输入为0~5V线性模拟信号,输出通过LED显示,要求显示两位小数。

二、主要技术指标1、数字芯片A/D转换技术2、单片机控制的数码管显示技术3、单片机的数据处理技术三、方案论证及选择主要设计方框图如下:1、主控芯片方案1:选用专用转化芯片INC7107实现电压的测量和实现,用四位数码管显示出最后的转换电压结果。

缺点是京都比较低,内部电压转换和控制部分不可控制。

优点是价格低廉。

方案2:选用单片机AT89C51和A/D转换芯片ADC0809实现电压的转换和控制,用四位数码管显示出最后的转换电压结果。

缺点是价格稍贵;优点是转换京都高,且转换的过程和控制、显示部分可以控制。

基于课程设计的要求和实验室能提供的芯片,我选用了:方案2。

2、显示部分方案1:选用4个单体的共阴极数码管。

优点是价格比较便宜;缺点是焊接时比较麻烦,容易出错。

方案2:选用一个四联的共阴极数码管,外加四个三极管驱动。

这个电路几乎没有缺点;优点是便于控制,价格低廉,焊接简单。

基于课程设计的要求和实验室所能提供的仪器,我选用了:方案2。

四、电路设计原理模拟电压经过档位切换到不同的分压电路筛减后,经隔离干扰送到A/D 转换器进行A/D 转换。

然后送到单片机中进行数据处理。

处理后的数据送到LED 中显示。

同时通过串行通讯与上位通信。

硬件电路及软件程序。

而硬件电路又大体可分为A/D 转换电路、LED 显示电路,各部分电路的设计及原理将会在硬件电路设计部分详细介绍;程序的设计使用汇编语言编程,利用Keil 和PROTEUS 软件对其编译和仿真。

一般I/O 接口芯片的驱动能力是很有限的,在LED 显示器接口电路中,输出口所能提供的驱动电流一般是不够的尤其是设计中需要用到多位LED ,此时就需要增加LED 驱动电路。

驱动电路有多种,常用的是TTL 或MOS 集成电路驱动器,在本设计中采用了74LS244驱动电路。

本实验采用AT89C51单片机芯片配合ADC0808模/数转换芯片构成一个简易的数字电压表,原理电路如图1所示。

该电路通过ADC0808芯片采样输入口IN0输入的0~5 V 的模拟量电压,经过模/数转换后,产生相应的数字量经过其输出通道D0~D7传送给AT89C51芯片的P0口。

AT89C51负责把接收到的数字量经过数据处理,产生正确的7段数码管的显示段码,并通过其P1口传送给数码管。

同时它还通过其三位I/O 口P1.0、P1.1、P1.2、P1.3产生位选信号,控制数码管的亮灭。

另外,AT89C51还控制着ADC0808的工作。

其ALE 管脚为ADC0808提供了1MHz 工作的时钟脉冲;P2.4控制ADC0808的地址锁存端(ALE);P2.1控制ADC0808的启动端(START);P2.3控制ADC0808的输出允许端(OE);P2.0控制ADC0808的转换结束信号(EOC)。

电路原理图如下所示,三个地址位ADDA,ADDB,ADDC 均接高电平+5V 电压,因而所需测量的外部电压可由ADC0808的IN7端口输入。

由于ADC0808在进行A/D 转换时需要有CLK 信,本设计中利用AT89C51的定时中断产生一个100KHZ 的脉冲,由P1.4口送给ADC0808的时钟端,通过软件给其输入一个正脉冲,可立即启动A/D 转换。

在软件设计中,由于我们对单片机知识还没能很熟练的掌握,用中断方式较复杂,且这个程序CPU 工作量不大,查询方式对速度不会产生影响,所以我们采用查询方式,确保仿真的进度和准确度。

系统原理图SAR 的内容为0,在A/D 转换过程中,SARSAR 中ADC0808的状态,开始A/D 转换时,2、 数据处理及控制A/D 转换完毕后,单片机的P1.6口接收到一高电平,立马通过P2将OE 置1,ADC0808的三态输出锁存器被打开,转换完的数字信号经过与D0~D7相连的P0口进入AT89C51。

AT89C51根据公式1-1将数字信号转换为模拟量,然后利用程序获取模拟量的每一位,分别通过P2口输出到LED 上。

与此同时,AT89C51会通过P2.0~P2.3口选择用哪一段LED 显示所传出的数据。

例如,当P2.0~P2.3=1110,则LED 接收到的数据会在第四段LED 上显示。

另外,AT89C51一旦获得了数据后便会将ST置0,即模数转换器停止转换,知道LED获得新的数据并显示出来,ST才会重新置1.由于AT89C51转换速率很快(微妙量级),所以不会影响其接收新的数据。

四、主要元器件的介绍1、AT89C51单片机简介AT89C51是51系列单片机的一个型号,它是ATMEL公司生产的。

AT89C52是一个低电压、高性能CMOS 8为单片机。

将通用的微处理器和Flash存储器结合在一起,可反复擦写的Flash存储器可有效地降低开发成本。

AT89C51有PDIP、PQFP/TQFP及PLCC等三种封装形式,以适应不同产品的需求。

主要功能特性:1、低功耗空闲和掉电模式,软件设置睡眠和唤醒功能。

2、兼容MCS51指令系统,8K可反复擦写(>1000次)Flash ROM。

3、3个16位可编程定时/计数器中断,时钟频率0-24MHz。

4、32个双向I/O口,256B内部RAM。

5、2个串行中断,可编程UART串行通道。

6、2个外部中断源,共6个中断源。

7、2个读写中断口线,3级加密位。

2、ADC0808模数转换芯片简介ADC0808是采样分辨率为8位的、以逐次逼近原理进行模/数转换的器件。

其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。

ADC0808是ADC0809的简化版本,功能基本相同。

一般在硬件仿真时采用ADC0808进行A/D转换,实际使用时采用ADC0809进行A/D转换。

引脚功能(外部特性)ADC0808芯片有28条引脚,采用双列直插式封装,如右图所示。

各引脚功能如下:1~5和26~28(IN0~IN7):8路模拟量输入端。

8、14、15和17~21:8位数字量输出端。

22(ALE):地址锁存允许信号,输入,高电平有效。

6(START):A/D转换启动脉冲输入端,输入一个正脉冲(至少100ns 宽)使其启动(脉冲上升沿使0809复位,下降沿启动A/D转换)。

7(EOC):A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。

9(OE):数据输出允许信号,输入,高电平有效。

当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。

10(CLK):时钟脉冲输入端。

要求时钟频率不高于640KHZ。

12(VREF(+))和16(VREF(-)):参考电压输入端11(Vcc):主电源输入端。

13(GND):地。

23~25(ADDA、ADDB、ADDC):3位地址输入线,用于选通8路模拟输入中的一路。

3、四位共阴极数码管简介数码管有两种:一种共阴极、另一种为共阳极,本次课程设计用的是共阴极。

下面比较详细说明共阴极与共阳极的共同点与区别:图(b)的左边为共阴极数码管,也就是数码管的阴极管接地。

那时某段亮,这段就必须接高电平。

共阴极数码管0~9的C51编码为:1、uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x7f,0x6f};2、uchar code table[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef};其中1不带小数点,2带小数点。

共阳极就是数码管的每段都接高电平,这样要是哪段亮就这段就得接地。

四、部分电路介绍1、晶振电路接12MHz晶振,根据芯片手册,适合并联30pf微调电容,从而构成并联谐振,帮助和稳定输出波形。

2、复位电路AT89C51单片机要求至少两个高电平,以便单片机做好准备工作。

当上电时,由于电容的电压不能突变,会输出高电平,当电容充电到一定程度,就会输出低电平,单片机利用输出高电平的这段时间复位。

电阻和电容的值选择要合适。

在这要求R1<<R2,所以选取R1=1kΩ,R2=10kΩ。

3、模拟输入电路通过可变电阻一端接电源+5v,一端接地GND,通过改变电阻的阻值,从而改变所测电压值,实现电压的模拟信号输入。

4、ADC0808芯片与单片机接口电路ADC0808的输出接到P1口,OUT1对应的是最高位,START与ALE可以接在一起。

在这里,START接P3.0,OE接P3.1,EOC接P3.2,ClOCK接P3.4。

5、显示电路通过P0口控制四位共阴极数码管段选,通过P2口的低四位控制位选。

值得注意的是P0需要接上拉电阻,否则P0会处于高阻态。

总电路如下:设计原理:将模拟量通过IN0输入,经过ADC0808芯片转换,得到数字量输出到单片机P0口,经过单片机处理后,送到四位共阴极数码管上显示。

仿真结果如下:五、程序设计为了在C语言源程序中直接编写中断服务函数的需要,KeilCx51编译器对函数的定义进行了扩展,增加了一个扩展关键字interrupt,它是函数定义是的一个选项,加上这个选项即可以将一个函数定义成中断服务函数。

定义中断服务函数的一般形式为:函数类型函数名(形式参数表)[interrupt n] [using n]由于ADC0808的CLOCK的时钟频率不高于640KHZ,在这利用定时器T0的中断产生时钟频率,则可设置为:void t0(void) interrupt 1 using 0ADC0808的时序图如下:由时序图可知,只有在转换期间,EOC处于低电平,因此在AD转换开始前EOC 置为低电平,START在上升沿期间将芯片内的所有寄存器清零,在下降沿来临时开始转换,由于所用的时钟为100KHz,比较的缓慢不需要再延时,在此等待转换结束,结束后将其数字量输出。

根据上述分析及原理,可设计程序流程图如下:设计程序如下:#include<absacc.h>#include<reg51.h>#define uchar unsigned char#define uchar unsigned char#define uint unsigned intsbit START=P3^0;sbit OE=P3^1;sbit EOC=P3^2;sbit P07=P0^7;sbit CLK=P3^4;uchar data led[4];uint data tvdata;uchar code tv[]={0xfe,0xfd,0xfb,0xf7};uchar code a[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; void delay(void) //延时程序{uint i;for(i=0;i<10;i++);}void ledxianshi(void) //显示模块{uchar k,i;if(tvdata>5000)tvdata=5000;led[0]=tvdata%10;led[1]=tvdata/10%10;led[2]=tvdata/100%10;led[3]=tvdata/1000;for(k=0;k<4;k++){P2=tv[k];i=led[k];P0=a[i];if(k==3){P07 =1;}delay();}}void main(void){ET0=1;EA=1;TMOD=0x02;TH0=216;TL0=216;TR0=1;while(1){START=1;START=0; //启动转换while(EOC==0);OE=1;tvdata=P1;tvdata*=20-0.01;OE=0;ledxianshi();delay();}}void t0(void) interrupt 1 using 0{CLK=~CLK;}六、硬件制作与测试1、主要仪器及使用方法主要仪器:5v直流电源,剥线钳,数字万用表,通用版电路板,电烙铁,镊子,USB转串口线。

相关文档
最新文档