基于单片机的数字电压表【毕业设计】.doc
《基于单片机的数字电压表【毕业设计】.doc》由会员分享,可在线阅读,更多相关《基于单片机的数字电压表【毕业设计】.doc(33页珍藏版)》请在三一办公上搜索。
1、广州大学松田学院 毕业论文(设计)题 目 基于单片机的数字电压表基于单片机的数字电压表设计摘要:随着电子科学技术的发展,电子测量成为广大电子工作者必须掌握的手段,对测量的精度和功能的要求也越来越高,而电压的测量甚为突出,因为电压的测量最为普遍。本设计在参阅了大量前人设计的数字电压表的基础上,利用单片机技术结合A/D转换芯片构建了一个八路电压巡检系统。然后详细的介绍了八路电压巡检系统的设计流程,以及硬件系统和软件系统的设计,并给出了硬件电路的原理图。本设计可以循环的在LCD1602上面显示八个电路的电压。可以测量05V范围。关键词:LCD1602,独立键盘,LCD显示管,多路电压采集。A vol
2、tage acquisition system based on MCUAbstract: with the development of electronic technology, electronic measuring a large number of electronic workers must master the means of measurement, the accuracy and functional requirements are increasingly high, while the voltage measurement is very prominent
3、, because the voltage measurement is most common. In the design of consulting a large number of previous design digital voltage meter based on A/D conversion chip, combined with the construction of a eight voltage inspection system using single chip computer technology. And then introduces the desig
4、n process of eight voltage inspection system, and the hardware and software design of the system, and the hardware circuit is given. This product can be recycled display eight circuit voltage at LCD1602. Can measure range of 05V.Keywords: LCD1602, keyboard, LCD display tube, a voltage acquisition.目
5、录1 绪 论51.1 目的和意义51.2 本系统主要研究内容52. 总体方案论证与设计62.1主控模块62.1.1 STC89C52单片机主要特性72.1.2 STC89C52单片机的中断系统72.1.3 STC89C52单片机的定时/计数器82.2 LCD液晶显示器简介82.2.1 液晶原理介绍82.2.2液晶模块简介82.2.3液晶显示部分与STC89C52的接口92.3键盘模块设计102.4 AD采集模块设计102.4.1 ADC0809 芯片简介102.4.2 引脚功能说明113.系统软件设计133.1系统软件总体设计133.2程序设计原理134.系统调试164.1硬件调试204.2软
6、件调试204.3调试结果205.结论22参考文献23附录24系统整体原理图24系统PCB设计图24系统源程序251 绪 论1.1 目的和意义在电量的测量中电压、电流和频率是最基本的三个被测量,其中电压量的测量最为经常,而且随着电子技术的发展,更是需要测量高精度的电压,所以基于单片机电压表测量仪器具有读数准确方便、精度高、误差小、灵敏度高和分辨率高,测量速度快等特点而倍受青睐。基于单片机电压表式采用数字化测量技术设计的电压表。具有读数直观、准确、显示范围宽、分辨率高、输入阻抗大、集成度高、功耗小、抗干扰能力强,可扩展能力强等特点,本设计从各个角度分析了由单片机组成的数字电压表的设计过程及各部分电
7、路的组成及其原理,并且分析了程序如何驱动单片机进而使系统运行起来的原理及方法。1.2 本系统主要研究内容数字电压表采用的是数字化测量技术,把连续的模拟量,也就是连续的电压值转变为不连续的数字量,加以处理后通过显示器显示出来。这次设计的硬件方面采用AT89C51单片机,A/D转换器采用ADC0809对输入的模拟信号进行转换,最后在LED屏显示出来。而这个设计主要拟解决的是在使用过程中避免由于传统电压表指针读书的方法而产生的读书视觉差和视觉疲劳,同时因为单片机体积小、重量轻、价格便宜,电路外围器件少,从根本上大大降低了研发成本。本系统设计制作一个基于单片机的多路电压采集系统。能实现以下几种功能:1
8、、键盘扫描,通过单片机检测用户按下的是哪个按键并执行相应的功能。2、单片机通过ADC0809采集8路的电压值并可以显示在液晶上。2. 总体方案论证与设计本系统以STC89C52单片机为控制核心,对系统进行初始化,主要完成对键盘的响应、LCD显示、AD采集等功能的控制,起到总控和协调各模块之间工作的作用。图2-1系统结构框图本系统结构如图2-1所示,本设计可分为以下模块:单片机主控模块、键盘模块、液晶模块、AD采集模块。下面对各个模块的设计方案逐一进行论证分析。2.1主控模块STC89C52单片机最初是由Intel 公司开发设计的,但后来Intel 公司把51 核的设计方案卖给了几家大的电子设计
9、生产商,譬如 SST、Philip、Atmel 等大公司。如是市面上出现了各式各样的但均以51 为内核的单片机,倒是Intel 公司自己的单片机却显得逊色了。这些各大电子生产商推出的单片机都兼容51 指令、并在51 的基础上扩展一些功能而内部结构是与51 一致的。STC89C52有40个引脚,4个8位并行I/O口,1个全双工异步串行口,同时内含5个中断源,2个优先级,2个16位定时/计数器。STC89C52的存储器系统由4K的程序存储器(掩膜ROM),和128B的数据存储器(RAM)组成。STC89C52单片机的基本组成框图见图2-2。图2-2 STC89C52单片机结2.1.1 STC89C
10、52单片机主要特性1. 一个8 位的微处理器(CPU)。2. 片内数据存储器RAM(128B),用以存放可以读写的数据,如运算的中间结果、最终结果以及欲显示的数据等。3. 片内程序存储器ROM(4KB),用以存放程序、一些原始数据和表格。4. 四个8 位并行IO 接口P0P3,每个口既可以用作输入,也可以用作输出。5. 两个定时器计数器,每个定时器计数器都可以设置成计数方式,用以对外部事件进行计数,也可以设置成定时方式,并可以根据计数或定时的结果实现计算机控制。6. 五个中断源的中断控制系统。7. 一个全双工UART(通用异步接收发送器)的串行IO 口,用于实现单片机之间或单机与微机之间的串行
11、通信。8. 片内振荡器和时钟产生电路,但石英晶体和微调电容需要外接。最高允许振荡频率为12MHz。2.1.2 STC89C52单片机的中断系统STC89C52系列单片机的中断系统有5个中断源,2个优先级,可以实现二级中断服务嵌套。2.1.3 STC89C52单片机的定时/计数器89C52单片机内集成有两个可编程的定时/计数器:T0和T1,它们既可以工作于定时模式,也可以工作于外部事件计数模式,此外,T1还可以作为串行口的波特率发生器。2.1.4STC98C52烧录过程1、选择我所使用的单片机型号,就是STC89C52RC2、打开文件,要烧录用户程序,调入用户的程序代码(*.bin,*hex)3
12、、选择串口,我选择的是1-COM1。4、设置是否双倍速,我选择的是双倍速,也就是Double Speed。5、选择“Download/下载”按钮,下载我所使用的程序进单片机内部,我是选择“Download/下载”按钮,然后再给单片机上电复位。2.2 LCD液晶显示器简介2.2.1 液晶原理介绍液晶显示器(LCD)英文全称为Liquid Crystal Display,它一种是采用了液晶控制透光度技术来实现色彩的显示器。和CRT显示器相比,LCD的优点是很明显的。由于通过控制是否透光来控制亮和暗,当色彩不变时,液晶也保持不变,这样就无须考虑刷新率的问题。本系统显示部分用的是LCD液晶模块,采用一
13、个161的字符型液晶显示模块。 2.2.2液晶模块简介LCD1602液晶模块采用HD44780控制器,hd44780具有简单而功能较强的指令集,可以实现字符移动,闪烁等功能,LM016L与单片机MCU通讯可采用8位或4位并行传输两种方式,hd44780控制器由两个8位寄存器,指令寄存器(IR)和数据寄存器(DR)忙标志(BF),显示数RAM(DDRAM),字符发生器ROMA(CGOROM)字符发生器RAM(CGRAM),地址计数器RAM(AC)。IR用于寄存指令码,只能写入不能读出,DR用于寄存数据,数据由内部操作自动写入DDRAM和CGRAM,或者暂存从DDRAM和CGRAM读出的数据,BF
14、为1时,液晶模块处于内部模式,不响应外部操作指令和接受数据,DDTAM用来存储显示的字符,能存储80个字符码。LCD1602液晶模块的引脚图如图2-5所示。图2-5LCD1602引脚图寄存器选择控制如表2-1。表2-1寄存器选择控制RSR/W操作说明00写入指令寄存器(清除屏等)01读busy flag(DB7)以及读取位址计数器(DB0DB6)值10写入数据寄存器(显示各字型等)11从数据寄存器读取数据2.2.3液晶显示部分与STC89C52的接口 如图2-6所示。用STC89C52的P2口作为数据线,用P3.2、P3.1、P3.0分别作为LCD的E、R/W、RS。其中E是下降沿触发的片选信
15、号,R/W是读写信号,RS是寄存器选择信号本模块设计要点如下:显示模块初始化:首先清屏,再设置接口数据位为8位,显示行数为1行,字型为57点阵,然后设置为整体显示,取消光标和字体闪烁,最后设置为正向增量方式且不移位。向LCD的显示缓冲区中送字符,程序中采用2个字符数组,一个显示字符,另一个显示电压数据,要显示的字符或数据被送到相应的数组中,完成后再统一显示.首先取一个要显示的字符或数据送到LCD的显示缓冲区,程序延时2.5ms,判断是否够显示的个数,不够则地址加一取下一个要显示的字符或数据。图2-6 LCD1602与STC89C52的接口2.3键盘模块设计图2-7键盘模块电路图硬件电路设计图如
16、上图所示。把单片机的P2.0P2.7端口通过8联拨动拨码开关连接到“4*4行列式键盘”,其中P2.0-P2.3作为列线,P2.4-P2.7作为行线,系统首先通过CPU对全部键盘进行扫描,即把第一根行线置为“0”状态,其余行线置于“1”状态,读入输入缓冲器的状态,若其状态全为“1”表明该行无键按下,再将第二根行线置为“0”状态,同样读入输入缓冲器的状态,如其状态也全为“1”,则置第一根行线置为“0”状态,以此类推5。如读入输入缓冲器的状态不全为“1”,确定哪一根列线为“0”状态,当某个键的行线和列线都为“0”状态时,表明该键按下。2.4 AD采集模块设计2.4.1 ADC0809 芯片简介ADC
17、0809具有8个通道的模拟输入线,在程序控制下对任意通道进行A/D转换。模拟输入部分有8路多路开关,可由3位地址输入ADDA、ADDB、ADDC的不同组合来选择,ALE为地址锁存信号,高电平有效,锁存这三条地址输入信号。主体部分是采用逐次逼近式的A/D转换电路,由CLK控制的内部电路的工作,START为启动命令,高电平有效,启动ADC0809内部的A/D转换,当转换完成,输出信号EOC有效,OE为输出允许信号,高电平有效,打开输出三态缓冲器,把转换后的结果送DB。图5.2 ADC0809管脚图转换数据的传送 A/D转换后得到的数据应及时传送给单片机进行处理。数据传送的关键问题是如何确认A/D转
18、换的完成,因为只有确认完成后,才能进行传送。 2.4.2 引脚功能说明IN0IN7:8路模拟量输入端。 2-12-8:8位数字量输出端。 ADDA、ADDB、ADDC:3位地址输入线,选通8路模拟输入中的一路 。ALE:地址锁存允许信号,输入,高电平有效。 START: A/D转换启动脉冲输入端,输入一个正脉冲(至少100ns宽)使其启动(脉冲上升沿使0809复位,下降沿启动A/D转换)。 EOC: A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。 OE:数据输出允许信号,输入,高电平有效。当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 基于 单片机 数字 电压表
链接地址:https://www.31ppt.com/p-4148585.html