基于单片机的简易数字电压表的设计Word文档格式.docx
- 文档编号:18721259
- 上传时间:2022-12-31
- 格式:DOCX
- 页数:19
- 大小:1.78MB
基于单片机的简易数字电压表的设计Word文档格式.docx
《基于单片机的简易数字电压表的设计Word文档格式.docx》由会员分享,可在线阅读,更多相关《基于单片机的简易数字电压表的设计Word文档格式.docx(19页珍藏版)》请在冰豆网上搜索。
5.3软件调试问题及解决(15)
第六章设计小结(16)
参考文献(17)
附录一:
元器件清单(18)
附录二:
原理图(19)
附录三:
程序清单(20)
附录四:
实物图(23)
任务书(24)
第一章设计内容和要求
1.1设计意义
通过本课题的设计,掌握电子设计的一般步骤和方法,锻炼分析问题解决问题的能力,学会如何查找所需资料,同时复习以前所学知识并加深记忆,为毕业设计打好基础,也为以后工作作准备,通过对选题的分析设计,学习数字电压表的工作原理,组成和特性,掌握数字电压表的校准方法和使用方法。
1.2设计目的
1.运用所学单片机及数字电子技术等知识编写程序,强化知识理解程度。
2.准确透彻分析数字电子表的组成及原理,理论与实践相结合,进一步加深对所学知识的理解。
3.通过编程,加深对编程语言的认识。
4.在调试过程中发现问题,解决问题,熟练掌握编程语言及电路知识。
1.3设计的任务要求和实现功能
1、完成简易数字电压表的设计和调试。
2、运用单片机和数码管及其他辅助芯片完成简易数字电压表的设计。
3、准确调试,反复试验,使得所设计的数字电压表能更加精确地测量
4、测量电流范围0~2V
5、通过改变滑动变阻器的电阻值来改变电压的大小
第二章系统总体结构
2.1系统的总体结构框图
整个电路系统由单片机,显示模块,驱动模块,采样模块,A/D转换模块等几个模块组成。
系统结构图如下图2-1所示:
图2-1系统结构图
2.2各框图要实现的功能及相互关系
电压信号采样电路由电阻和滑动变阻器组成,主要是将滑动变阻器上的电压作为采样电压输入到A/D模数转换器。
A/D转换就是将输入的模拟量转变为数字量再按数字量与模拟量成比例关系运算得到相应的模拟输入电压值,然后把模拟值通过数码管显示出来。
驱动电路就是将I/O口的电压通过三极管进行放大后用来驱动四位一体的数码管。
第三章硬件设计
3.1电源电路
本电路输入家用220V交流电,经过全桥整流,稳压后输出稳定的5v直流电。
这种设计方便实用,输出电压稳定,最大输出电流为1A,电路能带动一定的负载电路工作原理如图3-1所示,电路图如图3-2所示
图3-1电源电路原理框图
图3-2电源电路电路图
三端稳压器是一种集成电路元件,内部由一些三极管和电阻等构成,在分析电路时可简单的认为这是一个能自动调节电阻的元件,当负载电流大时三端稳压器内的电阻自动变小,而当负载电流变小时三端稳压器内的电阻又会自动变大,
本电路为实现输出直流5v电压,而LM7805输出电流最大可以达到1A,完全满足设计需要,
A/D数模转换器中。
使用
1.5K的电阻和1K的滑动变阻器进行分压,就0~2V的输入电压。
图3-3采样电路
3.3AT89C52单片机
温馨推荐
您可前往XX文库小程序
享受更优阅读体验
不去了
立即体验
单片机系统电路采用如下图3-4所示的AT89C52芯片,40引脚的双列直插封装方式,允许RAM、定时器/计数器、串口、中断继续工作;
作为输出口,每位能驱动8个TTL逻辑电平,能进行定时器/计数器、串口、中断等系列实验。
现在我们对这些引脚的功能加以说明:
a)电源引脚:
VCC、GND
b)时钟引脚:
XTAL1、XTAL2
c)复位引脚:
RST
d)外部程序存储器访问允许控制端:
EA
e)低八位地址锁存允许信号:
ALE
f)片外程序存储器的读选通信号:
PSEN
g)32个可编程口:
P0、P1、P2、P3
图3-4AT89C52
3.4时钟模块
晶振时钟为11.0592MHz。
单片机通过内部振荡方式和外部振荡方式获得所
需时钟信号。
图3-5振荡方式
在引脚XTAL1和XTAL2外接晶体振荡器(简称晶振)或陶瓷谐振器,就构成了自激振荡器,并产生振荡时钟脉冲。
内部振荡方式如图3-4所示。
图中,电容器C1,C2起稳定振荡频率,快速起振的作用。
电容值一般为5~30pF。
内部振荡方式所得的时钟信号比较稳定,实用电路中使用较多。
外部振荡方式是把已有的时钟信号引入单片机内。
这种方式事宜用来使单片机的时钟与外部信号保持一致。
3.5ADC0809模数转换芯片
ADC0809的逻辑结构:
ADC0809是8位逐次逼近型A/D转换器。
它由一个8路模拟开关、一个地址锁存译码
器、一个A/D转换器和一个三态输出锁存器
组成。
多路开关可选通8个模拟通道,允许
8路模拟量分时输入,共用A/D转换器进行
转换。
三态输出锁器用于锁存A/D转换完的
数字量,当OE端为高电平时,才可以从三
态输出锁存器取走转换完的数据。
结构如图
3-6所示
图3-6ADC0809
AD0809的工作原理:
IN0-IN7:
8条模拟量输入通道
ADC0809对输入模拟量要求:
信号单极性,电压范围是0-5V,若信号太小,必须进行放大;
输入的模拟量在转换过程中应该保持不变,如若模拟量变化太快,
则需在输入前增加采样保持电路。
地址输入和控制线:
4条ALE为地址锁存允许输入线,高电平有效。
当ALE线为高电平时,地址锁存与译码器将A,B,C三条地址线的地址信号进行锁存,经译码后被选中的通道的模拟量进转换器进行转换。
A,B和C为地址输入线,用于选通IN0-IN7上的一路模拟量输入。
通道选择表如下表所示。
图3-7驱动电路
3.7显示模块
显示器普遍地用于直观地显示数字系统的运行状态和工作数据,按照材料及产品工艺,单片机应用系统中常用的显示器有:
发光二极管LED显示器、液晶LCD显示器、CRT显示器等。
LED显示器是现在最常用的显示器之一,如下图3-8所示。
图3-8LED显示器的符号图
发光二极管(LED)由特殊的半导体材料砷化镓、磷砷化镓等制成,可以单独使用,也可以组装成分段式或点阵式LED显示器件(半导体显示器)。
分段式
显示器(LED数码管)由7条线段围成8字型,每一段包含一个发光二极管。
外加正向电压时二极管导通,发出清晰的光。
只要按规律控制各发光段亮、灭,就可以显示各种字形或符号。
LED数码管有共阳、共阴之分。
图3-9是共阳式、共阴式LED数码管的原理图和符号。
图3-9共阳式、共阴式LED数码管的原理图和数码管的符号图
显示电路显示模块需要实时显示当前的电压,因此我们使用四位一体的数码管来显示电压,第一位用来显示整数位,后三位用来显示小数位。
本设计中采用四位一体的共阳数码管。
数码管使用条件:
a、段及小数点上加限流电阻
b、使用电压:
段:
根据发光颜色决定;
小数点:
根据发光颜色决定
c、使用电流:
静态:
总电流80mA(每段10mA);
动态:
平均电流4-5mA峰值电流100mA
数码管使用注意事项说明:
(1)数码管表面不要用手触摸,不要用手去弄引角;
(2)焊接温度:
260度;
焊接时间:
5S
(3)表面有保护膜的产品,可以在使用前撕下来。
3.8上拉电阻部分
本设计中采用P0口作为输出来控制数码管的输入,而P0口内部没有上拉电
阻,我们需要外接上拉电阻。
我们采用RESPACK-8做上拉电阻,RESPACK-8是由一系列相同阻值的电阻排列在一起,一端联接成公共端,其他端各自引出,或串接在一起,各接点分别引出的排电阻,排阻也叫网络电阻。
RESPACK-8的结构以及内部机构分别如图3-10a和图3-10b所示。
图3-10aRESPACK-8引脚结构图3-10bRESPACK-8内部结构
第四章软件设计
系统的软件设计也是工具系统功能的设计。
单片机软件的设计主要包括执行软件(完成各种实质性功能)的设计和监控软件的设计。
单片机的软件设计通常要考虑以下几个方面的问题:
(1)根据软件功能要求,将系统软件划分为若干个相对独立的部分,设计出合理的总体结构,使软件开发清晰、简洁和流程合理;
(2)培养良好的编程风格,如考虑结构化程序设计、实行模块化、子程序化。
既便于调试、链接,又便于移植和修改;
(3)建立正确的数学模型,通过仿真提高系统的性能,并选取合适的参数;
(4)绘制程序流程图;
(5)合理分配系统资源;
(6)为程序加入注释,提高可读性,实施软件工程;
(7)注意软件的抗干扰设计,提高系统的可靠性。
4.1系统软件流程图设计
图4-1主程序流程图
4.2主程序
#include<
REG52.h>
stdio.h>
intrins.h>
sbitOE=P2^7;
sbitEOC=P2^5;
sbitCLOCK=P2^4;
sbitST=P2^6;
sbitLED1=P2^0;
sbitLED2=P2^1;
sbitLED3=P2^2;
sbitLED4=P2^3;
unsignedcharcode
tab[]={0xc0,0xf9,0xa4,0xb0,
0x99,0x92,0x82,0xf8,
0x80,0x90,0x88,0x83,
0xc6,0xa1,0x86,0x8e};
unsignedchardat[]={0,0,0,0};
unsignedcharadc;
unsignedinttmp;
4.3转换和显示程序
while
(1)
{
ST=0;
ST=1;
while(EOC){}
while(!
EOC){}
OE=1;
adc=P1;
tmp=adc*196;
dat[3]=tmp/10000;
dat[2]=tmp/1000%10;
dat[1]=tmp/100%10;
dat[0]=tmp/10%10;
LED1=1;
P0=tab[dat[3]]+0x80;
Delay();
LED1=0;
LED2=1;
P0=tab[dat[2]];
LED2=0;
LED3=1;
P0=tab[dat[1]];
LED3=0;
LED4=1;
P0=tab[dat[0]];
LED4=0;
}
第五章系统调试
单片机应用系统的调试包括硬件和软件两部分,但是他们并不能完全分开。
一般的方法是排除明显的硬件故障,再进行综合调试,排除可能的软/硬件故障。
5.1硬盘调试
拿到电路板后,首先要检查加工质量,并确保没有任何方面的错误,如短路和断路,尤其要避免电源短路;
元器件在安装前要逐一检查,用万用表测其数值,看是否与所用相同;
完成焊接后,应先空载上电(芯片座上不插芯片),并检查各引脚的电位是否正确。
若一切正常,方可在断电的情况下将芯片插入,再次检查各引脚的电位及其逻辑关系。
将万用表的探针放到单片机接电源的引脚上检测一下,看是否符合要求。
5.2调试过程中的故障现象及误差分析
1、显示数值与被测数值不一致
2、被测电压回路接入测量点会产生一定的误差,导致测量电压小于实际值。
3、在进行数模转换的过程中,采集的模拟数据转换为数字量时并不是一一对应关系,部分数据可能丢失,从而产生一定的系统误差。
5.3软件调试问题及解决
软件程序的调试一般可以将重点放在分模块调试上,统调是最后一环。
软件调试可以采取离线调试和在线调试两种方式。
前者不需要硬件仿真器,可借助于软件仿真器即可;
后者一般需要仿真系统的支持。
本次课题,Keil软件来调试程序,通过各个模块程序的单步或跟踪调试,使程序逐渐趋于正确,最后统调程序。
仿真部分采用protusprofessional软件,此软件功能强大且操作较为简单,可以很容易的实现各种系统的仿真。
首先打开protusprofessional软件,在元件库中找到要选用的所有元件,然后进行原理图的绘制;
绘制好后再选择wave6000已经编译好的*.hex文件,选择运行,观察显示结果,根据显示的结果和课题的要求再修改程序,再运行查,直到满足要求。
第六章设计小结
单片机在现实生活中有很大的实用价值,学好这门课程非常关键,可以让自己的知识储备更加丰富,而这次课程设计正好提供了一个很好的机会加深对单片机知识的掌握,通过对这次课程设计,我对proteus以及keil等软件的使用掌握的更加熟练,对c语言程序有了更深层次的理解。
通过这次对简易数字电压表的设计,让我了解了设计电路的程序,也让我了解了关于电压表的原理与设计理念,。
通过这次学习,让我对各种电路都有了大概的了解,所以说,坐而言不如立而行,对于这些电路还是应该自己动手实际操作才会有深刻理解。
除了学会了许多专业知识外,在遇到困难时,积极地去请教我的指导老师,我通过看现有的教材、去图书馆查阅资料、去网上搜索相关信息这些方式,不仅完成了我的课程设计,而且大大增强了我的自学能力和独立能力。
更重要的是,我拓展了思路,开阔了视野,活跃了思想。
这次课程设计不仅使我对相关专业知识有了更深的理解,而且还让我认识到了理论知识对工作实践的重大意义,学会理论联系实际。
课程设计要求我们完全依靠自己的能力去学习和设计,而不是像以往课程那样一切由教材和老师安排。
因此,它给了我更大的发挥空间。
让我发挥主观能动性独立的查阅资料、寻找数据、设计实验方案,并将理论知识应用到实践中去。
通过这次设计提高了我认识问题、分析问题、解决问题的能力。
总之,这次设计既是对我课程知识的考核,又是对我思考问题、解决问题能力的考核,更是对我人格品德的考验,设计让我受益匪浅
参考文献
[1]张齐.单片机原理与应用系统设计:
基于C51的Proteus仿真实验与解题指导
[M].北京:
电子工业出版社,2010.2
[2]康华光.模拟电子技术基础[M].高等教育出版社
[3]付晓光.单片机原理与实用技术[M].清华大学出版社
[4]纪纲.C程序设计实用教程[M].中国铁道出版社
[5]欧阳斌林.单片机原理及应用[M].中国水利水电出版社
[6]王幸之.AT89系列单片机原理与接口技术[M].北京航空航天大学出版社
[7]李军.51系列单片机高级实例开发指南[M].北京航空航天大学出版社
附录一元器件清单
附录二原理图
附录三程序清单
tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};
unsignedchardat[]={0,0,0,0};
unsignedcharadc;
voidDelay(void)
unsignedchari;
for(i=0;
i<
250;
i++);
voidmain(void)
EA=1;
TH0=0x80;
IE=0x82;
TR0=1;
voidtimer0int(void)interrupt1using1{
CLOCK=!
CLOCK;
附录四实物图
单片机课程设计任务书
二级学院:
电子信息与电气工程学院班级:
姓名:
学号:
指导教师:
职称:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 简易 数字 电压表 设计