毕业设计论文_基于单片机的数字电压表.doc_第1页
毕业设计论文_基于单片机的数字电压表.doc_第2页
毕业设计论文_基于单片机的数字电压表.doc_第3页
毕业设计论文_基于单片机的数字电压表.doc_第4页
毕业设计论文_基于单片机的数字电压表.doc_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

郑州轻工业学院郑州轻工业学院 本科毕业设计(论文) 题 目 _基于单片机的数字电压表_ _ _ 学生姓名 李 琛 专业班级 自动化 04-2 学 号 204401010217 院 (系) 电气信息工程学院 指导教师 赵 志 永 完成时间 2008 年 6 月 5 日 基于单片机的数字电压表 i 基于单片机的数字电压表 摘要 随着电子科学技术的发展,电子测量成为广大电子工作者必须掌握的手段,对 测量的精度和功能的要求也越来越高,而电压的测量甚为突出,因为电压的测量最 为普遍。本设计在参阅了大量前人设计的数字电压表的基础上,利用单片机技术结 合 a/d 转换芯片构建了一个直流数字电压表。本文首先简要介绍了设计电压表的主 要方式以及单片机系统的优势;然后详细介绍了直流数字电压表的设计流程,以及 硬件系统和软件系统的设计,并给出了硬件电路的设计细节,包括各部分电路的走 向、芯片的选择以及方案的可行性分析等。 近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,在多方面显 示出了它的优势,值得进一步学习和研究。但是仅单片机方面的知识是不够的,还 应根据具体硬件结构,以及针对具体应用对象特点的软件结合,加以完善。 关键词 单片机(mcu) a/d 转换 adc0809 基于单片机的数字电压表 ii digital voltmeter based on microcontroller abstract with the development of electronic science and technology, electronic measuring a vast number of electronic workers must have the means to measure the accuracy and function of increasingly high requirements, and voltage measurement is obvious, because the measured voltage is most common. the design see a lot of our predecessors in the design of digital voltage meter on the basis of using scm technology with a / d converter chip construction of a dc voltage digital form. this paper briefly introduced the design voltage meter and the main form of the advantages of scm system and then described in detail the number of dc voltage meter design processes, systems and software and hardware system design, and gives details of the hardware circuit design, including the direction of the circuit, chip and the choice of the feasibility analysis. in recent years, with the rapid development of science and technology, scm applications are continually deepening, in many ways to display its advantages, it is worth further study and research. however, only the knowledge scm is not enough, the structure should be based on specific hardware and application-specific characteristics of the target software combination, to be perfect. key words microcontroller (mcu),a / d converter,adc0809 目 录 摘要i abstract ii 1 引言.1 2 系统原理及基本框图.3 3 硬件电路设计.4 3.1 输入电路.4 3.2 单片机芯片选择4 3.3 a/d 转换器与单片机接口电路8 3.3.1 a/d 转换器芯片选择.8 3.3.2 a/d 转换电路9 3.3.3 adc0809 a/d 转换器.9 3.4 led 数码管12 3.4.1 性能特点12 3.4.2 性能简易检测13 3.4.3 使用注意事项13 3.5 通讯模块.14 3.6 报警电路的设计14 4 软件设计及流程图.15 4.1 程序设计内容15 4.2 程序流程框图15 4.3 c51 程序(见附录 3).16 4.4 通讯模块程序设计.16 结束语.18 致 谢.20 参考文献.21 附 录 一.22 附 录 二.25 基于单片机的数字电压表 1 1 引言 在电量的测量中,电压、电流和频率是最基本的三个被测量,其中电压量的测 量最为经常。而且随着电子技术的发展,更是经常需要测量高精度的电压,所以数 字电压表就成为一种必不可少的测量仪器。数字电压表(digital voltmeter)简称 dvm,它是采用数字化测量技术,把连续的模拟量(直流或交流输入电压)转换成 不连续、离散的数字形式并加以显示的仪表。由于数字式仪器具有读数准确方便、 精度高、误差小、灵敏度高和分辨率高、测量速度快等特点而倍受青睐。本设计从 各个角度分析了由单片机组成的数字电压表的设计过程及各部分电路的组成及其原 理,并且分析了程序如何驱动单片机进而使系统运行起来的原理及方法。 本设计主要分为两部分:硬件电路及软件程序。而硬件电路又大体可分为单片 机系统电路、分压电路、a/d 转换电路、led 显示电路及语音报读电路,各部分电 路的设计及原理将会在硬件电路设计部分详细介绍;程序的设计使用 c 语言编程, 利用 keil 软件对其编译和仿真,其流程框图将会在软件设计部分给出。 以下将对数字电压表的发展及特点进行论述。 数字电压表自从一九五二年问世以来,随着电子技术的飞跃发展,特别是目前, 作为测量仪表、模拟指示仪表的数字化以及自动测量的系统,而得到了很大的发展。 一、数字仪表的发展趋势 采用新技术、新工艺,由 lsi 和 vlsi 构成的新型数字仪表及高档智能仪器的大 量问世,标志着电子仪器领域的一场革命,也开创了现代电子测量技术的先河。新 型数字仪表的发展主要有四个方向: 1.广泛采用新技术,不断开发新产品 2.向模块化发展 新一代数字仪表正朝着标准模块化的方向发展。预计在不久的将来,许多数字 仪表将由标准化、通用化、系列化的模块所构成,给电路设计和安装调试、维修带 来极大方便。 表面安装技术(smt)和表面安装元器件(smd)将获得普遍应用。这项技术被 誉为世界电子工艺技术的一项重要突破。所谓表面安装是将微型化的表面安装集成 电路(smic)和表面安装元件,用粘贴工艺直接安装在印刷板上,再用波峰焊接机 基于单片机的数字电压表 2 焊接,由此取代传统的打孔焊接工艺,使印刷板安装密度大为增加,可靠性得到明 显提高。 3.多重显示仪表 为彻底解决数字仪表不便于观察连续变化量的技术难题,“数字/模拟条图”双 显示仪表已成为国际流行款式,它兼有数字仪表准确度高、模拟式仪表便于观察被 测量的变化过程及变化趋势的两大优点。 模拟条图大致分成三类:液晶(lcd)条图,呈断续的条状,这种显示器的分 辨力高、微功耗,体积小,低压驱动,适于电池供电的小型化仪表。等离子体 (pdp)光柱显示器,其优点是自身发光,亮度高,显示清晰,观察距离远,分辨力 较高,缺点是驱动电压高,耗电较大。led 光柱,它是又多只发光二极管排列而 成。这种显示器的亮度高,成本低,但象素尺寸较大,功耗高,驱动电路复杂。 4.操作简单化 二、数字电压表的特点 1.显示清晰直观,读数准确 传统的模拟式仪表必须借助于指针和刻度盘进行读数,在读数过程中不可避免 的会引入人为的测量误差。数字电压表则采用先进的数显技术,使测量结果一目了 然,只要仪表不发生跳读现象,测量结果就是唯一的。 新型数字电压表还增加了标志符显示功能,包括测量项目、符号单位和特殊符 号、为解决 dvm 不能反映被测电压的连续变化过程以及变化趋势这一难题,一种 “数字/模拟条图”仪表业已问世。“模拟图条”有双重含义:第一,被测量为模拟 量;第二,利用条状图形来模拟被测量的大小及变化趋势。这类仪表将数字显示与 高分辨率模拟条图显示集于一身,兼有 dvm 与模拟电压表之优点。 智能数字电压表均带微处理器和标准接口,可配合计算机和打印机进行数据处 理或自动打印,构成完整的测试系统。准确度是测量结果中系统误差与随机误差的 综合。 2.分辨率高,测量范围宽 数字电压表在最低电压量程上末位 1 个字所代表的电压值,称为仪表的分辨力, 它反映仪表灵敏度的高低。分辨力随显示位数的增加而提高。分辨率是指所能显示 的最小数字(零除外)与最大数字的百分比。多量程 dvm 一般可测量 01000v 直流 电压,配上高压探头还可测上万伏的高压。 基于单片机的数字电压表 3 3.扩展能力强 在数字电压表的基础上,还可扩展成各种通用及专用数字仪表、数字多用表 (dmm)和智能仪表,以满足不同的需要。 4.测量速度快 数字电压表在每秒钟内对被测电压的测量次数,叫测量速率,单位是“次/s”。 它主要取决于 a/d 转换器的转换速率,其倒数是测量周期。 5.输入阻抗高 ,集成度高,微功耗 数字电压表具有很高的输入阻抗,通常为 10m10000m,最高可达 1t。 并且新型数字电压表普遍采用 cmos 大规模集成电路,整机功耗很低。 6.抗干扰能力强 5 位以下的 dvm 大多采用双积分式 a/d 转换器,其串模抑制比、共模抑制比各 别可达 100db、80120db。高档 dvm 还采用数字滤波、浮地保护等先进技术,进一 步提高了抗干扰能力,共模抑制比可达 180db。 2 系统原理及基本框图 如图 1 所示,模拟电压经过档位切换到不同的分压电路衰减后,经隔离干扰送 到 a/d 转换器进行 a/d 转换,然后送到单片机中进行数据处理。处理后的数据送到 led 中显示,同时通过串行通讯与上位机通信。 图 1 系统基本方框图 at89s52 单片机 a/d 转换 器 4 位 led 显示 器 报 警 电 路 模拟 电压 输入 量程 控制 电路 通讯 模块 max 232 基于单片机的数字电压表 4 3 硬件电路设计 3.1 输入电路 123456 a b c d 654321 d c b a title numberrevisionsize b date:13-jun-2008sheet of file:c:documents and settingshykj桌桌lisen .ddbdrawn by: k2 p2.4 p2.5 p2.6 p2.7 123456 a b c d 654321 d c b a title numberrevisionsize b date:13-jun-2008sheet of file:c:documents and settingshykj桌桌lisen .ddbdrawn by: k1 r9 9m r8 900k r7 90k r6 9k dc+ com 图 2 量程切换开关 图 3 衰减输入电路 输入电路的作用是把不同量程的被测的电压规范到 a/d 转换器所要求的电压值。 智能化数字电压表所采用的单片逐次逼近式 a/d 转换器 adc0809,它要求输入电压 0-5v。本仪表设计是 0-500v 电压,灵敏度高所以可以不加前置放大器,只需衰减器, 如图 3 所示 9m、900k、90k、和 10k 电阻构成 1/10、1/100、1/1000 的衰减器。衰 减输入电路可由开关来选择不同的衰减率,从而切换档位。为了能让 cpu 自动识别 档位,还要有图 2 的硬件连接。 3.2 单片机芯片选择 单片机采用mcs-51系列单片机。由atmel公司生产的at89s52是一种低功耗、高 性能cmos8位微控制器,具有8k 在系统可编程flash 存储器。使用atmel 公司高密 度非易失性存储器技术制造,与工业80c51 产品指令和引脚完全兼容。在单芯片上, 拥有灵巧的8 位cpu 和在线系统可编程flash,使得at89s52为众多嵌入式控制应用 系统提供高灵活、有效的解决方案。at89s52具有以下标准功能: 8k字节 基于单片机的数字电压表 5 flash,256字节ram,32 位i/o 口线,看门狗定时器,2 个数据指针,三个16 位定 时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。空闲 模式下,cpu停止工作,允许ram、定时器/计数器、串口、中断继续工作。掉电保护 方式下,ram内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或 硬件复位为止。而且,它还具有一个看门狗(wdt)定时/计数器,如果程序没有正 常工作,就会强制整个系统复位,还可以在程序陷入死循环的时候,让单片机复位 而不用整个系统断电,从而保护你的硬件电路。 at89s52有40个引脚,32个外部双向输入/输出(i/o)端口,同时内含2个外中 断口,2个16位可编程定时计数器,2个全双工串行通信口,片上flash允许程序存储 器在系统可编程,亦适于常规编程器。其将通用的微处理器和flash存储器结合在一 起,特别是可反复擦写的flash存储器可有效地降低开发成本。 单片机选用的 atmel 公司的 at89s52,如图 4 所示。该芯片具有低功耗、高性 能的特点,是采用 cmos 工艺的 8 位单片机,与 at89c51 完全兼容。at89s52 还有以 下主要特点: 采用了 atmel 公司的高密度、非易失性存储器(nv-sram)技术; 其片内具有 256 字节 ram,8kb 的可在线编程(isp)flash 存储器; 有 2 种低功耗节电工作方式:空闲模式和掉电模式 片内含有一个看门狗定时器(wdt) ,wdt 包含一个 14 位计数器和看门狗定时 器复位寄存器(wdtrst),只要对 wdtrst 按顺序先写入 01eh,后写入 0e1h,wdt 便 启动,当 cpu 由于扰动而使程序陷入死循环或“跑飞”状态时,wdt 即可有效地使 系统复位,提高了系统的抗干扰性能。 基于单片机的数字电压表 6 图 4 at89s52引脚图 单片机管脚说明: vcc:供电电压。 gnd:接地。 p0口:p0口为一个8位漏级开路双向i/o口,每脚可吸收8ttl门流。当p0口的管 脚第一次写1时,被定义为高阻输入。p0能够用于外部程序数据存储器,它可以被定 义为数据/地址的第八位。在fiash编程时,p0 口作为原码输入口,当fiash进行校 验时,p0输出原码,此时p0外部必须被拉高。 p1口:p1口是一个内部提供上拉电阻的8位双向i/o口,p1口缓冲器能接收输出 4ttl门电流。p1口管脚写入1后,被内部上拉为高,可用作输入,p1口被外部下拉为 低电平时,将输出电流,这是由于内部上拉的缘故。在flash编程和校验时,p1口作 为第八位地址接收。 p2口:p2口为一个内部上拉电阻的8位双向i/o口,p2口缓冲器可接收,输出4个 ttl门电流。当p2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因 此作为输入时,p2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。 p2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,p2口输出地址 的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储 器进行读写时,p2口输出其特殊功能寄存器的内容。p2口在flash编程和校验时接收 高八位地址信号和控制信号。 基于单片机的数字电压表 7 p3口:p3口管脚是8个带内部上拉电阻的双向i/o口,可接收输出4个ttl门电流。 当p3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部 下拉为低电平,p3口将输出电流(ill)这是由于上拉的缘故。 p3口也可作为at89s52的一些特殊功能口,如下表所示: 管脚备选功能 p3.0 rxd(串行输入口) p3.1 txd(串行输出口) p3.2 /int0(外部中断0) p3.3 /int1(外部中断1) p3.4 t0(记时器0外部输入) p3.5 t1(记时器1外部输入) p3.6 /wr(外部数据存储器写选通) p3.7 /rd(外部数据存储器读选通) p3口同时为闪烁编程和编程校验接收一些控制信号。 rst:复位输入。当振荡器复位器件时,要保持rst脚两个机器周期的高电平时 间。 ale/prog:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地 位字节。在flash编程期间,此引脚用于输入编程脉冲。在平时,ale端以不变的频 率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉 冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ale 脉冲。如想禁止ale的输出可在sfr8eh地址上置0。此时, ale只有在执行 movx,movc指令是ale才起作用。另外,该引脚被略微拉高。如果微处理器在外部执 行状态ale禁止,置位无效。 /psen:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器 周期两次/psen有效。但在访问外部数据存储器时,这两次有效的/psen信号将不出 基于单片机的数字电压表 8 现。 /ea/vpp:当/ea保持低电平时,则在此期间外部程序存储器(0000h-ffffh), 不管是否有内部程序存储器。注意加密方式1时,/ea将内部锁定为reset;当/ea端 保持高电平时,此间内部程序存储器。在flash编程期间,此引脚也用于施加12v编 程电源(vpp)。 xtal1:反向振荡放大器的输入及内部时钟工作电路的输入。 xtal2:来自反向振荡器的输出。 at89s52的引脚图如下图所示: 123456 a b c d 654321 d c b a title numberrevisionsize b date:13-jun-2008sheet of file:c:documents and settingshykj桌桌lisen .ddbdrawn by: p1.0/t2 1 p1.1/t2ex 2 p1.2 3 p1.3 4 p1.4 5 p1.5 6 p1.6 7 p1.7 8 rst 9 p3.0/rxd 10 p3.1/txd 11 p3.2/int0 12 p3.3/int1 13 p3.4/t0 14 p3.5/t1 15 p3.6/wr 16 p3.7/rd 17 xtal 2 18 xtal 1 19 vss 20 p2.0/a8 21 p2.1/a9 22 p2.2/a10 23 p2.3/a11 24 p2.4/a12 25 p2.5/a13 26 p2.6/a14 27 p2.7/a15 28 psen 29 ale 30 ea/vpp 31 p0.7/ad7 32 p0.6/ad6 33 p0.5/ad5 34 p0.4/ad4 35 p0.3/ad3 36 p0.2/ad2 37 p0.1/ad1 38 p0.0/ad0 39 vcc 40 u6 at89s52 c9 30pf c8 30pf s1 rst 12 y1 6m r2 2kr3 200 c4 22u vcc vcc ale rst 12 ds1 le d0 12 ds2 le d0 r4 res2 220 r5 res2 220 d0 d1 d2 d3 d4 d5 d6 d7 c1 c2 c3 c4 c5 c6 c7 c8 s1 s2 s3 s4 st oe eoc clk vcc p2.7 p2.6 p2.5 p2.4 vcc 图5 at89s52的引脚图 3.3 a/d 转换器与单片机接口电路 3.3.1 a/d 转换器芯片选择 基于单片机的数字电压表 9 a/d 转换器是模拟量输入通道中的一个环节,单片机通过 a/d 转换器把输入模 拟量变成数字量再处理。 随着大规模集成电路的发展,目前不同厂家已经生产出了多种型号的 a/d 转换 器,以满足不同应用场合的需要。如果按照转换原理划分,主要有 3 种类型,即双 积分式 a/d 转换器、逐次逼近式 a/d 转换器和并行式 a/d 转换器。目前最常用的是 双积分和逐次逼近式。 双积分式 a/d 转换器具有抗干扰能力强、转换精度高、价格便宜等优点,比如 icl71xx 系列等,它们通常带有自动较零、七段码输出等功能。与双积分相比,逐 次逼近式 a/d 转换器的转换速度更快,而且精度更高,比如 adc0808、adc0809 等, 它们通常具有 8 路模拟选通开关及地址译码、锁存电路等,它们可以与单片机系统 连接,将数字量送单片机进行分析和显示。 本次设计采用 adc0809 逐次逼近式 a/d 转换器。 3.3.2 a/d 转换电路 a/d 转换器的转换精度对测量电路极其重要,它的参数关系到测量电路性能。 本设计采用逐次逼近式 a/d 转换器。 3.3.3 adc0809 a/d 转换器 adc0809 是带有 8 位 a/d 转换器、8 路多路开关以及微处理机兼容的控制逻辑的 cmos 组件。它是逐次逼近式 a/d 转换器,可以和单片机直接接口。 (1)adc0809 的内部逻辑结构 基于单片机的数字电压表 10 图 6 adc0809 的内部逻辑结构 由上图可知,adc0809 由一个 8 路模拟开关、一个地址锁存与译码器、一个 a/d 转换器和一个三态输出锁存器组成。多路开关可选通 8 个模拟通道,允许 8 路模拟 量分时输入,共用 a/d 转换器进行转换。三态输出锁器用于锁存 a/d 转换完的数字 量,当 oe 端为高电平时,才可以从三态输出锁存器取走转换完的数据。 (2)引脚结构 123456 a b c d 654321 d c b a title numberrevisionsize b date:13-jun-2008sheet of file:h:桌桌lis en.dd bdrawn b y: in3 1 in4 2 in5 3 in6 4 in7 5 sta rt 6 eo c 7 d3 8 oe 9 cl k 10 vc c 11 re f+ 12 gn d 13 d1 14 d2 15 re f- 16 d0 17 d4 18 d5 19 d6 20 d7 21 al e 22 ad d c 23 ad d b 24 ad d a 25 in0 26 in1 27 in2 28 u? ad c0809fn al e cl k oe eo c d0 d1 d2 d3 d4 d5 d6 d7 vc c vc c 图 7 adc0809 in0in7:8 条模拟量输入通道。 基于单片机的数字电压表 11 adc0809 对输入模拟量要求:信号单极性,电压范围是 05v,若信号太小,必 须进行放大;输入的模拟量在转换过程中应该保持不变,如若模拟量变化太快,则 需在输入前增加采样保持电路。 地址输入和控制线:4 条。 ale 为地址锁存允许输入线,高电平有效。当 ale 线为高电平时,地址锁存与 译码器将 a,b,c 三条地址线的地址信号进行锁存,经译码后被选中的通道的模拟 量进转换器进行转换。a,b 和 c 为地址输入线,用于选通 in0in7 上的一路模拟 量输入。通道选择表如下表所示。 cba选择的 通道 000in0 001in1 010in2 011in3 100in4 101in5 110in6 111in7 数字量输出及控制线:11 条。 st 为转换启动信号。当 st 上跳沿时,所有内部寄存器清零;下跳沿时,开始 进行 a/d 转换;在转换期间,st 应保持低电平。eoc 为转换结束信号。当 eoc 为高 电平时,表明转换结束;否则,表明正在进行 a/d 转换。oe 为输出允许信号,用于 控制三条输出锁存器向单片机输出转换得到的数据。oe1,输出转换得到的数据; oe0,输出数据线呈高阻状态。d7d0 为数字量输出线。 clk 为时钟输入信号线。因 adc0809 的内部没有时钟电路,所需时钟信号必须 由外界提供,通常使用频率为 500khz, vref(),vref()为参考电压输入。 2 adc0809 应用说明 (1) adc0809 内部带有输出锁存器,可以与 at89s51 单片机直接相连。 基于单片机的数字电压表 12 (2) 初始化时,使 st 和 oe 信号全为低电平。 (3) 送要转换的哪一通道的地址到 a,b,c 端口上。 (4) 在 st 端给出一个至少有 100ns 宽的正脉冲信号。 (5) 是否转换完毕,我们根据 eoc 信号来判断。 (6) 当 eoc 变为高电平时,这时给 oe 为高电平,转换的数据就输出给单片机了。 adc0809 采用双列直插式封装,共有 28 条引脚,各管脚的功能分四组简述如下: 1、模拟信号输入 in0in7: in0-in7 为八路模拟电压输入线,加在模拟开关 上,工作时采用时分割的方式,轮流进行 a/d 转换。 2、地址输入和控制线 :地址输入和控制线共 4 条,其中 adda、addb 和 addc 为地址输入线,用于选择 in0-in7 上哪一路模拟电压送给比较器进行 a/d 转换。 ale 为地址锁存允许输入线,高电平有效。当 ale 线为高电平时,adda、addb 和 addc 三条地址线上地址信号得以锁存,经译码器控制八路模拟开关通路工作。 3、数字量输出及控制线(11 条):start 为“启动脉冲”输入线,上升沿清 零,下降沿启动 adc0809 工作。eoc 为转换结束输出线,该线高电平表示 ad 转换 已结束,数字量已锁入“三态输出锁存器”。d0-d7 为数字量输出线,d7 为最高位。 enable 为“输出允许”线,高电平时能使 d0-d7 引脚上输出转换后的数字量。 4、电源线及其他(5 条):clock 为时钟输入线,用于为 adc0809 提供逐次 比较所需,一般为 640khz 时钟脉冲。vcc 为+5v 电源输入线,gnd 为地线。+vref 和-vref 为参考电压输入线,用于给电阻网络供给标准电压。+vref 常和 vdd 相连, -vref 常接地。 adc0809 芯片性能特点: 是一个逐次逼近型的 a/d 转换器,外部供给基准电压; 单通道转换时间 116us;分辨率为 8 位,带有三态输出锁存器,转换结束时,可由 cpu 打开三态门,读出 8 位的转换结果;有 8 个模拟量的输入端,可引入 8 路待转换的模 拟量。 3.4 led 数码管 3.4.1 性能特点 基于单片机的数字电压表 13 led 数码管的主要特点如下: (1)能在低电压、小电流条件下驱动发光,能与 cmos、itl 电路兼容。 (2)发光响应时间极短(01s),高频特性好,单色性好,亮度高。 (3)体积小,重量轻,抗冲击性能好。 (4)寿命长,使用寿命在 10 万小时以上,甚至可达 100 万小时。成本低。 因此它被广泛用作数字仪器仪表、数控装置、计算机的数显器件。 3.4.2 性能简易检测 led 数码管外观要求颜色均匀、无局部变色及无气泡等,在业余条件下可用干 电池作进一步检查。现以共阴数码管为例介绍检查方法。 将 3 伏干电池负极引出线固定接触在 led 数码管的公共负极端上,电池正极引 出线依次移动接触笔画的正极端。这一根引出线接触到某一笔画的正极端时,那一 笔画就应显示出来。用这种简单的方法就可检查出数码管是否有断笔(某笔画不能显 示),连笔(某些笔画连在一起),并且可相对比较出不同笔划发光的强弱性能。若检 查共阳极数码管,只需将电池正负极引出线对调一下,方法同上。利用数字万用表 的 hfe 插口能够方便地检查 led 数码管的发光情况。选择 npn 挡时,c 孔带正电, 月孔带负电。例如检查 lts547r 型共阴极 led 数码管时,从 e 孔插入一根单股细导 线,导线引出端接 9 极(第脚与第脚在内部连通,可任选一个作为 );再从 c 孔引出一根导线依次接触各笔段电极,可分别显示所对应的笔段。 3.4.3 使用注意事项 (1)检查时若发光暗淡,说明器件已老化,发光效率太低。如果显示的笔段残缺 不全,说明数码管已局部损坏。 (2)对于型号不明、又无管脚排列图的 led 数码管,用数字万用表的 h 距挡可完 成下述测试工作:判定数码管的结构形式(共阴或共阳);识别管脚;检查全 亮笔段。预先可假定某个电极为公共极,然后根据笔段发光或不发光加以验证。当 笔段电极接反或公共极判断错误时,该笔段就不能发光。 本设计中的 4 位 led 数码管采用动态显示。 基于单片机的数字电压表 14 123456 a b c d 654321 d c b a title nu mberrev isionsize b date:13-jun-2 008sheet o f file:h:桌桌lis en.dd bdrawn b y: e 1 d 2 dip 3 c 4 g 5 s4 6 b 7 s3 8 s2 9 f 10 a 11 s1 12 u7 7se gx4 s1 c1 s2 c2 s3 c3 s4 c4 c5 c6 c7 c8 q1q2q3q4 r10 330 r11 330 r12 330 r13 330 s1 s2 s3 s4 vc c p2.0p2.1p2.2p2.3 1 2 jp8 header 2 h 图 8 4 位数码管 3.5 通讯模块 89s52 内部已集成通信接口 urt,只需扩展一片 max232 芯片将输出信号转换成 rs-232 协议规定的电平标准, max232 是一种双组驱动器/接收器,每个接收器将 eia/tia-232-e 电平输入转换为 5v ttl/cmos 电平。每个驱动器将 ttl/cmos 输 入电平转换 为 eia/tia-232-e 电平。即 eia 接口,就是把 5v 转换为-8v 到-15v 电位 0v 转换为 8v 到 15v 再经 rxd 输出,接收时由 rxd 输入,把-8v 到-15v 电 位转换为 5v,8v 到 15v 转换为 0v。max232 的工作电压只需 5v,内部有振荡电 路产生正负 9v 电位。 max232 引脚功能图如下图所示。 图 9 max232 引脚功能图 基于单片机的数字电压表 15 3.6 报警电路的设计 报警是指在被测量的电压超出了电压表所能测量的范围时,电压表发出的信号。 123456 a b c d 654321 d c b a title numberrevisionsize b date:7-jun-2008 sheet of file:e:8mydesign1.ddbdrawn by: 9013 r23 470 +5 p3.2 bu zze r q6 图 10 报警电路 在这次的设计中,采用蜂鸣器报警。其电路如图 10 所示: 由于电压表能够进行量程的自动切换,因此当单片机收到超量程信号时,单片 机通过设置 p3.5 为“1” ,蜂鸣器就开始报警,直到检测到超量程信号消失,单片机 设置 p3.5 为“0” ,蜂鸣器停止报警,在这里三极管起开关的作用。 4 软件设计及流程图 4.1 程序设计内容 由于 adc0809 在进行 a/d 转换时需要有 clk 信号,而此时的 adc0809 的 clk 是接在 at89s51 单片机的 p3.3 端口上,也就是要求从 p3.3 输出 clk 信号供 adc0809 使用。因此产生 clk 信号的方法就得用软件来产生了。 由于 adc0809 的参考电压 vrefvcc,所以转换之后的数据要经过数据处理, 在数码管上显示出电压值。实际显示的电压值(d/256*vref)。 基于单片机的数字电压表 16 4.2 程序流程框图 图 11 a/d 转换测量子函数流程图 开始 启动一次转换 a/d 转换结束? eoc=1? 取数据(oe=1) n y 0809 地址加 1 地址数小于 8? n y 返回 基于单片机的数字电压表 17 图 12 主函数流程图 4.3 c51 程序(见附录 3) 4.4 通讯模块程序设计 89s52 单片机内部有一个全双工的串行通信口,即串行接收和发送缓冲器 (sbuf) ,这两个在物理上独立的接收发送器,既可以接收数据也可以发送数据。 但接收缓冲器只能读出不能写入,而发送缓冲器则只能写入不能读出,它们的地址 开始 系统初始化 启动 a/d 转换 采集 a/d 转换值 是否采集了十次? 对十次数据求平均值 n y 显示数值 是否到 12s? 报读电压值 y y n n end 基于单片机的数字电压表 18 为 99h。这个通信口既可以用于网络通信,亦可实现串行异步通信,还可以构成同 步移位寄存器使用。如果在传行口的输入输出引脚上加上电平转换器,就可方便地 构成标准的 rs-232 接口。89s52 的串行口有 4 种工作方式,1 种同步方式,3 种异 步方式。本方式选方式 1,一帧数据有 10 位,包括起始位 0、8 位数据位和 1 位停 止位 1。串行口电路在发送时能自动加入起始位和停止位。在接收时,停止位进入 scon 中的 rb8 位。方式 1 的波特率是可变的,由定时器 1 的溢出率决定。由定时 器 1 最好工作在方式 2 上(自动重装载模式) ,这样只需对 th1 设置一次即可。数 据通过 txd 输出,在 8 个位输出完毕后,scon 寄存器的 ti 位被设为 1,cpu 只 要判断 ti 是 1,接着发送下一个字节。 波特率的设定:定时器 t1 工作在方式 2 的初值为: 为了减小误差,时钟振荡频率采用 11.0592mhz,选用定时器 t1 工作在方式 2 作 波特率发生器,波特率为 300,设 smod 为 0,依公式(1.1)得初值为: 所以 th1 = tl1 = a0h mov scon ,#50h ;urat 工作在方式 1 上 mov tmod ,#20h ;time1 工作在方式 2 上 mov th1 , #0a0h ;设置波特率为 300 本设计的中断十分重要,为了减少相互间的干扰,保证可靠性,采用查询方式 判断是否发送完毕。 a6: jbc ti , a5 ;如果发送完毕跳,清标志位,跳到 a5。 ajmp a6 ;否则跳到 a6,等待 a5: inc r0 (1.1) 基于单片机的数字电压表 19 结束语 通过这次毕业设计,我对专业知识有了更深刻的理解,对设计所需软件有了更 熟练的操作。我们曾经做过数字电路的课程设计,那时就用到软件 protel 来画电路 图,但当时还不是很会用。而经过这次设计,我已经能越来越熟练的操作它了。还 有对其进行软件编程,使我对单片机的软件编程更深入的了解了。 我们的课程设计结束了,但是它留给我的印象是不可磨灭的。无论我以后会不 会涉及到单片机程序编程的研究,我想,我至少掌握了一种系统的研究方法,我们 学习的目的就在于运用,我们运用这种研究方法的时候会很多,我最后要感谢毕业 设计,它的确教会我很多;同时也要感谢各位老师在课程设计期间对我的指导,使 我才能更顺利地完成毕业设计。 调试程序时,我遇到了很多困难,例如:参考文献错误的误导,调试环境的错 误使用,硬件改装,程序本身不可预见的错误等。 经历了,写程序,调试,仿真,如果成功写进硬件,不成功继续改进;写进硬 件后出问题了,就不知是硬件问题还是元件问题了。 没有人能告诉你错在那里,没有人能告诉你该怎么做,自己的东西只有自己最 清楚,别人只能给你提供一些建议或资料,真正的设计还要自己亲自去完成。 设计做完之后我对数字电压表的应用有所心得,下面是一些提示: 1.数字电压表(数字面板表)的具体应用电路是何止千万的,只要掌握了一些最 基本的应用,就可以举一反三地越来越熟练,熟就能生巧,就能按照您的构思去得 心应手地用好它! 2.尽管数字电压表的输入阻抗可以达到 1000 兆欧姆,但是,这个阻抗仅仅是 对输入信号而言的,与通常电力系统泛称的“绝缘电阻”有着天壤之别!因此,千 万不能把高于芯片供电电压的任何电压输入到电路中!以免造成损失或者危险! 3.数字电压表(数字面板表)属于一种测量工具,其本身的好坏直接影响到测量 结果,因此,上面所有例子中,其使用的电阻要求精度均不能低于 1% ,在分流、 分压和标准电阻链中,最好能够使用 0.5% 或者 0.1% 精度的电阻。电路中使用的 基于单片机的数字电压表 20 电容器也要求使用一种俗称为 cbb 的电容,除各别地方之外,一般是不能使用瓷介 电容的。 4.不要在电路本身没有送上工作电源的时候就加上信号,这很容易损坏芯片。 断掉工作电源前也必须先把信号撤掉。 5.数字电压表(数字面板表)的使用和扩展应用,还必须很好阅读产品供货商提 供的说明书,千万不要急于送电使用它。 基于单片机的数字电压表 21 致 谢 在我写本论文的过程中,赵志永老师给我提供了许多资料,并对实践中出现的 问题给予耐心的解答,完稿之后在百忙之中仔细阅读,给出修改意见。时常向赵老 师求助,他从不推辞,认真解答。赵老师爱岗敬业,治学严谨,思维严密,平易近 人是我十分尊敬的老师,在此对他表示感谢。 在本文录入的过程中,得到了李科豪、李芳同学的帮助,在硬件设计中得到了 他们提供的很多有益的建议,使我能够进一步完善自己的毕业设计。在这里对他们 也表示深深的感谢! 基于单片机的数字电压表 22 参考文献 1 张友德等. 单片微型机原理、应用和实验m.电子工业出版社.1999. 2 吴经国等.单片机应用技术m. 中国电力出版社.2002. 3 李群芳.单片机微型计算机与接口技术m.电子工业出版社.2003. 4 阉石.数字电子技术基础m.高等教育出版社.2001. 5 周立功.单片机实验与实践m.北京航空航天大学出版社.2003. 6 赵茂泰. 智能仪器原理及应用m. 电子工业出版社出版社.2004. 7 周航慈. 单片机应用程序设计技术(修订版)m.北京航空航天大学出版社.2003. 8n. sriskanthan, p. tan, a. karande. bluetoothbased home automation systemj.microprocessors and microsystems,2002,(26) 9mitel.mt8888c integrated dtmf transceiver with intel micro interface m,1999:113-120 10 张永瑞等.电子测量技术基础m. 西安电子科技大学出版社.1994. 11 林占江.电子测量技术(第 2 版)m.电子工业出版社.2007. 12 沙占友.新型数字电压表原理与应用m.机械工业出版社.2006. 13李朝青.单片机原理及接口技术m.北京航空航天大学出版社,1999 14沈红卫.单片机应用系统设计实例与分析m.北京:北京航空航天大学出版社,2003. 15黄亮.基于 at89c51 单片机的数字电压表设计j.电子制作,2006. 16赵文忠,程启明等.微机控制技术m.北京:机械工业出版社,1993. 基于单片机的数字电压表 23 附 录 一 c51 程序设计 i nclude unsigned char code dispbitcode=0xfe,0xfd,0xfb,0xf7, 0xef,0xdf,0xbf,0x7f; unsigned char code dispcode=0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f,0x00; unsigned char dispbuf8=10,10,10,10,0,0,0,0; unsigned char dispcount; unsigned char getdata; unsigned int temp; unsigned char i; sbit st=p30; sbit oe=p31; sbit eoc=p32; sbit clk=p33; void main(void) st=0; oe=0; et0=1; et1=1; 基于单片机的数字电压表 24 ea=1; tmod=0x12; th0=216; tl0=216; th1=(65536-4000)/256; tl1=(65536-4000)%256; tr1=1; tr0=1; st=1; st=0; while(1) if(eoc=1) oe=1; getdata=p0; oe=0; temp=getdata*235; temp=temp/128; i=5; dispbuf0=10; dispbuf1=10; dispbuf2=10; dispbuf3=10; dispbuf4

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论