基于AT89S51和ADC0809简易数字电压表的设计
简易数字电压表的设计与制作毕业设计论文

目录第一部分设计任务与调研 (1)1、毕业设计的主要任务 (1)2、设计的思路、方法 (1)3、调研相关的资料 (2)4、调研的目的和总结 (2)第二部分设计说明 (3)1、理论分析 (3)1.1 AT89C51单片机概述 (3)1.2 AD转换器工作原理 (5)1.3 ADC0809介绍 (7)1.4 四位LED数码管介绍 (9)2、系统硬件设计 (10)2.1单片机晶振电路 (10)2.2单片机复位电路 (10)2.3 LED显示电路 (11)2.4数字电压表硬件接线 (12)2.5焊接元件元件介绍 (13)3、系统软件设计 (14)3.1程序流程图 (14)3.2 A/D转换子程序 (14)3.3 显示子程序 (15)第三部分设计成果 (16)1、数字电压表仿真程序 (16)2、软件调试 (18)2.1 Keil软件调试程序 (18)2.2 Proteus软件仿真调试 (19)3、硬件调试 (20)第四部分结束语 (21)第五部分致谢 (22)第六部分参考文献 (23)第一部分设计任务与调研1、毕业设计的主要任务本课题要求设计一个能正确测量模拟电压0-5v,误差<1%,利用ADC 0809采样输入的模拟量,转换后的电压值显示在4位数码管上。
具体要求如下。
(1)采用51单片机进行控制,显示采用LED显示,设计硬件电路。
(2)设计硬件结构框图,在proteus仿真系统上搭建设计平台。
(3)下载程序至设计平台,调试程序,实现程序功能。
(4)购买元器件焊接制作电路板。
(5)下载烧录程序至电路板中进行测试。
(6)撰写毕业设计成果报告,进行毕业答辩。
2、设计的思路、方法用ADC0809作为采样输入,经过模数转换后送到单片机,然后有单片机给数码管输入数字信号,控制数码管显示。
通过优化程序、提高硬件精度等级、校正基准电压等方法使得测量误差<1%。
进行根据设计任务的要求,选用合适的单片机型号和其他元件,然后在proteus仿真软件上画出电路原理图,利用keil软件编写控制程序后下载程序到仿真软件进行调试,通过调试结果反馈信息再修改调整控制程序和硬件电路,最后制作基于单片机控制的数字电压表电路板,电路板制作完成后进行测试和测量。
基于单片机的简易数字电压表设计(任务书+论文)

任务书摘要本文介绍了基于89c51单片机的一种8路输入电压测量电路,该电路采用ADC0809作为A/D转换元件,测量范围0至5伏,小数点后显示一位。
要求能够依次显示每路通道电压,而且能够通过拨码开关选择输入通道。
使用3位LED 模块显示,前面一位显示通道号,后面两位显示测量电压值。
本系统主要包括四大模块:数据采集模块、控制模块、显示模块、A/D转换模块。
绘制电路原理图与工作流程图,并进行调试,最终设计完成了该系统的硬件电路。
在软件编程上,采用了汇编语言进行编程,开发环境使用WAVE集成开发环境。
开发了显示模块程序、通道切换程序、A/D转换程序。
关键词:ADC0809;A/D转换;LED显示目录1 方法论证 (5)1.1 系统的设计任务 (5)1.2 设计方案 (5)1.3 软硬件开发环境 (6)2 数字电压表硬件设计 (7)2.1 单片机主电路设计 (7)2.1.1 复位电路 (7)2.1.2 晶振电路 (7)2.2 测量、转换电路设计 (8)2.3 按键电路设计 (9)2.4 显示电路设计 (10)2.4.1 LED数码管构成 (10)2.4.2 显示方式 (11)3 软件设计 (14)3.1 主程序设计 (14)3.1.1 工作流程 (14)3.1.2 存储空间定义安排 (15)3.2 模块程序设计 (15)3.2.1 A/D转换测量程序 (15)3.2.2 显示程序 (16)4 系统调试与分析 (18)4.1 调试内容及问题解决 (18)4.2 系统进一步改进方案 (18)附录1:硬件原理图 (20)附录2:程序清单 (21)参考文献 (24)1 方法论证1.1 系统的设计任务设计单片机主电路、数据采集接口电路、LED显示电路、拨码控制电路,能够实现对8路电压值进行测量,能够显示当前测量通道号及电压值,电压精度小数点后1位,可以通过键盘选择循环显示8路的检测电压值和指定通道的检测电压值。
1.2 设计方案将数据采集接口电路输入电压传入ADC0809数模转换元件,经转换后通过D0至D7与单片机P0口连接,把转换完的模拟信号以数字信号的信号的形式传给单片机,信号经过单片机处理从LED数码显示管显示。
【毕业设计】基于ADC0809液晶显示的数字电压表设计

