水深测量系统Word文件下载.docx
- 文档编号:13612990
- 上传时间:2022-10-12
- 格式:DOCX
- 页数:8
- 大小:112.68KB
水深测量系统Word文件下载.docx
《水深测量系统Word文件下载.docx》由会员分享,可在线阅读,更多相关《水深测量系统Word文件下载.docx(8页珍藏版)》请在冰豆网上搜索。
.通过本次课程设计加深对单片机课程的全面认识和掌握,对单片机课程的应用进一步的了解;
.掌握定时器、外部中断的设置和编程原理;
.通过此次课程设计能够将单片机软硬件结合起来,对程序进行编辑,校验。
二、设计要求
1.压力传感器输出为4-20mA电流信号,通过转换电路把其转换为电压信号;
2.处理模拟信号并显示其实际水的深度数值。
三、设计器材
器件
个数
STC89C52
1
晶振(12M)
ADC0809
33PF电容
RESPACK-8
1KΩ电阻
9012型三极管
4
10KΩ电阻
开关
液位传感器
4位数码管
底座
四、设计方案及分析
.单片机最小系统电路
单片机最小系统电路如图1所示,由主控器STC89C52、时钟电路和复位电路三部分组成。
单片机STC89C52作为核心控制器控制着整个系统的工作,而时钟电路负责产生单片机工作所必需的时钟信号,复位电路使得单片机能够正常、有序、稳定地工作。
图1单片机最小系统
.时钟电路
STC89C52单片机芯片内部设有一个由反向放大器所构成的振荡器。
19脚(XTAL1)为振荡器反相放大器和内部时钟发生电路的输入端,18脚(XTAL2)为振荡器反相放大器的输出端。
在XTAL1和XTAL2引脚上外接定时元器件,内部振荡电路就会产生自激振荡。
本系统采用的定时元器件为石英晶体(晶振)和电容组成的并联谐振回路。
晶振频率为12MHz,电容大小为33pF,时钟电路如图所示。
图2时钟电路(晶振)
.复位电路
STC89C52的复位是由外部的复位电路来实现的,复位电路通常采用上电复位和按钮复位两种方式,本设计采用的是最按钮复位电路,其电路图如图所示。
图3复位电路
4.数码管显示电路
LED又称为数码管,它主要由8段发光二极管组成的不同组合,可以显示a~g为数字和字符显示段,h段为小数点显示,通过a~g为7个发光段的不同组合,可以显示0~9和A~F共16个数字和字母。
LED可以分为共阴极和共阳极两种结构。
共阳极结构即把8个发光二极管阳极连在一起。
这种装入数码管中显示字形的数据称字形码,又称段选码。
本设计用到的是LED显示器静态显示方式,其电路如图所示是发光二极管显示器(LED)的结构、工作原理及接口电路。
图4数码管电路
五、问题分析与解决方法
问题1数码管开始显示暗并且数字总是在跳动。
这个问题的结症严格意义上说没有得出答案。
当时数码管(共阳)位控,我们用的是9014号PNP型三极管,现象时显示结果暗淡并且跳动。
我们没有怀疑三极的问题而是把目标一致对准焊接电路,反复检查没有问题(检查方法:
该通的地方通,不该通的地方不通),即使这样也没有解决问题,最后根据数码管显示暗淡一个现象,就猜想通过字样各段的电流小。
试着调整三极管的放大倍数,将一个9014型三极管替换成9012型,结果成功了。
最后,我试着测试了一下9012和9014的方法倍数,结果显示9012的放大倍数β比9014的β大100左右。
问题2即使更换了三极管,数码管显示数字仍然在不停地闪动。
这个问题在硬件上已经改变了,相信硬件在显示方面不会出现问题,只能把目标哦对准软件的方面。
最初的主程序没有防止电压微小跳动而导致显示转换结果不稳定的,最懂显示结果微小跳动。
程序每走一遍,数码管就显示结果就刷新一遍。
那么我们就想,在电压输入电相同的情况下,那么记录上次的转换结果,如果本次转换结果与上次的相同,就不需要刷新显示数据,反之,则刷新。
这样的想法,促使我们使用了如下关键语,这样显示数组a[]不需要每次刷新,只是在数据变化的情况下刷新。
Temp1=P1;
确显示范围是0~255,但是一直显示的是85~165。
这个问题没有找到确定的答案。
最初怀疑软件,因为硬件电路在开始时已经仔细检出过,而且是不同的人独立检查的(这样利于发现问题,防止可能已犯误人把其他人引入定势思维),但是最终没有发现问题,只能把目光投向软件。
软件中AD0809工作需要整脉冲,上升沿是各个寄存器复位,下降沿AD0809开始工作。
我们给模拟正脉冲的程序加入了延时程序(st=0;
delayus();
st=1;
st=0;
),但是这样也没有改变结果。
问题4.检查硬件发现可能是AD0809没有工作,但是一直找不出来问题。
这个问题从始至终都没有找到确切的答案,只是有基于上个问题的
一些想法。
上个问题中,模拟输入电压在接入5V,数码管显示165,在接入0V显示65,显示结果不是很稳定,但是显示如上结果的概率在95%。
最初我们猜想是其他问题,因为输入5V和0V数转换的结果在变化,说明数码管工作了。
在过少次检查机想象中,都没能找到问题。
我们就试着改变了输入模拟电压,用两个相同的电阻分压,得到了模拟输入电压,但令我们惊讶的是现实结果没有变,而是接近5V的显示结果,甚至一样。
那么,AD0809一定没有工作,显示的只是初始化得乱码。
我们再次仔细检查了电路,没有发现问题。
经过我们小组几次讨论,得出如下结论:
AD0809本身可能就是坏的!
!
六、设计结果
1.方案图
2.总体电路原理图
3.软件流程图
4.软件设计
#include<
>
typedefunsignedcharuint8;
typedefunsignedintuint16;
typedefunsignedlonguint32;
uint8a[5];
uint8j=0;
sbiteoc=P2^6;
sbitoe=P2^5;
sbitst=P2^7;
sbitADDR0=P2^0;
sbitADDR1=P2^1;
sbitADDR2=P2^2;
sbitADDR3=P2^3;
sbitclock=P2^4;
bitflag=0;
codeuint8table[]={0xc0,0xf9,0xa4,0xb0,
0x99,0x92,0x82,0xf8,
0x80,0x90};
voiddelay()片机原理及应用[M].北京:
高等教育出版社,2003
李全利迟荣强编着单片机原理及接口技术北京:
高等教育出版社2004
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 水深 测量 系统