基于单片机实现的数字电压表毕业论文内容摘要:
式设制 0 0 0 0 0 0 0 1 I/D S 显示状态设制 0 0 0 0 0 0 1 D C B 无标画面滚动 0 0 0 0 0 1 S/C RL * * 功能设置 0 0 0 0 1 DL N F * * CGRAM 地址设制 0 0 0 1 A5 A4 A3 A2 A1 A0 DDRAM 地址设制 0 0 1 A6 A5 A4 A3 A2 A1 A0 读 BF 和 AC 0 1 BF AC6 AC5 AC4 AC3 AC2 AC1 AC0 写数据 1 0 数 据 读数据 1 1 数 据 (3)写命令字 由表 32 可知当 RS=0, R/W=0 时,才可以通过单片机或用户指令把数据写到 LCD模块,此时就对 LCD 进行调制。 可采用查询方式:先读入状态字,再判断忙标志位,最后写命令字。 图 310 所示 为写命令字的流程图。 重庆电子工 程职业学院毕业论文 第 12 页 共 31 页 图 310 写命令字流程图 1) 定义光标位置 显示数据的某位,就是把显示数据写在相应的 DDRAM 地址中, DDRAM 地址占 7 位。 Set DDRAM address 命令如表 33 所示。 光标定位,写入一个显示字符后,DDRAM 地址会自动加 1 或减 1,加或减由输入方式设置。 表 33 Set DDRAM address 命令 RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 1 AC6 AC5 AC4 AC3 AC2 AC1 AC0 第 1 行 DDRAM 地址与第 2 行 DDRAM 地址并不连续 , 如表 34 所示。 表 34 DDRAM 地址 row 1 2 3 4 5 … 14 15 16 line1 80H 81H 82H 83H 84H … 8dH 8eH 8fH line2 0c0H 0c1H 0c2H 0c3H 0c4H … 0cdH 0ceH 0cfH 2) LCD 初始化 从通电开始延时,先经过判忙后再进行功能设置,过一段时间后可以设制显示状态(如设制行、位或阵列)再经过延时清屏后才可以设置输入方式,具体实现过程如图 311 所示。 重庆电子工 程职业学院毕业论文 第 13 页 共 31 页 图 311 LCD 初始化流程图 2. LCD 显示程序设计 LCD 显示程序的设计一般先要确定 LCD 的初始化、光标定位、确定显示字符后,显示流程 如图 312 显示。 图 312 LCD 显示程序流程图重庆电子工 程职业学院毕业论文 第 14 页 共 31 页 第 4 章 系统软件设计 根据需要,可将系统软件按照功能划分为 4 个模块,分别是主程序模块、 A/D 转换模块、液晶显示模块、中断服务程序模块 (改变显示的小数点位置 ),各模块的功能关系如图 41 所示。 编写系统软件时,可首先编写各模块的底层驱动程序,而后是系统联机调试,编写上层主程序。 图 41 系统软件框图 主程序设计 图 42 主程序流程图 系统主程序 液晶管显示 A/D转换 中断服务 . 重庆电子工 程职业学院毕业论文 第 15 页 共 31 页 主程序主要负责各个模块的初始化工作:设置定时器、寄存器的初值,启动 A/D转 换,读取转换结果,处理量程转换响应,控制液晶实时显示等,其流程图如图 42所示。 A/D 转换程序 A/D 转换程序的功能是采集数据,在整个系统设计中占有很高的地位。 当系统设置好后,单片机扫描转换结束管脚 的输入电平状态,当输入为高电平则转换完成,将转换的数值转换并显示输出。 若输入为低电平,则继续扫描。 程序流程图如图43 所示。 图 43 A/D 转换程序流程图 中断服务程序 中断服务程序的功能是为 ADC0808 提供时钟信号,当中断发生时将 AT89C51单片机的 管脚将输出信号取反 ,为 ADC0808 提供 12kHz 时钟信号。 重庆电子工 程职业学院毕业论文 第 16 页 共 31 页 第 5 章 系统仿真与调试 在进行电路的局部调试之后,我又进行了系统整机调试。 首先为 ADC0808 接上+12V 的电压,为其它芯片接上 +5V 的工作电压。 另外还要输入待测的模拟电压,该电压从 200mV 以下的电压开始输起,依次增大,直到达到待测电压的上限 50V 为止,记录测量数据并分析系统性能。 分局部调试 1. 检查 ADC0808 是否工作 ADC0808 集成了三个控制端。 如果某一控制端为高电平则对应的开关将接通。 为测量其是否工作,我们将它的三个控制端用导线引出分别接高 低电平,发现测量结果与理论分析结果一致, ADC0808 工作正常。 2. 各量程调节 这一步调试是建立在上述两步调试的基础上的。 针对不同的档位,我们通过接入不同待测的模拟量来调节电压。 整机调试 本系统的测试采用 Proteus 软件,系统在 Proteus 软件中仿真时使用的元件如表51 所示。 测试表明,系统运行正常,能准确将直流模拟信号的电压转换成数值显示,并能精确到 5 位有效数字,达到了设计的要求。 表 51 元件 名称 及属性 序号 元件名 属性 序号 元件名 属性 1 AT89C51 单片机 7 LM016L LCD1602 3 CAP 电容 8 ADC0808 8 位 A/D 转换器 4 CAPELEC 电解电容 9 PULLUP 上拉电阻 5 CRYSTAL 晶振 10 SWPOT4 4 路模拟开关 6 RES 电阻 11 74LS02 与非门 重庆电子工 程职业学院毕业论文 第 17 页 共 31 页 系统仿真 采用 Keil编译器进行源程序编译及仿真调试,调好程序后将目标程序导入 Proteus进行软硬件调试,基于单片机实现的数字电压表测试值见表 52 所示。 表 52 测试值与真实值 电压表测得值 /V 绝对误差 /V + + + + + + + + 电压表测得值 /V 绝对误差 /V + + + + + + + + + 从表中可以看出,电压表测得值误差均在 以内,这与采用 8 位 A/D 转换器所能达 到的理论误差精度相比较接近,因此在一般的应用场合都可以满足要求。 重庆电子工 程职业学院毕业论文 第 18 页 共 31 页 结 论 本设计以 AT89C51 单片机为控制核心,通过集成摸数转换芯片 ADC0808 将被测信号转换成数字信号,经单片机内部程序处理后,由液晶显示器 LCD1602 显示测量结果。 仿真测试表明,系统性能良好,测量读数稳定易读、更新速度合理,直流电压测量范围为 0~ 50V,最小分辨率为 ,满足任务书指标要求。 但是,该系统也存在一定程度的不足,例如: 输入电压易发生干扰不稳定,且驱动能力可能存在不足,需在被测信号的输入端加上一部分驱动电路,比 如将量程转换电路改成带放大能力的自动量程转换电路,将幅值较小的信号经适当放大后再测量,可显著提高精度; 输出量可用平均值算法来改善,使测量准确度更高。 若能将测量的电压值实时保存,使用时将更方便。 ADC0808 可实现对 8 个通道的输入信号轮流转换,本设计仅仅使用了其中一个通道,造成了较大的资源浪费。 若能对电路稍加改进,实现对多路信号的轮流测量并自动保存相应结果,其应用价值将会更大。 重庆电子工 程职业学院毕业论文 第 19 页 共 31 页 致 谢 本文是在 赵阔 老师的精心指导下完成的。 在此向他表示衷心的感谢。 感谢同学的鼓励和帮助,让我顺利完成本次设计任务。 通过短暂的毕业设计,从而提高了我的理论水平,真正做到学有所用,虽然在其过程中我也遇到一些困难,但是从中我也得到了很多的帮助,没有半途而废,没有灰心丧气,我都一一克服了,这些都是一种收获,最让我感到高兴的是终于按质按量的完成了毕业设计。 感谢我的指导老师,他严谨细致、一丝不苟的作风一直是我工作、学习中的榜样;他循循善诱的教导和不拘一格的思路给予我无尽启迪。 本次毕业设计的每一个细节都离不开您的细心指导。 感谢同学、朋友的帮助,在这里请接受我诚挚的谢意。 重庆电子工 程职业学院毕业论文 第 20 页 共 31 页 参考文献 [1] 徐爱钧 . 智能化测量控制仪表原理与设计( 第二版) . 北京:北京航空航天大学出版社, 2020 [2] 吴金戌,沈庆阳,郭庭吉 . 8051 单片机实践与应用 . 北京:清华大学出版社,2020 [3] 黄智伟 . 全国大学生电子设计竞赛训练教程 . 北京:电子工业出版社, 2020 [4] 汪德彪 . MCS51 单片机原理及接口技术 ( 第一版 ). 北京:电子工业出版社,2020重庆电子工 程职业学院毕业论文 第 21 页 共 31 页 附录1 系统源程序 COM EQU 50H DAT EQU 51H RS EQU。 LCD 寄 存器选择信号 RW EQU。 LCD 读 /写选择信号 E EQU。 LCD 使能信号 ORG 0000H LJMP MAIN ORG 000BH LJMP BT0。 T0 中断入口 ORG 0030H。 主程序初始化 MAIN: MOV SP,。基于单片机实现的数字电压表毕业论文
相关推荐
专利。 目 前,最常用的锁是 20 世纪 50 年代意大利人设计的机械锁,其机构简单、使用方便、价格便宜。 但在使用中暴露了很多缺点:一是机械锁是靠金属制成的钥匙上的不同 齿形与锁芯的配合来工作的。 据统计,每 4000 把锁中就有两把锁的钥匙齿牙相同或类似,故安全性低。 二是钥匙一旦丢失,无论谁捡到都可以将锁打开。 三是机械锁的材料大多为黄铜,质地 较软,容易损坏。 四是机械锁钥匙易于复制
和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线。 其中, 中央处理器 CPU 是整个单片机的核心部件,是 8 位数据宽度的处理器,能处理 8 位二进制数据或代码, CPU 负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。 8751 内部有 128 个 8 位用户数据存储单元和 128 个专用寄存器单元,它们是统一编址的
dings, industry。 microputers embedded control system as the main and core, instead of the traditional control System of conventional electronic circuits. At the same time the development of
法比较单一,就是在电动机轴上加阻尼器,电子阻尼法则有多种。 (1)多相励磁法:采用多相励磁会产生电磁阻尼, 会削弱或消除振荡现象。 (2)变频变压法:步进电机在高频和在低频时转子所获得的能量不一样,在低频时绕组中的电流上升时间长,转子获得的能量大,因此容易产生振荡,在高频时则相反。 所以,可以设计一种电路,使电压随频率的降低而减少,这样使绕组在低频时的电流减少,可以有效地消除振荡 [9]。
南京工业大学本科生毕业设计 (论文 ) 3 第二章 步进电机简介 步进电机概念 步进电机是一种将电脉冲信号转换成相应的角位移或线位移的电磁装置,是一种特殊的电动机。 一般电动机是连续转动的,而步进电动机则有定位和运转两种基本状态,当有脉冲输入时步进电动机一步一步地转动,每次给它一个脉冲,它就转过一个固定的角度。 步进电动机的角位移量和输入的脉冲个数成正比,在时间上与输入脉 冲同步
0。 高优先级 SETB IT1。 外部中断 1 为跳沿触发 SETB PX1。 高优先级 SETB EX1。 允许外部中断 1 中断 SETB EX0。 允许外部中断定 0 中断 SETB EA。 开中断总开关 SETB TR1。 定时器 1 开始工作,作中断用 SETB OUT。 音频输出端口初始化。 ***********************************。 设置结束 CLR