基于ADC0809液晶显示的数字电压表设计目录摘要 (I)前言............................................................... I I 1主要元器件的介绍和本系统的选择 (1)1.1常用单片机的特点比较及本设计单片机的选择 (1)1.5 LCD1602使用说明 (4)1.6 常用的A/D芯片简介 (7)1.7 ADC0809引脚结构功能说明 (7)2 总体设计及硬件电路模块功能简介 (8)2.1 技术要求: (8)2.2 设计方案: (8)2.3 系统硬件电路的设计 (8)2.4 单片机系统 (9)2.5 数模转换系统 (9)2.6 时钟电路 (9)2.7 复位电路 (9)2..8 显示电路设计 (9)3电压表系统电路的制做 (10)3.1 绘制电路板 (10)3.2 铜板的转印、腐蚀、钻孔、焊接 (10)3.3 焊接好后的电压表系统 (11)3.4 动手制作心得 (12)4 系统的调试 (13)4.1 硬件调试 (13)4.2 软件件调试 (13)4.3 软硬联调 (14)5 数据结果分析 (14)5.1 系统调试和校准 (14)5.2 测试数据 (14)总结 (15)致谢 (16)参考文献 (17)附件一(系统电路原理图) (18)附件二(电压表系统程序) (19)基于ADC0809液晶显示的数字电压表设计谭小品摘要单片机是一种集成电路芯片,采用超大规模技术把具有数据处理能力(的微处理器(CPU)。
随着单片机技术的飞速发展,各种单片机蜂拥而至,单片机技术已成为一个国家现代化科技水平的重要标志。
单片机可单独地完成现代工业控制所要求的智能化控制功能,这是单片机最大的特征。
单片机控制系统能够取代以前利用复杂电子线路或数字电路构成的控制系统,可以软件控制来实现,并能够实现智能化。
现在单片机控制范畴无所不在,例如通信产品、家用电器、智能仪器仪表、过程控制和专用控制装置等等,单片机的应用领域越来越广泛。
课程设计---基于ADC0809的数字电压表设计

课程设计---基于ADC0809的数字电压表设计课程设计报告课题名称:基于ADC0809的数字电压表设计姓名: 黄光凤班级: 测量10301班学号: 10015339院系: 电子信息工程学院指导老师: 李军、李琼、胡广夏、阮燕、杨少春老师日期: 2012年5月31日基于ADC0809的数字电压表设计摘要本电路以ADC0809和AT89S51为核心,该系统有四个模块:数据采集模块、控制模块、显示模块、A/D转换模块,设计中采用ADC0809进行摸数转换,利用MCS-51单片机进行数据的处理,显示模块采用LCD1602液晶显示器显示,采用独立式按键选择单路显示或者8路轮流显示。
能够测量0,5V之间的直流电压值。
读数据准确,测量方便。
误差范围在-0.02~+0.02之间最小分辨率位0.019。
硬件设计应用电子设计自动化工具,软件设计采用模块化编程方法。
关键词:简易数字电压表; AT89S51;ADC0809;LCD1602;数据处理。
目录第1章系统方案的选择与论证 (1)1.1 设计任务及要求 ...................................................1 1.1.1 任务 (1)1.2 简易数字电压表基本方案 (1)1.2.1 模块方案选择与论证 (1)1.2.2 单片机方案选择和论证 (1)1.2.3 A/D模数转换方案的选取 (1)1.2.4 显示方案 ............................................................3 1.2.5 输入方案 (3)1.2.6 电源提供方案 .....................................................3 1.2.7 系统组成 ............................................................4 第2章系统硬件设计与实现 . (5)2.1 简易数字电压表基本组成部分 (5)2.2.1 电源电路 .............................................................5 2.2.2 复位电路 . (5)2.2.3 时钟电路 .............................................................6 2.2.4 按键控制 . (6)2.2.5LCD1602 (8)2.2 电路原理图 ............................................................10 第3章软件的设计 ......................................................11 3.1 程序流程图 (11)3.1.1主总流程图 ..........................................................11 3.1.2 主要子程序程序流程图 .. (12)第4章仿真及调试 ........................................................18 4(1KEILC51简介 (18)4.2PROTEUS ISIS简介 (18)4.3测试结果分析 ..........................................................21 第5章总结 (22)致谢 ..................................................................... ..........23 参考文献 ..................................................................... ...24 附录 ..................................................................... ........25 附录1 实物图 ............................................................25 附录2 元件清单 (26)附录3 主要程序 (27)第1章系统方案的选择与论证1.1 设计任务及要求, 查阅相关的资料~了解电压表的的原理与应用,研究一个比较合理的设计方案~并对其进行理论分析及方案论证。
课程设计---基于ADC0809的数字电压表设计

基于ADC0809的数字电压表设计摘要本电路以ADC0809和AT89S51为核心,该系统有四个模块:数据采集模块、控制模块、显示模块、A/D转换模块,设计中采用ADC0809进行摸数转换,利用MCS-51单片机进行数据的处理,显示模块采用LCD1602液晶显示器显示,采用独立式按键选择单路显示或者8路轮流显示。
能够测量0-5V之间的直流电压值。
读数据准确,测量方便。
误差范围在-0.02~+0.02之间最小分辨率位0.019。
硬件设计应用电子设计自动化工具,软件设计采用模块化编程方法。
关键词:简易数字电压表;AT89S51;ADC0809;LCD1602; 数据处理。
目录第1章系统方案的选择与论证 (1)1.1 设计任务及要求 (1)1.1.1 任务 (1)1.2 简易数字电压表基本方案 (1)1.2.1 模块方案选择与论证 (1)1.2.2 单片机方案选择和论证 (1)1.2.3 A/D模数转换方案的选取 (1)1.2.4 显示方案 (3)1.2.5 输入方案 (3)1.2.6 电源提供方案 (3)1.2.7 系统组成 (4)第2章系统硬件设计与实现 (5)2.1 简易数字电压表基本组成部分 (5)2.2.1 电源电路 (5)2.2.2 复位电路 (5)2.2.3 时钟电路 (6)2.2.4 按键控制 (6)2.2.5 LCD1602 (8)2.2 电路原理图 (10)第3章软件的设计 (11)3.1 程序流程图 (11)3.1.1主总流程图 (11)3.1.2 主要子程序程序流程图 (12)第4章仿真及调试 (18)4.1KEIL C51简介 (18)4.2PROTEUS ISIS简介 (18)4.3测试结果分析 (21)第5章总结 (22)致谢 (23)参考文献 (24)附录 (25)附录1 实物图 (25)附录2 元件清单 (26)附录3 主要程序 (27)第1章系统方案的选择与论证1.1 设计任务及要求●查阅相关的资料,了解电压表的的原理与应用;研究一个比较合理的设计方案,并对其进行理论分析及方案论证。
基于AT89C51单片机的数字电压表设计

AT89C51芯片得各引脚功能为:
P0口:这组引脚共有8条,P0、0为最低位.这8个引脚有两种不同得功能,分别适用于不同得情况,第一种情况就是89C51不带外存储器,P0口可以为通用I/O口使用,P0、0-P0、7用于传送CPU得输入/输出数据,这时输出数据可以得到锁存,不需要外接专用锁存器,输入数据可以得到缓冲,增加了数据输入得可靠性;第二种情况就是89C51带片外存储器,P0、0—P0、7在CPU访问片外存储器时先传送片外存储器得低8位地址,然后传送CPU对片外存储器得读/写数据。P0口为开漏输出,在作为通用I/O使用时,需要在外部用电阻上拉。
ADDA,ADDB,ADDC,其对应关系如表3-2所示:
表3-2 ADC0808通道选择表
地址码
对应得输入通道
C
B
A
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
IN0
IN1
IN2
IN3
IN4
IN5
IN6
IN7
START:START为“启动脉冲”输入法,该线上正脉冲由CPU送来,宽度应大于100ns,上升沿清零SAR,下降沿启动ADC工作。
EA:片外存储器访问选择线,可以控制89C51使用片内ROM或使用片外ROM,
若EA=1,则允许使用片内ROM,若EA=0,则只使用片外ROM。
PSEN:片外ROM得选通线,在访问片外ROM时,89C51自动在PSEN线上产生一个负脉冲,作为片外ROM芯片得读选通信号。
RST:复位线,可以使89C51处于复位(即初始化)工作状态.通常89C51复位有自动上电复位与人工按键复位两种.
基于单片机的简易数字电压表设计-精品
第1章课程设计的目的和意义1.1 课程设计的目的1.运用单片机的基础知识,依据课程设计内容,能够完成从硬件电路图设计,到PCB制版,再到软件编程以及系统调试实现系统功能,完成课程设计,加深对单片机基础知识的理解,并灵活运用,将各门知识综合应用。
2.能够上网查询器件资料,培养对新知识,新技术的独立的学习能力和应用能力。
3.能够独立完成一个小的系统设计,从硬件设计到软件设计,增强分析问题、解决问题的能力,为今后的毕业设计及科研工作奠定良好的基础。
1.2课程设计的意义单片机是随着超大规模集成电路技术的发展而诞生的,由于它具有体积小、功能强、性价比高等特点,所以广泛应用于电子仪表、家用电器、节能装置、军事装置、机器人、工业控制等诸多领域,使产品小型化、智能化,既提高了产品的功能和质量,又降低了成本,简化了设计。
本课题主要实现利用单片机对电压表进行控制。
第2章系统方案设计及确定2.1 系统方案的提出根据简易数字电压表设计的需要,为单片机和A/D转换器提供以下设计方案。
2.1.1 单片机方案方案一:AT89S51AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含8k Bytes ISP的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元。
AT89S51具有如下特点:40个引脚,8k Bytes Flash片内程序存储器,128 bytes 的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。
方案二:AT89C51AT89C51是一个低功耗,高性能CMOS 8位单片机,片内含4k字节Flash可擦写存储器(PEROM)。
基于AT89C51的简易数字电压表设计.
基于AT89C51的简易数字电压表设计摘要:本文介绍了一种基于单片机的简易数字电压表的设计。
该设计主要由三个模块组成:A/D转换模块,数据处理模块及显示模块。
A/D转换主要由芯片ADC0808来完成,它负责把采集到的模拟量转换为相应的数字量在传送到数据处理模块。
数据处理则由芯片AT89C51来完成,其负责把ADC0808传送来的数字量经过一定的数据处理,产生相应的显示码送到显示模块进行显示;此外,它还控制着ADC0808芯片工作。
该系统的数字电压表电路简单,所用的元件较少,成本低,且测量精度和可靠性较高。
此数字电压表可以测量0-5V的1路模拟直流输入电压值,并通过一个四位一体的7段数码管显示出来。
关键词:单片机;数字电压表;A/D转换The Design of Simple Digital Voltmeter Based on Single-chip Microcontroller Abstract:This paper which introduces a kind of simple digital voltmeter is based on single-chip microcontroller design. The circuit of the voltage meter is mainly consisted of three mould pieces: A/D converting mould piece, A/D converting is mainly completed by the ADC0808, it converts the collected analog data into the digital data and transmits the outcome to the manifestation controlling mould piece. Data processing is mainly completed by the AT89C51 chip, it processes the data produced by the ADC0808 chip and generates the right manifestation codes, also transmits the codes to the manifestation controlling mould piece. Also, the A T89C51 chip controls the ADC0808 chip to work.The voltmeter features in simple electrical circuit, lower use of elements, low cost, moreover, its measuring precision and reliability. The voltmeter is capable of measuring voltage inputs from 1 route ranging from 0 to 5 volt, and displaying the measurements though a digital code tube of 7 pieces of LED. Key Words:Single-Chip Microcontroller; Digital Voltmeter; A/D Converter目录1 引言 (1)2设计原理及要求 (1)2.1数字电压表的实现原理 (1)2.2数字电压表的设计要求 (1)3系统硬件设计 (2)3.1设计思路 (2)3.2设计过程 (3)3.3 AT89C51的功能介绍 (3)3.3.1简单概述 (3)3.3.2主要功能特性 (4)3.3.3 AT89C51的引脚介绍 (4)3.4 ADC0808的引脚及功能介绍 (4)3.4.1芯片概述 (5)3.4.2 引脚简介 (5)3.4.3 ADC0808的转换原理 (5)3.5 74LS373芯片的引脚及功能 (6)3.5.1芯片概述 (6)3.5.2引脚介绍 (6)3.6 LED数码管的控制显示 (7)3.6.1 LED数码管的模型 (7)3.6.2 LED数码管的接口简介 (8)3.7硬件电路图 (8)4系统软件程序的设计 (9)4.1 主程序 (9)4.2 A/D转换子程序 (10)4.3 中断显示程序 (14)5电压表的调试及性能分析 (15)5.1 调试与测试 (15)5.2分析性能 (17)参考文献 (18)致谢 (19)1 引言随着微电子技术的不断发展,微处理器芯片的集成程度越来越高,单片机已可以在一块芯片上同时集成CPU、存储器、定时器/计数电路,这就很容易将计算机技术与测量控制技术结合,组成智能化测量控制系统。
基于.51单片机的数字电压表设计说明书
扬州市职业大学毕业设计(论文)设计(论文)题目:基于51单片机的数字电压表设计系别:电子系1专业:通信技术1班级:07通信3班1姓名:1学号:0706020305 1指导教师:李金奎完成时间:10年5月基于51单片机的数字电压表设计摘要:数字电压表简称DVM,它是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。
数字电压表自从一九五二年问世以来,随着电子技术的飞跃发展,特别是目前,作为测量仪表、模拟指示仪表的数字化以及自动测量的系统,而得到了很大的发展。
数字电压表是从电位差计的自动化这种想法研制出来的,因此即便是最初的数字电压表,其精度也要比模拟式仪表高,而其成本比电位差计也高。
以后,DVM的发展就着眼在高精度和低成本两个方面。
单片机可单独地完成现代工业控制所要求的智能化控制功能,这是单片机最大的特征。
本电路主要采用AT89S51芯片和ADC0809芯片来完成一个简易的数字电压表,能够对输入的0~5 V的模拟直流电压进行测量,并通过一个4位一体的7段LED数码管进行显示。
该电压表的测量电路主要由三个模块组成:A/D转换模块、数据处理模块及显示控制模块。
A/D转换主要由芯片ADC0809来完成,它负责把采集到的模拟量转换为相应的数字量再传送到数据处理模块。
数据处理则由芯片AT89S51来完成,其负责把ADC0809传送来的数字量经一定的数据处理,产生相应的显示码送到显示模块进行显示;另外它还控制着ADC0809芯片的工作。
关键词:单片机数字电压表AT89S51 A/D转换ADC0809目录第1章产品要求及方案选择 (4)1.1设计的目的 (4)1.2产品的要求 (4)1.3各模块方案选择及论证 (4)第2章主要原件介绍 (6)2.1模数转换芯片ADC0809 (6)2.2控制芯片AT89S51 (7)2.3锁存芯片SN74LS373 (9)2.4 SEG-MPXE数码管 (10)第3章电压表原理系统硬件电路设计与实现 (11)3.1电压表的原理 (11)3.2 电源部分 (11)3.3 A/D转换电路 (11)3.4 单片机最小系统电路部分 (13)3.4.1时钟电路部分 (13)3.4.2复位电路部分 (14)3.5 显示电路部分 (14)3.7量程标定电路 (15)第4章系统软件设计 (17)4.1 主程序设计 (17)4.2 各子程序设计 (17)4.3源程序代码 (20)第5章调试 (24)参考文献 (24)附录 (25)附录A 原理图 (25)附录B 总结与感谢 (27)附录C 元件清单 (29)第1章产品要求及方案选择1.1 设计的目的通过制作简易数字电压表,加深对所学专业知识的认识,提高分析、解决工程实际问题的能力,提高对单片机的应用能力,提高收集文献、资料的能力,从而达到综合运用所学的专业知识进行电子产品设计、制作与调试的能力。
单片机的简易数字电压表的方案设计课程方案设计
该系统的数字电压表电路简单,所用的元件较少,成本低,且测量精度和可靠性较高。
此数字电压表可以测量0-5V的1路模拟直流输入电压值,并通过一个四位一体的7段数码管显示出来。
关键词单片机;数字电压表;A/D转换;AT89C51;ADC0809Design of Simple Digital Voltmeter Based on Single-chip MicrocontrollerTian MingmingAbstract This paper which introduces a kind of simple digital voltmeter is based on single-chip microcontroller design. The circuit of the voltage meter is mainly consisted of three mould pieces: A/D converting mould piece, A/D converting is mainly completed by the ADC0808, it converts the collected analog data into the digital data and transmits the outcome to the manifestation controlling mould piece. Data processing is mainly completed by the AT89C51 chip, it processes the data produced by the ADC0808 chip and generates the right manifestation codes, also transmits the codes to the manifestation controlling mould piece. Also, the AT89C51 chip controls the ADC0808 chip to work.The voltmeter features in simple electrical circuit, lower use of elements, low cost, moreover, its measuring precision and reliability. The voltmeter is capable of measuring voltage inputs from 1 route ranging from 0 to 5 volt, and displaying the measurements though a digital code tube of 7 pieces of LED.Keywords Single-chip microcontroller。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
桂林电子科技大学微机综合设计报告 - 1 - 桂 林 电 子 科 技 大 学 微 机 综 合 设 计 设 计 报 告 指导老师:
学 生: 黎金辉 学 号: ********** 桂林电子科技大学微机综合设计报告
- 2 - 桂林电子科技大学机电工程学院 《微机综合设计》设计报告 一、设计题目 二、设计内容与要求 三、设计目的意义 四、系统硬件电路图 五、程序流程图与源程序 六、系统功能分析与说明 七、设计体会 八、参考文献 桂林电子科技大学微机综合设计报告
- 3 - 基于AT89S51的简易数字电压表的设计 摘要:本课题是利用单片机设计一个数字电压表,能够测量0-5V之间的直流电压值,四位数码管显示,使用的元器件数目较少。外界电压模拟量输入到A/D转换部分的输入端,通过ADC0809转换变为数字信号,输送给单片机。然后由单片机给数码管数字信号,控制其发光,从而显示数字。此外,本文还讨论了设计过程中的所用的软件硬件环境,调试所出现的问题等。 关键词:单片机; AT89S51;数字电压表; ADC0809,四位数码管
Abstract: This topic is the use of microcontroller design a digital voltmeter, capable of measuring between 0-5V DC voltage, four digital display, the use of fewer components. External analog voltage input to the A / D conversion part of the input of the conversion into a digital signal through the ADC0809, transmission to the microcontroller. And then by the microcontroller to the digital control digital signal, control the light, so the displayed number. In addition, the article also discusses the design process of software used in the hardware environment, debugging the problems and so on. Key words: SCM; AT89S51; digital voltmeter; ADC0809, four digital 桂林电子科技大学微机综合设计报告
- 4 - 一、设计题目 基于AT89S51的简易数字电压表的设计。 二、设计内容与要求 用AT89S51单片机和ADC0809组成一个数字电压表,要求能够测量0~5V的直流电压值,并用四位数码管显示,并要求所用元器件最少。
三、设计目的意义 1.通过亲身的设计应用电路,将所用的理论知识应用到实践中,增强实践动手能力,进而促进理论知识的强化。 2.通过数字电压表的设计系统掌握51单片机的应用。掌握A/D转换的原理及软件编程及硬件设计的方法,掌握根据课题的要求,提出选择设计方案,查找所需元器,设计并搭建硬件电路,编程写入EPROM并进行调试等。 桂林电子科技大学微机综合设计报告
- 5 - 四、系统硬件电路图 4.1 系统原理框图 选择AT89S51作为单片机芯片,选用四位8段共阴极LED数码管实现电压显示,利用ADC0809作为数模转换芯片。将数据采集接口电路输入电压传入ADC0809数模转换元件,经转换后通过D0至D7与单片机P0口连接,把转换完的模拟信号以数字信号的信号的形式传给单片机,信号经过单片机处理从LED数码显示管显示。P2口接数码管位选,P1接数码管,实现数据的动态显示,如图4.1所示。
4.2 AT89S51的结构 在本次课题设计中我们选择了AT89S51芯片。AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。 4.2.1 AT89S51内部结构概述 • 三级程序存储器保密锁定 • 128*8位内部RAM • 32条可编程I/O线 • 两个16位定时器/计数器 • 6个中断源
AT89S51 P1 P0 P3 P2 AD0809 D0~D7 IN0~IN7
VREF+ VREF- CLK OE ST、ALE
四位数码管 位选 段选
控制线 数据
待测电压
图4.1 系统原理框图 桂林电子科技大学微机综合设计报告
- 6 - • 可编程串行通道 • 低功耗的闲置和掉电模式 • 片内振荡器和时钟电路
4.2.2 CPU结构 CPU 是单片机的核心部件。它由运算器和控制器等部件组成。 1. 运算器 运算器以完成二进制的算术/逻辑运算部件ALU为核心。它可以对半字节(4)、单字节等数据进行操作。例如,能完成加、减、乘、除、加1、减1、BCD码十进制调整、比较等算术运算,完成与、或、异或、求反、循环等逻操作,操作结果的状态信息送至状态寄存器。 运算器还包含有一个布尔处理器,用以处理位操作。它以进位标志位C为累加器,可执行置位、复位、取反、位判断转移,可在进位标志位与其他可位寻址的位之间进行位数据传诵等操作,还可以完成进位标志位与其他可位寻址的位之间进行逻辑与、或操作。 2.程序计数器PC PC是一个16位的计数器,用于存放一条要执行的指令地址,寻址范围为64kB,PC有自动加1功能,即完成了一条指令的执行后,其内容自动加1。 3.指令寄存器 指令寄存器用于存放指令代码。CPU执行指令时,由程序存储器中读取的指令代码送如指令寄存器,经指令译码器译码后由定时有控制电路发出相应的控制信号,完成指令功能。 4.2.3 存储器和特殊功能寄存器
图4.2 单片机(AT89S51)引脚及外观 桂林电子科技大学微机综合设计报告 - 7 - 1. 存储器(Memory)是计算机系统中的记忆设备,用来存放程序和数据。计算机中的全部信息,包括输入的原始数据、计算机程序、中间运行结果和最终运行结果都保存在存储器中。它根据控制器指定的位置存入和取出信息。 2.特殊功能寄存器 特殊功能寄存器(SFR)的地址范围为80H~FFH。在MCS-51中,除程序计数器PC和四个工作寄存器区外,其余21个特殊功能寄存器都在这SFR块中。其中5个是双字节寄存器,它们共占用了26个字节。各特殊功能寄存器的符号和地址见附表2。其中带*号的可位寻址。特殊功能寄存器反映了8051的状态,实际上是8051的状态字及控制字寄存器。用于CPU PSW便是典型一例。这些特殊功能寄存器大体上分为两类,一类与芯片的引脚有关,另一类作片内功能的控制用。与芯片引脚有关的特殊功能寄存器是P0~P3,它们实际上是4个八位锁存器(每个I/O口一个),每个锁存器附加有相应的输出驱动器和输入缓冲器就构成了一个并行口。MCS-51共有P0~P3四个这样的并行口,可提供32根I/O线,每根线都是双向的,并且大都有第二功能。其余用于芯片控制的寄存器中,累加器A、标志寄存器PSW、数据指针DPTR等的功能前已提及。 4.2.4 P0-P3口结构 P0口功能 :P0口具有两种功能:第一,P0口可以作为通用I/O接口使用,P0.7—P0.0用于传送CPU的输入/输出数据。输出数据时可以得到锁存,不需外接专用锁存器,输入数据可以得到缓冲。第二,P0.7—P0.0在CPU访问片外存储器时用于传送片外存储器de低8位地址,然后传送CPU对片外存储器的读写 P1口 功能 :P1口的功能和P0口de第一功能相同,仅用于传递I/O输入/输出数据。 P2口的功能 :P2口的第一功能和上述两组引脚的第一功能相同,即它可以作为通用I/O使用。它的第二功能和P0口引脚的第二功能相配合,作为地址总线用于输出片外存储器的高8位地址。 P3口功能 :P3口有两个功能:第一功能与其余三个端口的第一功能相同;第二功能作控制用,每个引脚都不同。
表4.1 P3口第二功能 引脚 名称 功能 P3.0 RXD 串行数据接收口 P3.1 TXD 串行数据发送口 P3.2 INT0 外中断0输入 P3.3 INT1 外中断1输入 P3.4 T0 计数器0计数输入 桂林电子科技大学微机综合设计报告 - 8 - P3.5 T1 计数器1计数输入 P3.6 WR 外部RAM写选通信号 P3.7 RD 外部RAM读选通信号 4.2.5 时钟电路和复位电路 1.时钟电路 单片机的时钟一般需要多相时钟,所以时钟电路由振荡器和分频器组成。 MCS-51内部有一个用于构成振荡器的可控高增益反向放大器。两个引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。在片外跨接一晶振和两个匹配电容C1、C2如图2.5所示。就构成一个自激振荡器。振荡频率根据实际要求的工作速度,从几百千赫至24MHz可适当选取某一频率。匹配电容C1、C2要根据石英晶体振荡器的要求选取。 当晶振频率为12MHz时,C1C2一般选30pF左右。图2.5中PD是电源控制寄存器PCON.1的掉电方式位,正常工作方式PD=0。当PD=1时单片机进入掉电工作方式,是一种节能工作方式。上述电路是靠MCS-51单片机内部电路产生振荡的。也可以由外部振荡器或时钟直接驱动MCS-51。
2.复位电路 复位是单片机的初始化操作。其功能主要是将程序计数器(PC)初始化为0000H,使单片机从0000H单元开始执行程序,并将特殊功能寄存器赋一些特定值。复位是使单片机退出低功耗工作方式而进入正常状态一种操作。复位是上电的第一个操作,然后程序从0000H开始执行。在运行中,外界干扰等因素可能会使单片机的程序陷入死循环状态或“跑飞”。要使其进入正常状态,唯一办法是将单片机复位,以重新启动。
图4.3 复位电路的内部及外部方式