创新设计说明书 设计题目简易数字电压表的设计
- 格式:doc
- 大小:587.00 KB
- 文档页数:22
本科专业学生毕业设计(论文)题目:简易数字电压表设计系别:计算机工程系专业:电子信息工程年级: 2010级学号:姓名:指导教师:摘要数字电压表简称DVM,数字电压表基本原理是将输入的模拟电压信号转化为数字信号,再进行输出显示。
而A/D转换器的作用是将连续变化的模拟信号量转化为离散的数字信号,其基本结构是由采样保持,量化,编码等几部分组成。
因此AD转换是此次设计的核心元件。
输入的模拟量经过AD转换器转换,再由驱动器驱动显示器输出,便得到测量的数字电压。
本次设计的作品由于用到的模数转换芯片是ADC0832,设计系统给的供电电压为+5伏,能够测量电压范围为0到5伏之间,满足设计要求。
同时设计的精度为小数点后两位,满足要求的两位小数的精度,在不考虑AD芯片的量化误差的前提下,此次设计的精度能够满足一般测量的要求。
关键词:数字电压表;信号;AD转换;测量AbstractDVM is short for digital display voltmeter,the fundamental of DVM is converting The input analog voltage signal into digital signals,and then show the solution.The function of A/D converter is to convert the continuous change of analog signals into discrete digital signals. It comes in several parts-sampling,maintaining,quantization and coding.So the AD conversion is the core element of the design.The Input analog will be transformed by AD converter then driven by the drive display output, then get the digital voltage measurement This design work requirement for making digital voltage meter range of 0 to 5 v, due to the use of modulus conversion chip is ADC0832, The voltage of power supplied by design system is+ 5 v,At the same time, It can measure the voltage at the range of 0 to 5 v, and meet the design requirements.the precision of the design to two decimal places, meet the requirements of the precision of the two decimal places, without considering the AD chip under the premise of quantization error, the accuracy of the design can meet the requirements of general measure.Key words: DVM signals A/D converter measurement.目录第一章引言 (1)1.1 课题设计的背景及概述 (1)1.2 课题设计方案的选择 (1)1.2.1由数字电路及芯片构建 (2)1.2.2由单片机系统及A/D转换芯片构建 (2)第二章系统方案设计与论证 (3)2.1设计目标 (3)2.1.1基本功能 (3)2.1.2主要技术参数 (3)2.2设计思路与预期成果 (3)2.2.1设计思路 (3)2.2.2预期成果 (3)2.3设计方案 (4)2.4总设计框图 (4)第三章硬件设计与原理 (5)3.1电源的设计 (5)3.2单片机最小系统 (5)3.3 显示系统 (10)3.3.1 LCD1602的指令说明及时序 (11)3.3.2 LCD1602的RAM地址映射及标准字库表 (13)3.4模数转换 (14)第四章软件设计与程序 (16)4.1 软件的组成 (16)4.2 各部分软件分析 (16)4.2.1 初始化程序 (16)4.2.2 采样数据分离,显示子函数 (17)4.2.3 A/D转换子程序 (18)4.2.4 主函数 (19)第五章系统的调试 (20)5.1 软件调试 (20)5.2 显示结果及误差分析 (20)5.2.1 显示结果 (20)5.2.2 误差分析 (21)结论 (23)参考文献 (24)附录 (25)1.原件清单 (25)2.实物图 (26)3.原理图 (26)4.PCB板图 (27)5.源程序代码 (27)感谢 (32)第一章引言1.1 课题设计的背景及概述在电子测量中,电压、电流和频率是最基本的三个被测量,其中电压量的测量最为经常,而且随着电子技术的发展,更是需要经常测量高精度的电压,所以数字电压表就成为一种必不可少的测量仪器。
引言.................................................. 错误!未定义书签。
1 系统总体设计及方案.................................. 错误!未定义书签。
1.1设计题目、内容、规定 ............................ 错误!未定义书签。
1.2概述 ............................................ 错误!未定义书签。
1.3系统原理及基本框图 .............................. 错误!未定义书签。
1.4方案阐明 ........................................ 错误!未定义书签。
1.5方案论证 ........................................ 错误!未定义书签。
1.5.1 显示某些 .................................... 错误!未定义书签。
1.5.2 A/D转换某些................................. 错误!未定义书签。
2 电路设计............................................ 错误!未定义书签。
2.1输入电路 ........................................ 错误!未定义书签。
2.2A/D转换电路..................................... 错误!未定义书签。
2.3双积A/D转换器工作原理.......................... 错误!未定义书签。
2.4A/DC0808转换流程图.............................. 错误!未定义书签。
2.5液晶显示某些..................................... 错误!未定义书签。
简易数字电压表设计一、设计要求1、利用ADC0809设计一简易数字电压表,要求可以测量0—5V之间8路输入电压值、电压值由四位LED数码管显示,并在数码管上轮流显示或单路选择显示;2、测量最小分辨率为0.019V,测量误差为±0.02V。
二、设计作用与目的利用AT89S51与ADC0809设计制作一个数字表,能够测量直流电压值。
三、所用设备及软件单片机AT89S51、ADC0809芯片、PC设计台四、系统设计方案本设计采用AT89S51单片机芯片配合ADC0809模/数转换芯片构成一个简易的数字电压表,原理框图如图1所示。
该电路通过ADC0809芯片采样输入口IN0输入的0~5 V的模拟量电压,经过模/数转换后,产生相应的数字量经过其输出通道D0~D7传送给AT89S51芯片的P0口。
AT89S51负责把接收到的数字量经过数据处理,产生正确的7段数码管的显示段码,并通过其P1口经三极管驱动,再传送给数码管。
同时它还通过其三位I/O口P3.0、P3.1、P3.2产生位选信号,控制数码管的亮灭。
另外,AT89S51还控制着ADC0809的工作。
其ALE管脚为ADC0809提供了1MHz工作的时钟脉冲;P2.3控制ADC0809的地址锁存端(ALE);P2.4控制ADC0809的启动端(START);P2.5控制ADC0809的输出允许端(OE);P3.7控制ADC0809的转换结束信号(EOC)。
图1 系统原理框图本设计与其它方法实现主要区别在于元器件上例如:AT89C51与AT89C51、AT89S51在AT89C51的基础上,又增加了许多功能,性能有了较大提升。
1.ISP在线编程功能,这个功能的优势在于改写单片机存储器内的程序不需要把芯片从工作环境中剥离。
是一个强大易用的功能。
2.工作频率为33MHz,大家都知道89C51的极限工作频率只有24M,就是说S51具有更高工作频率,从而具有了更快的计算速度。
目录1引言 (2)2系统硬件设计 (2)2.1 ATMEL89C5单片机系统和显示电路 (3)2.2 A/D转换电路 (4)3系统软件设计 (5)3.1初始化程序 (5)3.2 A/D转换子程序 (5)3.3显示子程序 (6)4系统安装调试及结果 (14)4.1系统安装调试 (14)4.1.1 电路焊接 (14)4.1.2 程序下载及程序下载 (14)4.2系统调试结果 (14)4.2.1 调试所用工具 (14)4.2.2记录测试数据 (14)5总结 (15)6致谢 (15)7注释8参考文献简易数字电压表的设计【内容摘要】此在现代检测技术中,常需用高精度数字电压表进行现场检测,将检测到的数据送入微计算机系统,完成计算、存储、控制和显示等功能。
本文中的数字电压表的控制系统采用ATMEL89C5单片机,A/D转换器采用TLC549为主要硬件,实现数字电压表的硬件电路与软件设计。
该系统的数字电压表电路简单,所用的元件较少,成本低,调节工作可实现自动化。
【关键词】数字单片机;数字电压表;A/D转换;模拟信号数字电压表(Digital Voltmeter )简称DVM它是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。
传统的指针式电压表功能单一、精度低,不能满足数字化时代的需求,采用单片机的数字电压表,由精度高、抗干扰能力强,可扩展性强、集成方便,还可与PC进行实时通信。
目前,由各种单片A/D转换器构成的数字电压表,已被广泛用于电子及电工测量、工业自动化仪表、自动测试系统等智能化测量领域,示出强大的生命力。
与此同时,由DVMT展而成的各种通用及专用数字仪器仪表,也把电量及非电量测量技术提高到崭新水平。
2系统硬件设计硬件电路设计主要包括:ATMEL89C5单片机系统,A/D转换电路,显示电路图2-1是数字电压表硬件电路原理图。
图2-1数字电压表硬件电路原理图2.1 ATMEL89C51单片机系统和显示电路由于单片机体积小、重量轻、价格便宜,所以本系统采用 ATMEL89C51单片机,其原理图如图1所示。
单片机课程设计姓名:罗双林学号:0803731173班级:电气082成绩:指导老师:吴玉蓉设计时间:2011-1-4——2011-1-16摘要简易数字电压测量电路由A/D转换、数据处理及显示控制等组成。
当外部0~5V的模拟信号输入时,首先通过ADC0809转换模块进行转换,转换成数字信号并进入通道进行选择后,将信号传入STC89C52RC单片机时,单片机通过按键电路中的一个按键来选择单路还是8路,另一个按键作单路显示时选择通道,当选择完毕后将数据送入到显示器。
Simple digital voltage measurement circuit by the A/D conversion, data processing and display control etc.When external 0 ~ 5-v analog signal input, first by ADC0809 conversion module for conversion, converted into digital signals and into the passage, after selecting the signal STC89C52RC microcontroller, introduced into the microcontroller through buttons circuit a button to choose single road or no.8, another button for single road show when choosing the right channel, when choosing after completionwill enter data into to the display.目录第一章课程设计任务书 (4)1.1 设计目的任务及要求 (4)1.2设计时间及进度安排 (4)第二章课程设计说明书 (5)2.1设计方案 (5)2.2系统硬件电路的设计 (6)2.3主要元件选型及相关功能介绍 (7)2.4系统软件设计 (13)第三章结论及心得体会 (15)参考文献 (15)附录 (16)源程序 (16)简易数字电压表的设计一.课程设计目的和要求:本课程是一门实践性、应用性很强的课程。
南京工程学院课程设计说明书(论文)题目简易数字电压表设计课程名称微机原理及接口技术院(系、部、中心)XXXXX专业XXXX班级 XXXXX学生姓名 XXXX学号 XXXXX设计地点微机原理实验中心指导教师 XXXX设计起止时间:2009年12月14日至2009年12月18日目录1.功能描述 (2)2.总体设计 (2)2.1系统硬件电路设计 (2)2.2软件流程图设计 (4)3.测试结果与分析 (7)4.课程设计总结 (7)参考文献: (8)附录: (9)1.功能描述采用8086、ADC0809逐次逼近式A/D转换器,设计一个电压检测电路并编制相应的程序,使其能将输入的0-5V模拟电压量转换成数字量并在LED/LCD屏上显示。
完成简易数字电压表的设计。
2.总体设计本次课程设计使用伟福6000实验系统,使用了8086、模数转换芯片ADC0809、中断控制器8259A、键盘、6位数码管以及点阵122x32液晶等。
设计应用的原理是利用8086作为控制单元,实现AD采样的启动、键盘的扫描以及数码管或液晶的显示。
采用ADC0809逐次逼近式A/D转换器设计一个电压检测电路并编制相应的程序,使其能将输入的0-5V模拟电压量转换成数字量并在LED/LCD屏上显示;ADC0809每采集一次大约需要100μS,设计程序既可采用查询方式读入A/D转换结果,也可采用中断方式读入结果;模拟电压量由实验箱上的电位器提供,电压范围0-5V,经ADC0809转换得到的数字量范围为0—255;采用键盘扫描实现判断有无按键和读取键值的功能。
通过按键来启动AD转换和清零的功能。
六位数码管的显示采用动态显示。
2.1系统硬件电路设计用中断、键盘、液晶显示0-5V电压1。
键盘部分电路2.中断部分电路3。
液晶显示电路4。
模数转换电路2.2软件流程图设计1、A/D转换模块流程图如图一图一图二3、中断模块流程图如图三图三图四5、主程序和键盘扫描子程序如图五图五3.测试结果与分析编制好汇编程序并下载到硬件电路中运行能达到预期目标。
简易数字电压表的设计_microsoft_word_文档简易数字电压表的设计_microsoft_word_文档题题目:目:简易数字电压表的设计简易数字电压表的设计姓姓名:周光豆名:周光豆曾玉曾玉学学号:号:201001330122 201001330121 指导老师:指导老师:粟慧龙粟慧龙设计时间:设计时间:2001220012 年年4 4 月月2727 日日班级:铁道通讯101 班(电子信息工程系电子信息工程系) 单片机原理及应用课程设计报告书目录1. 引言1 1.1.设计意义1 1.2.系统功能要求1 1.3.本组成员所做的工作1 2方案设计.2 2.1 系统的设计任务2 2.2 设计方案2 2.3 软硬件开发环境3 3硬件设计.3 3.1 单片机主电路设计3 3.2 测量、转换电路设计5 3.3 显示电路设计7 4软件设计. 11 4.1 主程序设计.11 4.2 模块程序设计.12 5系统调试15 6设计总结15 7 附录16 附录7.1 硬件原理图.16 附录7.2 程序清单.17 8参考文献20 简易数字电压表的设计单片机原理及应用课程设计 1 简易数字电压表的设计简易数字电压表的设计 1. 引引言言 1.1. 设计意义本文介绍了基于89c51 单片机的一种8 路输入电压测量电路,该电路采用ADC0809 作为A/D 转换元件。
1.2 .系统功能要求简易数字电压表可以测量范围0 至5 伏范围内的8 路输入电压值,并在4 位LED 数码管上轮流显示或选择显示。
其测量最小分辨率为0.02V。
本系统主要包括四大模块:数据采集模块、控制模块、显示模块、A/D 转换模块。
绘制电路原理图与工作流程图,并进行调试,最终设计完成了该系统的硬件电路。
在软件编程上,采用了汇编语言进行编程,开发了显示模块程序、通道切换程序、A/D 转换程序。
1.3 .本组成员所做的工作周光豆:程序编写及调试,帮助检测硬件电路周光豆、曾玉:硬件焊接,系统测试曾玉:焊接部分电路、帮助系统测试、论文撰写、心得总结。
简易数字电压表的设计(4人)一、设计目的进一步加深理解模拟电子技术、数字电子技术、单片机原理与应用等课程的基础知识,掌握一些小型电子系统的设计方法和制作过程的能力;培养学生们的科学性、系统性、及全面性的设计素质;开拓学生的设计思路,增强他们把理论知识与实践相结合的能力;为毕业后从事电子设备控制电路设计、调试、维修奠定基础。
二、设计要求1.功能要求设计并制作一个简易数字电压表,可以测量0~5V范围内的8路输入电压值,并在4位LED数码管上轮流显示或单路选择显示,其中1位为显示通道号。
其测量最小分辨率为0.02V。
2.设计内容(1)根据设计功能要求,确定CPU的选型与硬件接口配置。
(2)进行硬件设计,主要是整个系统电路原理图的绘制和对应的PCB板的布线设计。
(3)进行软件设计,根据控制要求编写控制系统的控制程序。
(4)控制系统调试。
(5)源程序。
三、主要元器件ADC0809、数码管、三极管、发光二极管、总线驱动器、电位器、按键、电阻、电容、导线、万能板等四、设计报告要求1、方案论证及方框图。
2、单元电路设计细则。
3、调试及性能分析。
4、系统的电原理图。
5、电子元器件清单。
6、源程序清单。
7、参考资料。
8、收获。
五、教材及参考书[1] 潘永雄. 新编单片机原理与应用(第二版). 西安:西安电子科技大学出版社,2007年[2] 余永权.单片机应用系统的功率接口技术. 北京:北京航空航天大学出版社,1992[3] 孙涵芳.MCS-51/96系列单片机原理与应用. 北京:北京航空航天大学出版社,1996[4] 丘关源编.电路分析基础.高等教育出版社. 1999年[5] 童诗白编.模拟电子技术基础.高等教育出版社.1999年[6]阎石编.数字电子技术基础.高等教育出版社.1997年[7] [8]刘文涛编.MCS-51单片机培训教程 C51版.电子工业出版社.2006年六、课程设计进度安排注:设计说明书使用课程设计报告本书写,每人一份,独立完成。
目录毕业设计任务书.......................................................................... 错误!未定义书签。
开题报告...................................................................................... 错误!未定义书签。
摘要........................................................................................ 错误!未定义书签。
关键词.......................................................................................... 错误!未定义书签。
引言. (2)第一章A/D转换器 (3)1.1A/D转换原理 (3)1.2 ADC性能参数 (5)1.2.1 转换精度 (5)1.2.2. 转换时间....................................................... 错误!未定义书签。
1.3 常用ADC芯片概述 (7)第二章8OC51单片机引脚 (8)第三章ADC0809 (10)3.1 ADC0809引脚功能 (10)3.2 ADC0809内部结构 (12)3.3ADC0809与80C51的接口 (13)3.4 ADC0809的应用指导 (14)3.4.1 ADC0809应用说明 (14)3.4.2 ADC0809转换结束的判断方法 (14)3.4.3 ADC0809编程方法 (15)第四章硬件设计分析 (16)4.1电源设计 (16)4.2 关于74LS02,74LS04 (16)4.3 74LS373概述 (17)4.3.1 引脚图 (17)4.3.2工作原理 (17)4.4简易数字电压表的硬件设计 (18)结论 (19)参考文献 (19)附录........................................................................................ 错误!未定义书签。
毕业设计(论文)题目摘要数字电压表(Digital Voltmeter)简称DVM,它是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。
传统的指针式电压表功能单一、精度低,不能满足数字化时代的需求,采用单片机的数字电压表,由精度高、抗干扰能力强,可扩展性强、集成方便,还可与PC进行实时通信。
目前,由各种单片A/D 转换器构成的数字电压表,已被广泛用于电子及电工测量、工业自动化仪表、自动测试系统等智能化测量领域,示出强大的生命力。
与此同时,由DVM扩展而成的各种通用及专用数字仪器仪表,也把电量及非电量测量技术提高到崭新水平。
本章重点介绍单片A/D 转换器以及由它们构成的基于单片机的数字电压表的工作原理。
关键词: A/D转换模块数据处理模块简易数字电压表目录摘要 (8)第一章实现方案 (10)1.硬件选择方案 (12)2.主要元器件的介绍 (12)3.程序设计 (21)第二章系统的测试与结果 (25)第三章系统调试过程及问题解决 (28)第四章结论 (29)第五章致谢 (30)参考文献 (30)引言本文主要描述采用AT89S51芯片和ADC0809芯片来完成一个简易的数字电压表,能够对输入的0~5 V的模拟直流电压进行测量,并通过一个4位一体的7段LED数码管进行显示,测量误差约为0.02 V。
该电压表的测量电路主要由三个模块组成:A/D转换模块、数据处理模块及显示控制模块。
A/D转换主要由芯片ADC0809来完成,它负责把采集到的模拟量转换为相应的数字量再传送到数据处理模块。
数据处理则由芯片AT89S51来完成,其负责把ADC0809传送来的数字量经一定的数据处理,产生相应的显示码送到显示模块进行显示;另外它还控制着ADC0809芯片的工作。
显示模块主要由7段数码管及相应的驱动芯片(74HC245组成,显示测量到的电压值湖南科技经贸职业学院毕业论文选题表2010 年 3 月15 日湖南科技经贸职业学院毕业论文开题报告湖南科技经贸职业学院毕业论文开题报告湖南科技经贸职业学院毕业论文成绩考核表摘要数字电压表(Digital Voltmeter)简称DVM,它是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。
单片机课程设计-----------简易数字电压表的设计RTX2011-7湖北::汽院::电系简易数字电压表的设计1.功能要求简易数字电压表的设计可以测量0~5V的8路输入电压值,并在四位上轮流显示或单路选择显示。
测量最小分辨率为0.019V,测量误差为±0.02V。
2.硬件图硬件图分解:简化图3.算法ADC0809的模拟数量与数字输出量的对应关系用整数运算实现实数运算(上图中的对应关系)的结果4.程序代码:ORG 0000HLJMP STARTPress EQU 30HORG 0050HSTART: MOV P1,#0FFH; 效果:’8.’从右→左移动(一次)MOV R0,#11110111BMOV R3,#4Retest: MOV R6,#0FFHTest: MOV P0,#0FFHMOV A,R0MOV P1,ACALL D10msMOV P1,#0FFHDJNZ R6,TestCALL D10msRR AMOV R0,ADJNZ R3,Retest ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MOV P1,#0FFH; ; 效果:显示’H.E.L.P.’一段时间;MOV R0,#11111110BMOV R6,#0FFHREHLP: MOV DPTR,#HelpMOV R0,#11111110B;;;;;;;;;;;;;MOV R3,#4HLP: CLR AMOVC A,@A+DPTRMOV P0,AMOV A,R0MOV P1,ACALL D10ms;MOV P1,#0FFHINC DPTRRL AMOV R0,ADJNZ R3,HLPDJNZ R6,REHLP ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MOV P1,#0FFH; 效果:显示’1.0-0.’一段时间;MOV R0,#11111110BMOV R6,#0FFHREMOD11: MOV DPTR,#MOD1MOV R0,#11111110B;;;;;;;;;;;;;MOV R3,#4MOD11: CLR AMOVC A,@A+DPTRMOV P0,AMOV A,R0MOV P1,ACALL D10ms;MOV P1,#0FFHINC DPTRRL AMOV R0,ADJNZ R3,MOD11DJNZ R6,REMOD11 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MOV P1,#0FFH; 效果:显示’2.0-7.’一段时间;MOV R0,#11111110BMOV R6,#0FFHREMOD21: MOV DPTR,#MOD2MOV R0,#11111110B;;;;;;;;;;;;;MOV R3,#4MOD21: CLR AMOVC A,@A+DPTRMOV P0,AMOV A,R0MOV P1,ACALL D10ms;MOV P1,#0FFHINC DPTRRL AMOV R0,ADJNZ R3,MOD21DJNZ R6,REMOD21 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MOV P1,#0FFH; 等待键入选择WaitPress: MOV A,P1CPL AJZ WaitPressMOV A,P1CALL D10msMOV Press,P1CJNE A,Press,WaitPress;去抖动ANL A,#00010000B;S1: 模式(MODE1)JZ MODE1MOV A,PressANL A,#00100000B;S2: 模式(MODE2)JZ MODE2MOV P1,#0FFH; S3,S4未定义JMP WaitPress ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; MODE1: MOV P1,#0FFH ;模式1:IN0:单道电压显示CLR EAMOV DPTR,#7FF8H; P2.7=0,IN0MOVX @DPTR,A; P2=7FH,P0=F8H,写(/WR=0,/RD=1)Waiting1: JNB P3.3,Waiting1MOVX A,@DPTR; P2=7FH,P0=F8H,读(/RD=0,/WR=1)Conver1: MOV B,#51DIV ABMOV DPTR,#LEDMOVC A,@A+DPTRADD A,#10000000B; 第1个LED的小数点dp亮MOV P0,ACLR P1.0; 第1个LED亮MOV R0,#11111110BMOV R1,#3NEXT1: CALL D10msMOV P1,#0FFH;MOV A,BMOV B,#10MUL AB;这之后B不是’1’就是’0’:最大50*10=01f4HJB PSW.2,BEQU11; PSW.2就是OVMOV B,#51DIV ABJMP DISP1BEQU11: INC AMOV B,#51DIV ABADD A,#5DISP1: MOV DPTR,#LEDMOVC A,@A+DPTRMOV P0,AMOV A,R0RL AMOV R0,AMOV P1,ACALL D10msDJNZ R1,NEXT1; 显示完4位LED为止MOV P1,#0FFHJMP MODE1 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; MODE2: MOV P1,#0FFH ;模式2:IN0-IN7:多道电压循环显示CLR EAMOV DPTR,#7FF8H;P2.7=0MOV R7,#00H; R7为通道NEXT2In: MOV R6,#0FFHThisIn: MOVX @DPTR,A; IN0时P2=7FH,P0=F8H,写(/WR=0,/RD=1)Waiting2: JNB P3.3,Waiting2MOVX A,@DPTR; IN0时P2=7FH,P0=F8H,读(/RD=0,/WR=1)MOV R2,A; R2为0809的二进制转换结果Conver2: MOV A,R7MOV DPTR,#LEDMOVC A,@A+DPTRMOV P0,ACLR P1.0CALL D10msMOV P1,#0FFHMOV A,R2MOV B,#51DIV ABMOV DPTR,#LEDMOVC A,@A+DPTRADD A,#10000000B; 第2个LED的小数点dp亮MOV P0,ACLR P1.1; 第2个LED亮MOV R0,#11111101B; R0控制LEDMOV R1,#2NEXT2: CALL D10msMOV P1,#0FFH;MOV A,BMOV B,#10MUL ABJB PSW.2,BEQU12MOV B,#51DIV ABJMP DISPBEQU12: INC AMOV B,#51DIV ABADD A,#5DISP: MOV DPTR,#LEDMOVC A,@A+DPTRMOV P0,AMOV A,R0RL AMOV R0,AMOV P1,ACALL D10msDJNZ R1,NEXT2; 显示完4位LED为止CALL D10msMOV P1,#0FFH;MOV A,R2MOV A,R7; 还原DPTRADD A,#0F8H; 相加之和最大为0FFHMOV DPL,AMOV DPH,#7FHDJNZ R6,ThisInCALL D1s;MOV A,R7;ADD A,#0F8H;MOV DPL,A;MOV DPH,#7FHINC DPTRINC R7MOV A,R7CLR CSUBB A,#8JZ MODE2JMP NEXT2In ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; D10ms: MOV R4,#01H ;延时10msD1ms: MOV R5,#249DL: NOPNOPDJNZ R5,DLDJNZ R4,D1msRET ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; D1s: MOV R3,#100 ;延时1sD:CALL D10msDJNZ R3,D RET;;;;;;;;;;;;;;;;;;;;;;;;;;;共阴极;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; LED:DB 3FH,06H,5BH,4FH,66H ;0-4DB 6DH,7DH,07H,7FH,6FH ;5-9 Help:DB 0F6H,0F9H,0B8H,0F3H ;H.E.L.P MOD1:DB 86H,3FH,40H,3FH ;1.0-0 MOD2:DB 0DBH,3FH,40H,07H ;2.0-7 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; END实验效果图模式1:IN0模式2:IN0->IN7IN0IN1…………IN5………提示:按复位键可以重新进行模式选择。
简易数字电压表的设计中文摘要伴随着集成电路(IC)技术的发展,电子设计自动化(EDA)逐渐成为重要的设计手段,己经广泛应用于模拟与数子电路系统等许多领域。
数字电压表简称DVM,是一种用数字显示的电压测量仪表。
其基本原理是采用数字化测量技术,对直流电压进行模数转换,转换成不连续、离散的数字形式并加以显示。
系统主要分为如下几个模块:作为电压采集端口的模数转换单元、数据处理单元、以及电压值显示单元。
其中利用ADC0809作为模数转换器,FPGA作为数据处理的核心器件,用LED数码管进行电压值的显示。
本次所设计的电压表的测量范围是0~5V,精度为0.01V。
此电压表的设计特点为:通过软件编程下载到硬件实现,设计周期短,开发效率高。
关键字:FPGA;A/D;VHDL;电子设计自动化(EDA);数字电压表Design of the Summary Digital V oltmeterABSTRACTWith the development of integrated circuit(IC) technology, Electronic Design Automation(EDA) technology has become an important design method of analog and digital circuit system as.Digital V oltmeter,short for DVM,is used to measure voltage with digital display.The basic principle is to use the digital measurement techniques to convert the DC voltage into discontinuous,discrete digital form and display them.The system can be mainly divide into the following several modules:voltage acquisition as port of anolog-to-digital conversion unit,data processing unit and votage display unit.The ADC0809 is used as AD converter ,FPGA as the core of data processing devices,LED digital tube is to display voltage value.This system’s range is 0v to +5v and precision is 0.01v.The features of this electric voltage watch are :Pass the software program to download the hardware o realize , design the period is short ,development the efficiency is high.KEY WORD: FPGA;A/D;VHDL;Electronic Design Automation (EDA );Digital voltage目录第一章绪论 (11)1.1 课题的研究背景及意义 (1)1.2 课题任务、目标及方法 (1)1.3 论文内容和结构 (2)第二章基础知识介绍 (3)2.1 A/D转换器简介 (3)2.2 ADC0809A/D转换器 (3)2.2.1 ADC0809结构 (3)2.2.2 ADC0809主要特性 (4)2.2.3 ADC0809时序图 (4)2.3 FPGA知识介绍 (5)2.4 VHDL硬件描述语言 (6)2.5 Quartus II开发平台简介 (7)第三章系统设计与实现 (8)3.1系统设计的基本原理 (8)3.2 FPGA功能模块的设计 (8)3.3 转换控制模块 (9)3.3.1 转换模块的工作原理 (9)3.3.2 转换模块元件例化 (11)3.3.3 转换控制模块仿真 (12)3.4 数据处理模块 (12)3.4.1 数据处理模块的工作原理 (12)3.4.2 转换模块的元件例 (13)3.4.3 数据处理模块仿真 (14)3.5 显示模块 (14)3.5.1 显示模块的工作原理 (14)3.5.2 转换模块的元件例 (14)3.5.3 扫描显示模块仿真 (15)3.6 顶层文件设计 (15)3.6.1 顶层文件的设计流程 (15)3.6.2 总体例化的仿真 (16)3.7限幅输入保护电路 (17)第四章硬件测试及说明 (18)4.1 康芯实验箱简介 (18)4.2 实验电路模式5(NO.5)介绍 (18)4.3 引脚锁定 (19)4.3.1 引脚锁定方法 (19)4.3.2 引脚锁定步骤 (19)4.4 配置文件下载 (20)4.5误差对比 (21)第五章结论 (23)参考文献 (24)致谢 (25)附录................................................................. 错误!未定义书签。
一、简易数字电压表的设计l.功能要求简易数字电压表可以测量0~5V的8路输入电压值,并在四位LED数码管上轮流显示或单路选择显示。
测量最小分辨率为0.019 V,测量误差约为土0.02V。
2.方案论证按系统功能实现要求,决定控制系统采用AT89C52单片机,A/D转换采用ADC0809。
系统除能确保实现要求的功能外,还可以方便地进行8路其它A/D转换量的测量、远程测量结果传送等扩展功能。
数字电压表系统设计方案框图如图1-1。
图1-1 数字电压表系统设计方案3.系统硬件电路的设计简易数字电压测量电路由A/D转换、数据处理及显示控制等组成,电路原理图如图1-2所示。
A/D转换由集成电路0809完成。
0809具有8路模拟输人端口,地址线(23~25脚)可决定对哪一路模拟输入作A/D转换,22脚为地址锁存控制,当输入为高电平时,对地址信号进行锁存,6脚为测试控制,当输入一个2us宽高电平脉冲时,就开始A/D 转换,7脚为A/D转换结束标志,当A/D转换结束时,7脚输出高电平,9脚为A/D 转换数据输出允许控制,当OE脚为高电平时,A/D转换数据从该端口输出,10脚为0809的时钟输入端,利用单片机30脚的六分频晶振频率再通过14024二分频得到1 MHz时钟。
单片机的P1、P3.0~P3.3端口作为四位LED数码管显示控制。
P3.5端口用作单路显示/循环显示转换按钮,P3.6端口用作单路显示时选择通道。
P0端口作A/D转换数据读入用,P2端口用作0809的A/D转换控制。
4.系统程序的设计(1)初始化程序系统上电时,初始化程序将70H~77H内存单元清0,P2口置0。
(2)主程序在刚上电时,系统默认为循环显示8个通道的电压值状态。
当进行一次测量后,将显示每一通道的A /D 转换值,每个通道的数据显示时间为1s 左右。
主程序在调用显示子程序和测试子程序之间循环,主程序流程图见图1-3。
(3)显示子程序 显示子程序采用动态扫描法实现四位数码管的数值显示。
创新设计说明书设计题目:简易数字电压表的设计机械工程学院专业:机械设计制造及其自动化班级:11010112设计者:姓名代长城学号1101011225王巍1101011227王锡鹏1101011228 指导老师:时间:2014年6月18日简易数字电压表设计方案一、设计目的21世纪人类进入信息化、数字化时代,传统的指针式刻度电压表功能单一,进度低,容易引起视差和视觉疲劳,因而不能满足数字化时代的需要。
采用单片机的数字电压表,将连续的模拟量如直流电压转换成不连续的离散的数字形式并加以显示,从而精度高、抗干扰能力强,可扩展性强、集成方便,还可与PC实时通信。
数字电压表是诸多数字化仪表的核心与基础。
以数字电压表为核心,可以扩展成各种通用数字仪表、专用数字仪表及各种非电量的数字化仪表。
目前,由各种单片机和A/D转换器构成的数字电压表作全面深入的了解是很有必要的。
目前,数字电压表的内部核心部件是A/D转换器,转换的精度很大程度上影响着数字电压表的准确度,因而,以后数字电压表的发展就着眼在高精度和低成本这两个方面。
二、工作原理及性能分析2.1工作原理当外界输入一个模拟量,A/D转换采用ADC0832对输入的模拟信号进行转换,将模拟信号转换成数字信号,控制核心AT89S52再对转换的结果进行运算处理,最后驱动1602LCD显示数字电压信号。
本设计应用Proteus7及KEIL51软件,首先根据自己设计的电路图用Proteus7软件画出电路模型,关于这个软件的使用通过查一些资料和自己的摸索学习;然后我们用KEIL51软件对所编写的程序进行编译、链接,如果没有错误和警告便可生成程序的hex文件,将此文件加到电路图上使软硬件结合运行,最后进行端口电压的对比测试,测试的第一路对比见图5.1中标准电压值采用Proteus7软件中的模拟电压表测得。
图5.1从图中可以看出,简易数字电压表与“标准”数字电压表测得的绝对误差均在0.02V以内,这与采用8位A/D转换器所能达到的理论误差精度相一致,在一般的应用场合可以完全满足要求。
2.1性能分析由于单片机为8位处理器,当输入电压为5.00V时,输出数据值为255(FFH)因此单片机最大的数值分辨率为0.0196V(5/255)。
这就决定了该电压表的最大分辨率(精度)只能达到0.0196V。
测试时电压数值的变化一般以0.02V的电压幅度变化,如要获得更高的精度要求,应采用12位、13位的A/D转换器。
简易数字电压表测得的值基本上均比标准值偏大0.01-0.02V。
这可以通过校正0832的基准电压来解决,因为该电压表设计时直接用USB的供电电源作为基准电压,电压可能有偏差。
另外可以用软件编程来校正测量值。
三、设计方案3.1设计要求⑴以MCS-51系列单片机为核心器件,组成一个简单的直流数字电压表。
⑵采用1路模拟量输入,能够测量0-5V 之间的直流电压值。
⑶电压显示用1602液晶显示。
⑷尽量使用较少的元器件。
3.2 设计思路⑴根据设计要求,选择AT89S52单片机为核心控制器件。
⑵A/D 转换采用ADC0832实现。
⑶电压显示用1602液晶显示。
3.3 硬件设计方案硬件电路设计由6个部分组成; A/D 转换电路,AT89S52单片机系统,LCD 显示系统、时钟电路、复位电路以及测量电压输入电路。
硬件电路设计框图如图1所示。
图1 数字电压表系统硬件设计框图3.3.1单片机的介绍40个引脚,4k bytes flash 片内程序存储器,256 bytes 的随机存取数据存储器(ram ),32个外部双向输入/输出(i/o )口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(wdt )电路,片内时钟振荡器。
AT89S52单片机是一种低功耗高性能的CMOS8位微控制器,内置8KB 可在线编程闪存。
该器件采用Atmel 公司的高密度非易失性存储技术生产,其指令与工时钟电路 复位电路A/D 转换电路 测量电压输入 LCD 显示AT89C51P2P1P 3业标准的80C51指令集兼容。
片内程序存储器允许重复在线编程,允许程序存储器在系统内通过SPI串行口改写或用同用的非易失性存储器改写。
通过把通用的8位CPU与可在线下载的Flash集成在一个芯片上,AT89S52便成为一个高效的微型计算机。
它的应用范围广,可用于解决复杂的控制问题,且成本较低。
其结构框图如图3.1所示。
图3.1 AT89S52结构框图图3.2 AT89S52此外,AT89S52设计和配置了震荡频率可为12MHZ并可通过软件设置省电模式。
空闲模式下,cpu暂停工作,而ram定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存ram的数据,停止芯片其它功能直至外中断激活或硬件复位。
同时该芯片还具有pdip、tqfp和plcc等三种封装形式,以适应不同产品的需求。
主要功能特性:·兼容mcs-51指令系统· 4k可反复擦写(>1000次)isp flash rom· 32个双向i/o口· 4.5-5.5v工作电压· 2个16位可编程定时/计数器·时钟频率0-33mhz·全双工uart串行中断口线· 256x8bit内部ram· 2个外部中断源·低功耗空闲和省电模式·中断唤醒省电模式· 3级加密位·看门狗(wdt)电路·软件设置空闲和省电功能按照功能,AT89S52的引脚可分为主电源、外接晶体振荡或振荡器、多功能I/O口、控制和复位等。
1.多功能I/O口AT89S52共有四个8位的并行I/O口:P0、P1、P2、P3端口,对应的引脚分别是P0.0 ~ P0.7,P1.0 ~ P1.7,P2.0 ~ P2.7,P3.0 ~ P3.7,共32根I/O 线。
每根线可以单独用作输入或输出。
①P0端口,该口是一个8位漏极开路的双向I/O口。
在作为输出口时,每根引脚可以带动8个TTL输入负载。
当把“1”写入P0时,则它的引脚可用作高阻抗输入。
当对外部程序或数据存储器进行存取时,P0可用作多路复用的低字节地址/数据总线,在该模式,P0口拥有内部上拉电阻。
在对Flash存储器进行编程时,P0用于接收代码字节;在校验时,则输出代码字节;此时需要外加上拉电阻。
②P1端口,该口是带有内部上拉电阻的8位双向I/O端口,P1口的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。
对端口写“1”时,通过内部的上拉电阻把端口拉到高电位,此时可用作输入口。
P1口作输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。
在对Flash编程和程序校验时,P1口接收低8位地址。
另外,P1.0与P1.1可以配置成定时/计数器2的外部计数输入端(P1.0/T2)与定时/计数器2的触发输入端(P1.0/T2EX),如图3.3所示。
端口引脚复用功能P1.0 T2(定时器/计算器2的外部输入端)P1.1 T2EX(定时器/计算器2的外部触发端和双向控制)P1.5 MOSI(用于在线编程)P1.6 MISO(用于在线编程)P1.7 SCK(用于在线编程)图3.3 P1口管脚复用功能③ P2端口,该口是带有内部上拉电阻的8位双向I/O端口,P2口的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。
对端口写“1”时,通过内部的上拉电阻把端口拉到高电位,此时可用作输入口。
P2口作输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。
在访问外部程序存储器或16位的外部数据存储器时,P2口送出高8位地址,在访问8位地址的外部数据存储器时,P2口引脚上的内容(就是专用寄存器(SFR)区中P2寄存器的内容),在整个访问期间不会改变。
在对Flash编程和程序校验期间,P2口也接收高位地址或一些控制信号。
④ P3端口,该口是带有内部上拉电阻的8位双向I/O端口,P3口的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。
对端口写“1”时,通过内部的上拉电阻把端口拉到高电位,此时可用作输入口。
P3口作输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。
在AT89S52中,同样P3口还用于一些复用功能,如表3.2所列。
在对Flash 编程和程序校验期间,P3口还接收一些控制信号。
端口引脚复用功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 INT0(外部中断0)P3.3 INT1(外部中断1)P3.4 T0(定时器0的外部输入)P3.5 T1(定时器1的外部输入)P3.6 WR(外部数据存储器写选通)P3.7 RD(外部数据存储器读选通)图3.4 P3端口引脚与复用功能表2.RST 复位输入端。
在振荡器运行时,在此脚上出现两个机器周期的高电平将使其单片机复位。
看门狗定时器(Watchdog)溢出后,该引脚会保持98个振荡周期的高电平。
在SFR AUXR(地址8EH)寄存器中的DISRTO位可以用于屏蔽这种功能。
DISRTO位的默认状态,是复位高电平输出功能使能。
3.ALE/PROG 地址锁存允许信号。
在存取外部存储器时,这个输出信号用于锁存低字节地址。
在对Flash存储器编程时,这条引脚用于输入编程脉冲PROG。
一般情况下,ALE是振荡器频率的6分频信号,可用于外部定时或时钟。
但是,在对外部数据存储器每次存取中,会跳过一个ALE脉冲。
在需要时,可以把地址8EH中的SFR寄存器的0位置为“1”,从而屏蔽ALE的工作;而只有在MOVX或MOVC指令执行时ALE才被激活。
在单片机处于外部执行方式时,对ALE屏蔽位置“1”并不起作用。
4.PSEN 程序存储器允许信号。
它用于读外部程序存储器。
当AT89S52在执行来自外部存储器的指令时,每一个机器周期PSEN被激活2次。
在对外部数据存储器的每次存取中,PSEN的2次激活会被跳过。
5.EA/Vpp 外部存取允许信号。
为了确保单片机从地址为0000H~FFFFH 的外部程序存储器中读取代码,故要把EA接到GND端,即地端。
但是,如果锁定位1被编程,则EA在复位时被锁存。
当执行内部程序时,EA应接到Vcc。
在对Flash存储器编程时,这条引脚接收12V编程电压Vpp。
6.XTAL1 振荡器的反相放大器输入,内部时钟工作电路的输入。
7.XTAL2 振荡器的反相放大器输出。
3.3.2 ADC0832介绍ADC0832 是美国国家半导体公司生产的一种8 位分辨率、双通道A/D 转换芯片。
由于它体积小,兼容性强,性价比高而深受单片机爱好者及企业欢迎,其目前已经有很高的普及率。