自动化毕业设计基于单片机的8路输入模拟信号数值显示器设计.doc
《自动化毕业设计基于单片机的8路输入模拟信号数值显示器设计.doc》由会员分享,可在线阅读,更多相关《自动化毕业设计基于单片机的8路输入模拟信号数值显示器设计.doc(51页珍藏版)》请在三一办公上搜索。
1、西 安 邮 电 学 院 毕 业 设 计(论 文) 题 目: 8路输入模拟信号数值显示器的设计 系 别: 专 业: 班 级: 学生姓名: 导师姓名: 职称: 起止时间: 2007年3月19日 至 2007年 6月 24日 目 录摘 要IABSTRACTII1 引言12 系统概述12.1 硬件电路简介12.2 软件设计简介23 系统方案的选择和论证33.1 系统设计方案的选择33.2 各模块方案选择和论证33.3 系统各个模块的最终方案114 系统的硬件设计114.1 硬件电路各模块简介114.2 系统的仿真215 系统的软件设计215.1 主程序的设计225.2 各子程序的设计226 系统调试2
2、56.1 调试过程中出现的问题256.2 问题分析与解决257 结 论26致 谢27参考文献28附录29摘 要本文主要论述了基于单片机的A/D转换的硬件结构,并在此基础上进行了软件设计。以AT89C52 单片机及模数转换芯片ADC0809为核心,该系统有两个部分:A/D转换,数据处理和显示。具体包括控制、显示、A/D转换器等。设计中用ADC0809进行8路数据的采样,利用AT89C52单片机的串行口发送和接收数据。显示部分由LED数码显示器构成。硬件设计应用电子设计自动化工具,软件设计采用模块化编程方法。关键词: AT89C52,单片机,模数转换,ADC0809,LED数码管 Abstract
3、The hardware structure of data collection system based on SCM is primarily presented in the paper.And its software is designed secondly. Take the AT89C52 SCM and a/d conversion chip ADC0809 as a core, this system has two parts: A/D transforms, data processing and demonstration. Specifically includes
4、 the control, the demonstration, the A/D switch and so on. In the design carries on 8ways with ADC0809 according to the sampling, uses the AT89C52 SCM the serial mouth transmission and thereceive data. Demonstrated partially constitutes by the LED numericalcode monitor. The hardware design applicati
5、on electron design automation tool, the software design uses the modular programmingmethod.Key Words: AT89C52,SCM,A/d conversion,ADC0809,LED numerical code tube1 引言 随着计算机技术的飞速发展及普及,多路输入模拟信号数值显示系统在多个领域有着广泛的应用。多路输入模拟信号数值显示是工、农业控制系统中至关重要的一环,在医药、化工、食品、等领域的生产过程中,往往需要随时检测各生产环节的温度、湿度、流量及压力等参数。同时,还要对某一检测点任意
6、参数能够进行随机查寻,将其在某一时间段内检测得到的数据经过转换提取出来,以便进行比较,做出决策,调整控制方案,提高产品的合格率,产生良好的经济效益。随着工、农业的发展,多路输入模拟信号数值显示势必将得到越来越广泛的应用,为适应这一趋势,作这方面的研究就显得十分重要。在科学研究中,运用多路输入模拟信号数值显示系统可获得大量的动态信息,也是获取科学数据和生成知识的重要手段之一。总之,不论在哪个应用领域中,数据采集与处理将直接影响工作效率和所取得的经济效益。在本论文中,主要讨论以单片机为主控技术的8路输入模拟信号数值显示电路的实现。把由电压表输出的05V的模拟电压信号送给模数转换器,然后A/D转换器
7、将该模拟信号转换为00HFFH的数字信号,当转换结束时发送转换结束信号给单片机AT89C52,单片机对其转换后的结果进行处理,处理后的结果送往LED数码管进行显示。2 系统概述8路输入模拟信号数值显示器实际上就是一个数据采集系统,任务是把由电压表输出的05V的模拟电压信号送给模数转换器,然后A/D转换器将该模拟信号转换为00HFFH的数字信号,当转换结束时发送转换结束信号给单片机AT89C52,单片机对其转换后的结果进行处理,处理后的结果送往LED数码管进行显示。8路输入模拟信号数值显示系统可以分为两大模块:l 硬件电路模块l 软件设计模块2.1 硬件电路简介根据系统的设计要求,可以将系统硬件
8、电路模块划分为以下三个部分:l 主控制器模块l 数据采集模块l 显示模块2.1.1 主控制器模块主控制器模块是8路输入模拟信号数值显示器的核心控制部分,该模块主要由单片机构成,通过单片机的各个I/O口对外围设备的控制,以达到A/D转换,显示数据等功能。2.1.2 数据采集模块 工程实践中经常遇到被测对象的一些物理参数,如温度、流量、压力、位移、速度等,这些参数都是模拟量。虽然这些模拟量已经由传感器、变送器变换成标准的电压或电流信号,但还需要通过A/D转换器,将其转换成计算机能处理的相应的数字信号。所以,单片机与A/D转换接口技术是构成单片机测控系统的重要内容之一。 在本论文中,数据采集模块主要
9、是模数转换器ADC0809。通过单片机提供的时钟频率,通过一个I/O口送入ADC0809的CLOCK引脚,使ADC0809得到一个能够可靠工作的时钟脉冲。并且通过START引脚启动转换,将转换得到的数字信号利用8位数据输出线传输给单片机的P0口。2.1.3 显示模块显示器是单片机应用系统常用的设备,包括LED、LCD等。LED显示器由若干个发光二极管组成,当发光二极管导通时,相应的一个笔画或一个点就发光。控制相应的二极管导通,就能显示出对应字符。本论文中,显示模块主要有七段共阳极LED数码管构成,显示电路采用的是动态显示接口电路。通过单片机的P1口进行数码管的输出显示口,P3口作为数码管的位选
10、择口。 2.2 软件设计简介该系统的软件设计也可以相应的分为以下两部分:l A/D转换程序设计l 显示程序设计2.2.1 A/D转换程序设计A/D转换程序的设计是该系统实现的核心部分,通过设计A/D转换程序驱动单片机向模数转换器ADC0809输入指令开启模数转换,以达到系统设计的主要功能。2.2.2 显示程序设计我们要的是一个能够用眼睛直接接受的一个结果,而不是眼睛看不到,需要在各种仿真软件里才能看到结果的设计,所以数码管显示程序的设计也是该系统设计环节的主要部分。这部分程序也主要是对单片机进行编程来驱动LED数码管进行正常的显示工作。3 系统方案的选择和论证8路输入模拟信号数值显示器,采用A
11、T89C52单片机控制,由集成电路0809完成模数转换。本显示器可自动轮流显示8路输入模拟信号的数值,最小分辨率为0.02V,最大显示数值为255(输入为5V时),模拟输入最大值为5V,可作为数字电压表用。3.1 系统设计方案的选择8路输入模拟信号数值显示器的硬件电路可以分为三个模块:1、主控制器模块;2、数据采集模块;3、显示模块。其中系统的主控制器采用AT89C52单片机,直接驱动LED数码管,数据采集模块由AT89C52与ADC0809组成。3.2 各模块方案选择和论证根据该设计所完成的功能,可以将系统分为3个模块:单片机模块、数据采集模块、显示模块。系统框图如图3-1所示图3-1 系统
12、模块框图3.2.1 主控制器模块的分析与选择用单片机作为这一控制系统的核心,接收来自ADC0809的数据,经处理后通过串口传送,由于系统功能简单,单片机通过与LED数码显示器相连,驱动显示器显示相应通道采集到的数据。考虑到该数据采集系统所需的程序空间(ROM)和数据空间(RAM)较小,选用AT89C52单片机作为该系统的核心,它含有8K字节的EPROM和256字节的RAM足够本设计所用,并且功能强大的AT89C52单片机可提供许多高性价比的应用场合,所以采用AT89C52单片机作为本设计的主控制器。时钟电路的选择: AT89C52中有一个用于构成内部振荡器的高增益反相放大器,引脚XTAL1和X
13、TAL2分别是该放大器的输入端和输出端。这个放大器与作为反馈的元件的片外石英晶体和陶瓷谐振器一起构成自激振荡器。方案一:内部时钟方式,如图3-1图3-1 内部时钟方式外接石英晶体(或陶瓷谐振器)及电容C1, C2接在放大器的反馈回路中构成并联振荡电路。对外接电容C1, C2虽然没有十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程序及温度稳定性,如果使用石英晶体,我们推荐电容使用30pF士10pF,而如使用陶瓷谐振器建议选择40pF士l0pF。 方案二:外部时钟方式,如图3-2图3-2 外部时钟方式外部振荡器信号的接法与芯片类型有关。CMOS工艺的MCU
14、其XTAL1端接外部时钟信号,XTAL2端可悬空。HMOS工艺的MCU则XTAL2端接外部时钟信号,XTAL1端须接地。由于外部时钟方式常用于多片单片机同时工作,以便于各单片机同步。所以时钟电路采取内部时钟方式。3.2.2 数据采集模块的分析与选择根据设计要求,该设计需要对8路模拟信号进行采样,并且最小分辨率为0.02V。a 转换原理的选择随着大规模集成电路技术的迅速发展,A/D转换器新品不断推出。按工作方式原理分,ADC的主要种类有:逐次逼近式和双积分式。方案一:逐次逼近式ADC的转换原理图3-3是逐次逼近式ADC的工作原理图。由图可见,ADC由比较器、D/A转换器、逐次逼近寄存器和控制逻辑
15、组成。图3-3 逐次逼近式ADC原理图 在时钟脉冲的同步下,控制逻辑先使N位寄存器的D7位置1(其余位为0)。此时该寄存器输出的内容为80H,此值经DAC转换为模拟量输出为VN,与待转换的模拟输入信号VIN相比较,若VIN大于等于VN,则比较器输出为1。于是在时钟脉冲的同步下,保留D7=1,并使下一位D6=1,所得新值(C0H)再经DAC转换得到新的VN,再与VIN比较,重复前述过程。反之,若使D7=1后,经比较,若VIN小于VN,则使D7=0,D6=1,所得新值VN再与VIN比较,重复前述过程。以此类推,从D7到D0都比较完毕,转换便结束。转换结束时,控制逻辑使EOC变为高电平,表示A/D转
16、换结束,此时的D7D0即为对应于模拟输入信号VIN的数字量。方案二:双积分式ADC的转换原理 图3-4是双积分式A/D转换器 。图3-4 双积分式A/D转换器图3-5是双积分式ADC的工作原理图。控制逻辑先对未知的输入模拟电压VIN进行固定时间T的积分,然后转为对标准电压进行反向积分,直至积分输出返回起始值。对标准电压的积分时间t2(或t2)正比于模拟输入电压VIN。输入电压大,则反向积分时间长。用高频率标准时钟脉冲来测量积分时间t2(或t2),即可得到对应于模拟电压VIN的数字量。图3-5 双积分式ADC工作原理b 转换时间的选择转换速度是指完成一次A/D转换所需时间的倒数,是一个很重要的指
17、标。A/D转换器型号不同,转换速度差别很大。通常,8位逐次比较式ADC的转换时间为100us左右。由于本系统的控制时间允许,可选8位逐次比较式A/D转换器。c ADC位数的选择A/D转换器的位数决定着信号采集的精度和分辨率。对于该8个通道的输入信号,8位A/D转换器,其精度为输入为05V时,分辨率为A/D转换器的满量程值 ADC的二进制位数量化误差为ADC0809是TI公司生产的8位逐次逼近式模数转换器,包括一个8位的逼近型的ADC部分,并提供一个8通道的模拟多路开关和联合寻址逻辑,为模拟通道的设计提供了很大的方便。用它可直接将8个单端模拟信号输入,分时进行A/D转换,在多点巡回监测、过程控制
18、等领域中使用非常广泛,所以本设计中选用该芯片作为A/D转换电路的核心。d ADC0809与单片机的接口 ADC0809与单片机的接口方式是该系统的核心部分,选择好的接口方式是实现该系统功能的重要步骤。方案一:经典接口方式。ADC0809与单片机的接口电路如图3-6所示。图3-6 ADC0809与MCS-51的接口电路由于ADC0809无片内时钟,时钟信号可由单片机的ALE信号经D触发器二分频后获得。ALE引脚得脉冲频率是AT89C52时钟频率的1/6。单片机时钟频率采用12MHz,则ALE输出的频率是2MHz,二分频后为1MHz,符合ADC0809对频率的要求。由于ADC0809内部设有地址锁
19、存器,所以通道地址由P0口的低3位直接与ADC0809的A、B、C相连。通道基本地址为0000H0007H。其对应关系如表3-1所示。表3-1 0809输入通道地址地址码输入通道CBA000IN0001IN1010IN2011IN3100IN4101IN5110IN6111IN7控制信号:将P2.7作为片选信号,在启动A/D转换时,由单片机的写信号和P2.7控制ADC的地址锁存和启动转换。由于ALE和START连在一起,因此ADC0809在锁存通道地址的同时也启动转换。在读取转换结果时,用单片机的读信号和P2.7引脚经或非门后,产生正脉冲作为OE信号,打开三态输出锁存器。方案二:简易接口方式。
20、ADC0809转换的必要条件就是CLOCK引脚得到一个能够正常工作的时钟脉冲,以经典接口方式来看,是由单片机的ALE引脚经分频器给CLOCK一个时钟脉冲,通过硬件电路直接给CLOCK引脚一个时钟脉冲。所以,只要能让ADC0809的CLOCK引脚得到一个能够工作的时钟脉冲,那么A/D转换也就基本能实现。但是直接利用单片机的任意的一个I/O口与CLOCK引脚连接,通过软件编程的方法给CLOCK引脚送入一个时钟脉冲,那么ADC0809也就可以满足A/D转换的必要条件了。这样,不仅可以节省了器件,而且又不会出现因为硬件问题而产生错误。所以,方案二成为该设计首选的ADC0809与单片机接口的方式。 3.
21、2.3 数据显示模块分析与选择用单片机作为这一控制系统的核心,接收来自ADC0809的数据,经处理后通过串口传送,由于系统功能简单,单片机通过与LED数码显示器相连,驱动LED显示器显示相应通道采集到的数据。要求最大显示数值为255,并且要对8个通道进行轮流显示,所以需要4个LED数码管对其进行显示,1个显示通道数,其余3个显示采样值。用单片机驱动LED数码管有很多方法,按译码方式可分为硬件译码和软件译码;按显示方式可分为静态显示和动态(扫描)显示。a 译码方式方案一:硬件译码硬件译码就是显示的段码完全由硬件完成,CPU只要送出标准的BCD码即可,硬件接线有一定标准。方案二:软件译码软件译码是
22、用软件来完成硬件的功能,接线灵活,显示段码完全由软件来处理,是目前常用的显示驱动方式。由于采样信号非固定值,所以采用软件译码方式对LED数码管进行显示驱动。b 显示方法方案一:静态显示静态显示,显示驱动电路具有输出锁存功能,单片机将所要显示的数据送出后停止传送,直到下一次显示数据需要更新时再传送一次数据。编程容易,管理简单,显示亮度高,显示数据稳定,占用很少的CPU时间。但引线多,线路复杂,硬件成本高。方案二:动态显示动态显示就是一位一位地轮流点亮显示器的各个位(扫描)。对于显示器的每一位而言,每隔一段时间点亮一次,需要CPU时刻对显示器件进行数据刷新,显示数据会有闪烁感,占用的CPU时间多。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 自动化 毕业设计 基于 单片机 输入 模拟 信号 数值 显示器 设计
链接地址:https://www.31ppt.com/p-4142245.html