版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、成绩课 程 设 计课程名称单片机原理与应用课程设计课题名称数字电压表专 业自动化班 级1301学 号29姓 名黄奎伦指导老师林国汉、王迎旭、李晓秀等2016年6月10日电气信息学院课程设计任务书课题名称数字电压表设计姓 名黄奎伦专业自动化班级1301学号29指导老师林国汉老师课程设计时间2016年5月30日-2016年6月10日一、任务及要求设计任务:本课题要求以MCS-51系列单片机为核心,设计一个数字电压表。(1) 采用串行A/D转换模块或者并行A/D转换模块能对多路电压信号进行采样并使用LED或者液晶显示器进行显示;(2) 具有轮流显示功能(3) 能够通过键盘对采样通道进行选择(4) 其
2、它功能设计要求:(1)确定系统设计方案;(2)进行系统的硬件设计;(3)完成应用程序设计;(4)应用系统的硬件和软件的调试。三、参考资料1、王迎旭等.单片机原理及及应用. 2版.机械工业出版社,20122、胡汉才.单片机原理及其接口技术.3版.清华大学出版社,2010.3、戴灿金.51单片机及其C语言程序设计开发实例.清华大学出版社,2010目 录1 总体方案设计1 1.1设计要求1 1.2设计思路1 1.3总设计框图22 硬件电路设计2 2.1 总硬件电路设计2 2.2 单片机控制模块设计2 2.3 AD转换模块设计3 2.4 LCD显示模块53 软件设计5 3.1 主程序设计6 3.2 A
3、/D转换程序设计64 调试8 4.1 显示结果8 4.2 误差分析85 总结96 参考资料107 附录101 总方案设计1.1设计要求 本课题要求以MCS-51系列单片机为核心,设计一个数字电压表。(1)采用串行A/D转换模块或者并行A/D转换模块能对多路电压信号进行采样并使用LED或者液晶显示器进行显示;(2)具有轮流显示功能(3)能够通过键盘对采样通道进行选择(4)其它功能 1.2 设计思路 基于AT89C51单片机来设计。 用ADC0808芯片做为A/D转换器,与单片机的接口为P1口和P2口的高四位
4、引脚。 电压的输出显示采用LCD1602液晶显示器显示 通过按键选择通道1.3总设计框图利用AD转换器对输入电压进行采集并传输给单片机,得到相应的数字量,再按数字量与模拟量成正比关系运算得到对应的模拟电压值,然后把模拟值通过显示器显示出来,另外可以通过按键选择通道。然后通过单片机与液晶显示器LCD1602连接,最终显示液晶显示器上。AT89C51单片机时钟电路复位电路 电压输入显示系统A/D转换按键图1 设计总框图根据系统的功能要求,控制系统采用AT89C52单片机,A/D转换器采用ADC0808。ADC0808是8位的A/D转换器。当输入电压为5.00V时,输出的数据值为255(
5、0FFH),因此最大分辨率为0.0196V(5/255)。ADC0808具有8路模拟量输入端口,通过3位地址输入端能从8路中选择一路进行转换。如每隔一段时间依次轮流改变3位地址输入端的地址,就能依次对8路输入电压进行测量。显示器采用LCD显示器,显示效果好。按键可只设定一个,用于选择显示的当前通道。2 硬件电路设计2.1总硬件电路设计数字电压表具体硬件电路如图附录A所示。 其中,显示器LCD1602的数据线与89C 51的P0口相连,RS与P1.7相连,R/与P1.6相连,E端与P1.5相连。按键只设定了一个K1,与AT89C52的P1.0,用于进行通道选择,当按下一次,通道加1,显示下一个通
6、道。ADC0808 的数据线D0D7与AT89C51的P2口相连,地址输入端ADDA、ADDB、ADDC与AT89C51的P3口的低3位P3.0、P3.1、P3.2相连,地址锁存控制端ALE和启动信号START连接在一起与P3.7相连,数据输出允许控制端OE与P3.6相连,转换结束信号EOC与P1.3相连。ADC0808的时钟信号输入端CLOCK与P1.4相连,而P1.4由定时/计数器0控制,每10(s取反一次,则CLOCK的时钟周期为20(s,频率为50KHz,满足ADC0808的时钟要求。参考电压VREF+接+5V电源,参考电压VREF-接地,则当输入电压为5.00V时,输出的数据值为25
7、5(0FFH),当输入电压为0V时,输出的数据值为0(00H),最大分辨率为0.0196V(5/255)。2.2 单片机控制模块设计单片机控制模块的作用是为控制各单元电路的运行并完成数据的换算或处理,主要由单片机、时钟电路、复位电路组成。 时钟电路单片机工作的时间基准是由时钟电路提供的,在单片机的XTAL1和XYAL2两个管脚接一只晶振及两只电容就构成了单片机的时钟电路,电路中电容器C1和C2对振荡频率有微调作用,通常取(30±10pF)石英晶体选择11.0592MHz。时钟电路如图2所示。图2 时钟电路 复位电路单片机的RST管脚为主机提供了一个外部复位信号输入口。复位信号是高电平
8、有效,高电平有效的持续时间为2个机器周期以上。单片机的复位方式为上电复位方式。复位电路如图3所示。 图3 复位电路2.3 AD转换模块设计逐次逼近型A/D转换器ADC0808属于直接型A/D转换器,它能把输入的模拟电压直接转换为输出的数字代码,而不需要经过中间变量。 ADC0808简介ADC0808精度为8位,CMOS器件,不仅包括一个8位的逐次逼近型的ADC部分,而且还提供一个8通道的模拟多路开关和通道寻址逻辑,因而有理由把它作为简单的“数据采集系统”。利用它可直接输入8个单端的模拟信号分时进行A/D转换,在多点巡回检测和过程控制、运动控制中应用十分广泛。外部引脚图及引脚功能ADC0808的
9、外部引脚如图4所示。图4 ADC0808外部引脚图IN0IN7:8路模拟量输入。A、B、C:3位地址输入,2个地址输入端的不同组合选择八路模拟量输入。ALE:地址锁存启动信号,在ALE的上升沿,将A、B、C上的通道地址锁存到内部的地址锁存器。D0D7:八位数据输出线,A/D转换结果由这8根线传送给单片机。OE:允许输出信号。当OE=1时,即为高电平,允许输出锁存器输出数据。START:启动信号输入端,START为正脉冲,其上升沿清除ADC0808的内部的各寄存器,其下降沿启动A/D开始转换。EOC:转换完成信号,当EOC上升为高电平时,表明内部A/D转换已完成。 AD转换模块设计集成摸数转换芯
10、片ADC0808实现的A/D转换电路如图5所示,被测信号由ADC0808模拟输入端输入,完成A/D转换后送入单片机,经相应处理后送出显示。图5 AD转换电路2.4 LCD显示模块LCD显示器分为字段显示和字符显示两种。其中字段显示与LED显示相似,只要送对应的信号到相应的管脚就能显示。字符显示是根据需要显示基本字符。本设计采用的是字符型显示。系统中采用LCD1602作为显示器件输出信息。与传统的LED数码管显示器件相比,液晶显示模块具有体积小、功耗低、显示内容丰富等优点,而且不需要外加驱动电路,现在液晶显示模块已经是单片机应用设计中最常用的显示器件了。LCD1602可以显示2行16个汉字。3
11、软件设计根据需要,可将系统软件按照功能划分为4个模块,分别是主程序模块、A/D转换模块、液晶显示模块、中断服务程序模块,各模块的功能关系如图6所示。编写系统软件时,可首先编写各模块的底层驱动程序,而后是系统联机调试,编写上层主程序。系统主程序液晶管显示A/D转换中断服务.图6 系统软件框图3.1主程序设计3.1主程序设计START选择ADC0808的转换通道设置定时器,提供时钟信号N启动A/D转换转换是否结束Y输出转换结果数值转换显示 图7 主程序流程图 整个主程序就是在A/D转换,数据处理及显示程序循环执行。整个程序流程框图如图7所示。启动ADC0808对模拟量输入信号进行转换,通过查询P1
12、.3引脚来确定转换是否完成,若完成则把数据通过P2端口读入,经过数据处理后在LCD1302上显示。3.2 A/D转换程序设计 程序开始执行后首先通过手动控制拨码开关来选择8路模拟通道的一路进行模数转换。接着启动一次A/D转换,通过判断转换结束状态信号EOC是否为1来判断A/D转换是否结束。EOC=1, 则表示A/D转换结束,否则EOC=0,则表示正在进行A/D转换。接着输出允许信号OE=1,输出转换后的数据,就完成了一次A/D转换,程序返回到数据处理模块。只要手动控制模拟通道就可以不停的循环进行模数转换。开始设置模拟输入口启动转换 N转换完?Y输出数值处理图8 A/D转换程序流程图4
13、 调试4.1显示结果1. 当输入电压为0V时显示结果如图所示,测量误差为0V。图9 输入电压为+0V时,LCD显示结果2. 当输入电压为+1.65V时,显示结果如图所示,测量误差为0.1V。图10 输入电压为+1.65V时,LCD显示结果3. 当输入电压为+3.85V时,显示结果如图所示,测量误差为0.1V。图11 输入电压为+3.84V时,LCD显示结果4.当输入电压为+5V时,显示结果如图所示,测量误差为0V。图12 输入电压为+5.00V时,LCD显示结果4.2误差分析通过以上仿真测试结果可以得到数字电压表与实际电压对比表格,如表1所示:表1 数字电压表与实际输入电压对比测试表输入电压值
14、/V电压表测量值/V绝对误差/V0.000.000.000.510.500.011.231.230.002.182.170.013.003.000.000.260.250.014.004.000.004.374.370.005.005.000.00因为单片机AT89C51为8位处理器,当输入电压为5.00V时,ADC0808输出数据值为255(FFH),因此单片机最高的数值分辨率为0.0196V(5/255)。这就决定了电压表的最高分辨率只能到0.0196V,从上表可看到,测试电压一般以0.01的幅度变化。而且数字电压表测得的值基本上比实际输入值偏小0-0.01V。5 总结 本设计以AT89C
15、51单片机为控制核心,通过集成摸数转换芯片ADC0808将被测信号转换成数字信号,经单片机内部程序处理后,由液晶显示器LCD1602显示测量结果。 仿真测试表明,系统性能良好,测量读数稳定易读、更新速度合理,直流电压测量范围为0.005.00V,最小分辨率为0.0196V,满足任务书指标要求。但是,该系统也存在一定程度的不足,例如数字电压表测量结果误差还比较大,输出量可用平均值算法改善,使测量准确度更高。 通过本次课程设计的锻炼,我学到了很多有关仪表的设计方法与工作原理。在设计的过程中,出现了很多错误,这让我明白了,对总体的把握固然重要,但对于一个实际的系统,很难在设计
16、之初就把握所有细节,设计任何一个系统都需要耐心逐步去发现和解决问题。在寻求解决困难的过程中,激发了我今后努力学习的兴趣,我想这将对我以后的学习产生积极的影响。总体来说,这次实习使我受益匪浅。在摸索该如何设计电路使之实现所需功能的过程中,特别有趣,培养了我的设计思维。通过两个星期的学习让我把书本上的知识转换成实际可操作的东西,让我体会到成功的喜悦和快乐。6 参考资料1、王迎旭等.单片机原理及及应用. 2版.机械工业出版社,20122、胡汉才.单片机原理及其接口技术.3版.清华大学出版社,2010.3、戴灿金.51单片机及其C语言程序设计开发实例.清华大学出版社,20107附录附录A 数字电压表原
17、理图:图13 数字电压表原理图附录B程序清单: #include <reg51.h>#include <absacc.h> #include <intrins.h> #define uchar unsigned char #define uint unsigned int sbit RS=P17;sbit RW=P16;sbit EN=P15;sbit ST=P37;sbit OE=P36;sbit EOC=P13;sbit CLK=P14;sbit key1=P10;uchar data chnumber;/存放当前通道号uchar disbuffer4=
18、0,'.',0,0; /定义显示缓冲区uchar data ad_data8=0,0,0,0,0,0,0,0;/0808的8个通道转换数据缓冲区uint temp;/检查忙函数void fbusy()P0 = 0xff;RS = 0;RW = 1;EN = 1;EN = 0;while(P0 & 0x80) EN = 0;EN = 1;/使能端EN高电平有效,能读取lcd内存储单元的值/写命令函数void wc51r(uchar j) fbusy();EN = 0;RS = 0;RW = 0;EN = 1;P0 = j;EN = 0;/写数据函数void wc51ddr
19、(uchar j) fbusy();/读状态;EN = 0;RS = 1;RW = 0;EN = 1;P0 = j;EN = 0;void init() /初始化函数wc51r(0x01); /清屏wc51r(0x38); /使用8位数据,显示两行,使用5*7的字型wc51r(0x0c); /显示器开,光标开,字符不闪烁wc51r(0x06); /字符不动,光标自动右移一格/*0808转换子函数*/test()uchar m; for (m=0;m<8;m+)P3=m;/送通道地址ST=0;_nop_();_nop_();ST=1;_nop_();_nop_();ST=0;/锁存通道地址
20、启动转换_nop_();_nop_();_nop_();_nop_();while (EOC=0);/等待转换结束OE=1;ad_datam=P2;OE=0;/读取当前通道转换数据,当OE=1时输出允许,OE=0时输出禁止 /*延时函数*void delay(uint i) /延时函数uint y,j;for (j=0;j<i;j+)for (y=0;y<0xff;y+);/定时器/计数器T0产生0808的时钟void T0X(void)interrupt 1 using 0 CLK=CLK; void main(void)uchar i;SP=0X50;TMOD=0x02;TH0
21、=246;TL0=246;ET0=1;EA=1;TR0=1;delay(10);init();wc51r(0x81); /写入显示缓冲区起始地址为第1行第1列wc51ddr('A'); /wc51ddr('D'); /wc51ddr('D'); / wc51ddr('R'); wc51ddr(':'); /wc51r(0xC0); /写入显示缓冲区起始地址为第2行第1列wc51ddr('V'); /第2行第1列显示字母Vwc51ddr('A'); /第2行第2列显示字母Awc51ddr('L
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 企业战略规划咨询协议
- 二零二五年度定制式卫生间隔断设计、生产、安装全程服务合同3篇
- 二零二五年度高新技术项目研发项目管理咨询服务合同书2篇
- 路牙劳务分包合同
- 二零二五年度新能源管理系统个人研发与应用合同3篇
- 二零二五版房地产销售提成分配合同
- 专业公对公合作协议
- 二零二五年度行政法丨行政协议风险评估与管理合同2篇
- 二零二五版新能源充电桩车位租赁与充电设备更新及维护标准合同3篇
- 二零二五年度个人房产买卖合同纠纷调解协议2篇
- 案卷评查培训课件模板
- 体检中心分析报告
- 2024年江苏省样卷五年级数学上册期末试卷及答案
- 波浪理论要点图解完美版
- 金融交易数据分析与风险评估项目环境敏感性分析
- 牛顿环与劈尖实验论文
- 最高人民法院婚姻法司法解释(二)的理解与适用
- 移动商务内容运营(吴洪贵)任务四 其他平台载体的运营方式
- 浙教版科学八年级下册全册课件
- 2022年中国止血材料行业概览:发展现状对比分析研究报告(摘要版) -头豹
- 普通生物学笔记(陈阅增)完整版-PDF转换成word转换器
评论
0/150
提交评论