593638877毕业设计(论文)基于单片机的数字电压表设计

上传人:仙*** 文档编号:33889038 上传时间:2021-10-19 格式:DOC 页数:44 大小:1.77MB
返回 下载 相关 举报
593638877毕业设计(论文)基于单片机的数字电压表设计_第1页
第1页 / 共44页
593638877毕业设计(论文)基于单片机的数字电压表设计_第2页
第2页 / 共44页
593638877毕业设计(论文)基于单片机的数字电压表设计_第3页
第3页 / 共44页
点击查看更多>>
资源描述
本科毕业设计论文本科毕业设计论文题目题目:基于单片机的数字电压表设计基于单片机的数字电压表设计 院、院、 系:系: 光电工程学院光电工程学院 学科专业:学科专业: 光电信息工程光电信息工程 学学 生:生: 学学 号:号: 指导教师:指导教师: 2008 年 6 月I基于单片机的数字电压表设计基于单片机的数字电压表设计摘摘 要要在日常维修、教学和科研中,电压表是不可缺少的。本课题目的就是以单片机为基础设计出一种结构简单、工作可靠、灵活性好的数字电压表。本文首先介绍了数字电压表的发展现状及课题的目的和意义。然后,对基于单片机的数字电压表的硬件系统、软件系统的设计原理及具体实现方案作以详细介绍,其中,在硬件部分,较为详细的讨论了硬件的选择、设计原理、使用方法和功能,同时,对各部分接口电路作以介绍;在软件部分,介绍了软件所使用的编程语言和编程思路。最后,对电路调试、印刷 PCB 板的制作及系统的抗干扰设计作了进一步分析和总结。本文设计的数字电压表,其硬件电路所用元件较少、成本低、调节简单;软件采用 C 语言编程,其灵活性高,可读性强。经过理论研究、原理设计和整机调试,实验结果表明,该方案可行。关键词关键词:单片机; 电压表; A/D 转换器;串行总线 IIDesignDesign ofof DigitalDigital VoltageVoltage MeterMeter BasedBased onon MCUMCUAbstractAbstractIn routine maintenance, teaching and research, voltage meter is indispensable. A direct current digital voltage meter has been designed, which is based on MCU, and has a simple structure, reliable, flexible.Firstly,this paper introduced the development of the base on MCU digital voltage meter and the purpose and significance of topic. Then in details this paper described the design principle of hardware and software systems. And in details the hardware part present a discussion in hardware selection, design principles, instructions and the function, further more, some of the interface circuit have been introduced. The software part introduced the programming language and programming ideas used in codes. Finally, the circuit debugging, the printed plate of PCB production and the anti-jamming system were designed to further analysis and synthesis. The digital voltage meter designed here, have less components in the hardware part, lower cost and easier testing; software used C programming language which is high flexibility and strong readability. After theoretical research, principle design and debugging, the experimental results suppose it is feasible of choosing this program.Keywords:Keywords: MicroMicro ControllerController UnitUnit;voltagevoltage metermeter;A/DA/D ConvertersConverters;SeriesSeries BusBusi目录目录1.1.2 数字电压表的发展历程(1)1.1.3 国内外的发展现状与趋势(1)2.2.1 硬件电路图及工作过程简介(4)2.2.2 软件程序设计简介(6)3.2.1 A/D 转换芯片的选择(7)3.2.2 ADC0809 转换原理介绍(7)3.2.3 ADC0809 芯片介绍(8)3.2.4 ADC0809 与单片机的接口方法(9)3.3.1 单片机介绍(10)3.3.2 采用 AT89C51 的原因(10)中文摘要中文摘要()英文摘要英文摘要()1 1 绪论绪论(1 1)1.1 课题概述(1)1.2 课题的意义和目的(3)1.3 本文所作的主要工作(3)2 2 基于单片机数字电压表的总体设计基于单片机数字电压表的总体设计(4 4)2.1 设计指标(4)2.2 系统概述(4)2.3 小结(6)3 3 基于单片机数字电压表的硬件设计基于单片机数字电压表的硬件设计(7 7)3.1 器件的选择(7)3.2 A/D 转换电路(7)3.3 单片机介绍(10)ii3.3.3 AT89C51 芯片主要性能参数(10)3.3.4 功能介绍(10)3.3.5 芯片管脚介绍及分配(11)3.4.1 ZLG7289 芯片介绍(13)3.4.2 ZLG7289 的主要特征(13)3.4.3 ZLG7289 引脚功能说明(14)3.4.4 ZLG7289 与单片机及数码管的连接(15)3.4.5 时序图中的各项延迟时间(16)3.4.6 控制指令(16)3.5.1 SPI 总线简介(17)3.5.2 SPI 总线的基本结构(17)3.5.3 数据的传输(18)4.1.1 C51 简介(20)4.1.2 程序流程图(21)4.1.3 数据采集模块的设计(23)4.1.4 数据处理模块的设计(23)3.4 显示驱动单元设计(13)3.5 SPI 接口技术(17)3.6 电压显示电路(19)3.7 小结(19)4 4 基于单片机数字电压表的软件设计基于单片机数字电压表的软件设计(2020)4.1 软件系统整体设计(20)4.2 C51 程序(23)4.3 小结(23)5 5 基于单片机数字电压表的抗干扰设计基于单片机数字电压表的抗干扰设计(2323)5.1 硬件系统的可靠性与抗干扰设计(23)iii5.1.1 供电系统抗干扰措施(23)5.1.2 接地(23)5.1.3 传输通道的抗干扰措施(24)6.3.1 调试步骤(28)6.3.2 可能出现的问题解答(28)7.1 主要结论(30)7.2 进一步工作及展望(31)附录附录 (3434)附录 A(34)附录 B(39)5.2 软件系统的可靠性与抗干扰设计(24)5.3 小结(24)6 电路制作及调试电路制作及调试(2626)6.1 PCB 板的制作(26)6.2 系统外观(27)6.3 电路调试(28)6.4 系统调试及结果分析(29)6.4 小结(29)7 7 结论结论(3030)致谢致谢(3232)参考文献参考文献(3333)iv1 1 绪论绪论1.11.1 课题概述课题概述1.1.1.1.2 2 数字电压表的发展历程数字电压表的发展历程 数字电压表简称 DVM,它是采用数字化测量技术设计的电压表。从性能来看:数字电压表的发展从一九五二年美国 NLS 公司由四位电子管数字电压表精度千分之一到现在已经出现 8 位数字电压表。参数可测量直流电压、交流电压、电流、阻抗等。测量自动化程度不断提高,可以和计算机配合显示、计算结果、然后打印出来。目前世界上美国 FLUKE 公司,在直流和低频交流电量的校准领域居国际先进水平。例如该公司生产的“4700A”多功能校准器和“8505”危机数字多用电压表,可用 8 位显示,直流精度可达到5/10-6,读书分辨力为 0.1V。带有 A/D 变换模式、数据输出接口形式 IEEE-488。具有比率测量软件校准和有交流电阻、电流选件。还具有高精度电压校准器“5400A” 、 “5200A” 、“5450A”等数字仪表,都是作为一级计量站和国家级计量站使用的标准仪表。还有英国的“7055”数字电压表采用脉冲调制技术。日本横河公司的“2501”型采用三次采样等等在不断的蓬勃发展1。从发展过程来看:数字电压表自 1952 年问世以来,已有 50 年多年的发展史,大致经历了五代产品。第一代产品是 20 世纪 50 年代问世的电子管数字电压表,第二代产品属于 20 世纪 60 年代出现的晶体管数字电压表,第三带产品为 20 世纪 70 年代研制的中、小规模集成电路的数字电压表。今年来,国内外相继推出有大规模集成电路(LSI)或超大规模集成电路(VLSI)构成的数字电压表、智能数字电压表,分别属于第四代、第五代产品。它们不仅开创了电子测量的先河,更以高准确度、高可靠性、高分辨力、高性价比等优良特性而受到人民的青睐2。1.1.31.1.3 国内外的发展现状与趋势国内外的发展现状与趋势数字电压表作为电压表的一个分支,在近五十年间得到巨大发展,构成数字电压表的核心器件已从早期的中小规模电路跨入到大规模 ASIC(专用集成电路)阶段。数字电压表涉及的范围也从传统的测量扩展至自动控制、传感、通信等领域,展示了广阔的应用前景。传统电压表的设计思路主要分为:用电流计和电阻构成的电压表;用中小规模集成电路构成的电压表;用大规模 ASIC(专用集成电路)构成的电压表。这西安工业大学学士学位论文2几中电压表设计方式各有优势和缺点,分别适用于几种特定的应用环境,同时,也为很多新颖的电压表的设计所借鉴和依据2。近入 21 世纪,随着信息技术一日千里的发展,电压表也必经历从单一测量向数据处理、自动控制等多功能过度的这一历程,特别是计算机技术的发展必将出现智能化技术。因此,把电压表和计算机技术相结合的智能化电压表就将成为 21 世纪的新课题。目前,数字化仪器与微处理器取得令人瞩目的进展,就其技术背景而言,一个内藏微处理器的仪表意味着计算机技术向仪器仪表的移植,它所具有的软件功能使仪器 呈现出有某种延伸,强化的作用。这相对于过去传统的、纯硬件的仪器来说是一种新的突破,其发展潜力十分巨大,这已为70 年代以来仪表发展的历史所证实。概括起来,具有微处理器的仪表具有以下特点:测量过程的软件控制对测量数据进行存储及运算的数据处理功能是仪表最突出的特点;在仪器的测量过程中综合了软件控制及数据处理功能,使一机多用或仪器的多功能化易于实现,成为这类仪器的又一特点;以其软件为主体的智能仪器不仅在使用方便、功能多样化等方面呈现很大的灵活性3。下面从 5 个方面阐述新型数字仪表的发展趋向。(1).广泛采用新技术,不断开发新产品 随着科学技术的发展,新技术的广泛应用,新器件的不断出现。首先是A/D 转换器:20 世纪 90 年代世界各国相继研发了新的 A/D 转换技术。例如,四斜率 A/D 转换技术(美国) 、余数再循环技术(美国) 、自动校准技术(英国) 、固态真有效值转换技术(英国) 、约瑟夫森效应基准源(2 个纳米稳定度) 、智能化专用芯片(80C51 系列,荷兰)等,这些新技术使数字电压表向高准确度、高可靠性及智能化、低成本方向发展。另外,集成电路的发展使电压表只在外围配置少量元器件,即可构成完整的智能仪表,可以完成储存、计算、比较、控制等多项功能4。(2).广泛采用新工艺新一代数字仪表正朝着标准模块化的方向发展。预计在不久的将来,更多的数字仪表将由标准化、通用化、系列化的模块所构成,给电路设计、安装调试和维修带来极大方便。(3).多从显示仪表为彻底解决数字仪表不便于观察连续变化量的技术难题;“数字/模拟条图”双显示仪表已成为国际流行款式,它兼有数字仪表准确度高、模拟式仪表便于观察被测量的变化过程及变化趋势这两大优点。(4).提高安全性仪器仪表在设计和使用中的安全性,对生产厂家和广大用户都至关重要。一方面厂家必须为仪表设计安全保护电路,并使之符合国家标准;另一方面用户必须安全操作,时刻注意仪表上的各种安全警告指示。(5).操作简单化集成电路的发展使电压表只在外围配置少量元件,即可构成完整的智能仪西安工业大学学士学位论文3表,可以完成储存、计算、比较、控制等多项功能。这使的按键变少,操作简单。但是数字电压表并不能完全取代指针式的电压表,在反映电压的连续变化和变化趋势方面不如指针表的直观。为克服这种缺憾,20 世纪 90 年代初,一种“数字/光柱”的双重显示仪表已经出现,并成功地应用于生产实践中5。综上所述,十几年来智能仪器虽然有了很大的发展,但总的看来,人们还是较习惯于从硬件的角度做工作,这是由于设计者的(硬件)技术背景,LSI器件不断迅速更新的冲击以及在现阶段仪器硬件更新的数量还很大等因素所造成的。这种趋势虽然仍会继续下去,但从智能仪表的内涵,从软件的角度上看,软件的作用还远未发挥出来,这里有许多的领域等待着去开发。智能仪表最终必然会与人工智能联系起来开创出全新的仪器。从这个观点看,目前的智能仪器尚处于“幼年时期” 。所以,就仪表的发展看来电压表会朝着具有微控制处理单元的智能仪表方向发展。1.1.2 2 课题的意义和目的课题的意义和目的数字电压表是诸多数字化仪表的核心与基础。以数字电压表为核心,可以扩展成各种通用数字仪表、专用数字仪表及各种非电量的数字化仪表(如:温度计,湿度计,酸度计,重量,厚度仪等) ,几乎覆盖了电子电工测量,工业测量,自动化仪表等各个领域。除此之外,数字电压还有着传统指针电压表无可比拟的优点:读数直观、准确,显示范围宽、分辨力高,转入阻抗高,功耗小、抗干扰强等3。因此 对数字电压表作全面深入的了解是很有必要的。但是传统的数字电压表设计通常以大规模 ASIC(专用集成电路)为核心器件,并辅以少量中规模集成电路及显示器件构成,可是这种设计方法灵活性差,系统功能固定,难以更新扩展,不能满足日益发展的电子工业要求6。而应用微处理器(单片机)为核心单元的数字电压表,其灵活性高、系统功能扩展简单,性能稳定可靠。在这些背景下,设计一种以单片机为基础、结构简单、工作可靠、灵活性好的数字电压表是很有意义的。1.31.3 本文所作的主要工作本文所作的主要工作1对系统总体框架进行分析,根据系统所要实现的目标,设计基于单片机的数字电压表的硬件系统,以模块设计法为依据进行系统各个部分的具体设计。2设计基于单片机的数字控制系统,发挥单片机的处理功能强大,运算速度快的特点,对被测电压进行实时检测和显示。3制作印刷电路板,使硬件电路的设计更加清晰,同时使系统的抗干扰能力进一不加强。4针对系统的总体框架和硬件设计的特点,设计相应的软件系统,更合理的去完成系统测电压的目的。5对系统进行整机调试,使得基于单片机的数字电压表的实验结果尽可能西安工业大学学士学位论文4的满足设计指标。2 2 基于单片机数字电压表的总体设计基于单片机数字电压表的总体设计2.12.1 设计指标设计指标在日常维修、教学和科研中,电压表是不可缺少的,传统的数字电压表设计通常以大规模 ASIC(专用集成电路)为核心器件,并辅以少量中规模集成电路及显示器件构成,但是这种设计方法灵活性差,系统功能固定,难以更新扩展,不能满足日益发展的电子工业要求。而应用微处理器(单片机)为核心单元,其灵活性高、系统功能扩展简单,性能稳定可靠。本课题目的就是以单片机为基础设计出一种结构简单、工作可靠、灵活性好的直流数字电压表。要求数字电压表精度为0.05V,测量范围为 05V。2.22.2 系统概述系统概述本课题所设计的数字电压表主要包括两部分:硬件电路及软件程序。而硬件电路采用 ATMEL 公司的 AT89C51 作为主处理器,系统主要由信号采集、A/D转换、数据处理输出、驱动显示等几个功能模块组成。各部分电路的设计及原理将会在硬件电路设计部分详细介绍;程序的设计使用 C 语言编程,利用 Keil 软件对其编译和仿真,详细的设计算法将会在程序设计部分详细介绍。系统框图(图 2.1)如下:图 2.1 硬件原理框图 被测直流电压由 A/D 转换单元采集后被量化,再由单片机对 A/D 转换的结果进行标度变换,得到被测电压的数值,通过单片机对数次转换结果求平均值、并通过 SOI 串行数据接口把所求平均值输出给显示驱动单元,由该单元完成译码,并驱动数码管显示。2.2.12.2.1 硬件电路图及工作过程简介硬件电路图及工作过程简介电压表的数字化是将连续模拟的电压量经 A/D 转化后变为不连续的离散的数字量并加以显示7。在设计过程中采用分模块设计,按照图 2.1 把电路分 A/D转换、数据处理输出、驱动、显示四个单元,分别设计。被测电压A/D 转换单元数据处理单元显示驱动单元显示单元西安工业大学学士学位论文5A/D 转换器选用的是八位模/数转换器 ADC0809。其次,计算机中的数字都是十六进制数,而我们习惯于十进制数的读写,因此,在软件设计中则要把十六进制数转换成十进制数。在显示的时候也是如此。本装置的输出用四位 LED显示,因此在软件设计中还要解决数字输出与 LED 的接口问题。硬件则需要将输出线接到八段数码管上8。 数值显示采用八段数码管,由单片机以动态扫描方式驱动,在此方式下能保证足够的亮度和较长的使用寿命。由电路原理图 2.2 可以看出 ADC0809 通过 IN0 采集电压信号并送给单片机,单片机将采集来的信号进行一定的处理然后通过串口扩展的共阴极 LED 数码管显示采集的电压值。数码管显示是采用动态显示的原理,要显示的数码通过单片机的串口发送然后通过 ZLG7289 转换为并行信号分别加到四个数码管的 SADP,而四个数码管的公共端分别接 ZLG7289 的 DIG0-DIG3 接口,因此要使哪个数码管显示就把相应的公共端口置零即可。比如:数字“1”的字型码通过串口发送出来并经过ZLG7289 译码加到了四个数码管上,如果其中一个引脚为“0”那么对应的数码管显示数字“1” 。在此电路中电压值的三个数字分别通过串口依次的送出,对应的公共端也依次被置“0” ,由于两次置“0”的时间间隔很短,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位显示器并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感。因此给人的感觉就是三个数码管同时的显示出电压值四个数字5。数字电压表电路图如图数字电压表电路图如图 2.22.2 所示:所示:图 2.2 电路原理图西安工业大学学士学位论文6ADC0809 的 REF(-)接地,REF(+)接电源+5V,因此采集电压的范围是05V,A/D 转换输出的结果 D0D7 为 8 位二进制数。转换输出的结果在0255 之间分别对应着 0+5V 之间的 256 个电压值,因此单片机必须把 A/D转换输出的结果转换成可以显示的电压值,具体的方法是: (2.1)由上公式可知:当 ADC0809 输出为(11111111)B时,输入电压值VIN=5.00V;当 ADC0809 输出为(00000000)B时,输入电压值 VIN=0.00V;当ADC0809 输出为(10000000)B时,输入电压值 VIN=2.50V,但是单片机在进行数学运算时结果只读取整数部分,因此当输出为(10000000)B时计算得来的电压值 VIN=2.00V。由此可以看出这样运算的输出结果很不准确,在 0+5V 之间只有 0,1,2,3,4,5 六个电压值,所以必须把单片机运算结果中的小数部分保留下来8。具体方法是:如果保留小数点后两位,在运算的时候分子乘以100,保留三位就乘以 1000。小数点后保留两位的公式如下: (2.2)由新公式可知当 ADC0809 输出位(10000000)B 时,单片机运算结果为2500。然后单片机将 250 除以 10 得到商为 250,余数为 0,再将 250 除以 10 得到商为 25,余数为 0,再将 25 除以 10 得到商为 2,余数为 5。这样就可以得到电压值的四个数字,最后分别将 2、5、0、0 四个数通过串口送出,显示在四个数码管上,并且把第一个数码管的 dp 脚(即小数点)直接接地使其一直发亮,那么数码管上就可以显示输入的电压值“2.500” 5。2.2.22.2.2 软件程序设计简介软件程序设计简介开机后首先初始化,使数码管显示为“0.000”然后调用 A/D 转换子程序启动 AD 转换器,单片机等待查询转换结束信号,如果有信号则通过并行口读取转换数据并存储,就这样连着读取五次数据后求平均值,再按上面的方法通过串行口把数据传输出,经译码在数码管显示。具体方法和程序见程序设计部分和附录。2.32.3 小结小结 在电路设计和软件设计中都采用了分模块设计,这种设计方法清晰的电路的功能,为设计和以后的调试和维修带来了极大的方便。特别是在软件设计中,51100010005255DoutDoutVin5255DoutVin西安工业大学学士学位论文7这中方法曾强了程序的可移植性,为以后的功能扩展奠定了基础。3 3 基于单片机数字电压表的硬件设计基于单片机数字电压表的硬件设计3.13.1 器件的选择器件的选择模数转换器选用 ADC0809单片机用 AT89C51显示驱动用 ZLG7289数码管用四位共阴级 LED(SM420364)退耦电容 100nf 无极性电容和 100f 的电解电容位电容用 10f 的电解电容零欧电阻 限流电阻共阴极八段数码管 sm4203643.23.2 A/DA/D 转换电路转换电路3.2.13.2.1 A/DA/D 转换芯片的选择转换芯片的选择A/D 转换器是模拟量输入通道中的一个环节,单片机通过 A/D 转换器把输入模拟量变成数字量再处理。随着大规模集成电路的发展,目前不同厂家已经生产出了多种型号的 A/D转换器,以满足不同应用场合的需要。如果按照转换原理划分,主要有 3 种类型,即双积分式 A/D 转换器、逐次逼近式 A/D 转换器和并行式 A/D 转换器。目前最常用的是双积分和逐次逼近式。双积分式 A/D 转换器具有抗干扰能力强、转换精度高、价格便宜等优点,比如 ICL71XX 系列等,它们通常带有自动较零、七段码输出等功能。与双积分相比,逐次逼近式 A/D 转换的转换速度更快,而且精度更高,比如ADC0808、ADC0809 等,它们通常具有 8 路模拟选通开关及地址译码、锁存电路等,它们可以与单片机系统连接,将数字量送单片机进行分析和显示9。本设计中,要求精度小于 0.5%,则选用分辨率为 8 位的芯片,如ADC0809,ADC0801,ADC0808 就能满足设计要求。本电路采用 ADC0809。3 基于单片机数字电压表的硬件设计8CPGOADIF=1数字量输出Us被测电压 ui3.2.23.2.2 ADC0809ADC0809 转换原理介绍转换原理介绍ADC 是一种基本的外围扩展器件,其种类很多,工作原理也不仅相同,比较有代表性的是:单积分型,双积分型,脉宽调制型和逐次比较型(逐次逼近型) 。从产品性价比、转换速度和精度等方面综合分析,逐次比较型 ADC 是相对应用比较广的类型之一。所以有着广泛的应用10。逐次逼近型 ADC 实际采用的方法上从高到底开始逐位设定,比较模拟量输出,再来确定原设定位的正确与否。逐次比较型 ADC 原理结构如图 2.3 所示。其主要由采集保持电路、电压比较器、逐次比较寄存器、数/模转换器 ADC 和锁存器等部分组成。+ _图 2.3 逐次比较型 ADC 结构其工作原理如下:首先,被测模拟电压 ui通过逐次比较寄存器,将传递进的脉冲 CP 信号转换成数字信号,该数字量再经过数/模转换器生成对应的模拟量Us。当获得模拟量 Us的数值达到并接近被测电压所对应ui后,就可以检测出电压比较器完成最后的反转。此时,逐次比较积存器的计数值就是被测电压ui所对应的数字量,从而完成模拟量的转换。以上的分析表明,逐次比较的模/数转换方法,归根到底是数/模转换,采用逐次与模拟量进行比较后得到最终的数字标定值11。3.2.33.2.3 ADC0809ADC0809 芯片介绍芯片介绍ADC0809 是一种 8 位逐次逼近型 A/D 转换器。带 8 个模拟量输入通道,芯片内有通道地址译码锁存器,有输出三态数据锁存器,启动信号为脉冲启动方式,每个通道的转换时间大约为 100s,可以和单片机直接接口9。 ADC0809 的引脚图和内部逻辑结构如图 2.4 所示。逐次比较寄存器寄存器模/数转换西安工业大学学士学位论文9图图 2.32.3图 2.4由图 1(b)可知,ADC0809 由一个 8 路模拟开关,一个地址锁存与译码器、一个 8 位 A/D 转换器和一个三态输出锁存器组成。多路开关可选通 8 个模拟通道 IN0IN7,允许 8 路模拟分量输入,共用 A/D 转换器 进行转换。三态输出锁存器用于锁存 A/D 转换完的数字量,当 OE 端为高电平时,才可以从三态输出锁存器取走转换完的数据。 IN0IN7:8 条模拟量输入通道。ADC0809 对输入模拟量的要求是信号单极性,电压范围是 05V,若信号太小,必须进行放大:输入的模拟量在转换过程中应保持不变,如若模拟信号变化太快,则需在输入前增加采样保持电路。 地址输入和控制线:4 条,ALE 为地址锁存允许输入线,高电平有效。当ALE 线为高电平时,地址锁存与译码器将 A,B,C 三条地址线的地址信号进行锁存,经译码后被选中的通道的模拟量进转化器进行转换。A,B,C 为地址输入线,用于选通 IN0IN7 上的一路模拟量输入。通道选择如表 2.1 所示。 数字量输出及控制线: 11 条。START 为上跳沿时,所有内部寄存器清零;下跳沿时,开始进行 A/D 转换:在转换期间,START 应保持底电平。EOC 为转换结束信号。当 EOC 为高电平时,表明转换结束:否则,表明正在进行 A/D 转换。OE 为输出允许信号,用于控制三条输出锁存器向单片机输出转换得到的数据。OE=1,输出转换得到的数据。OE=0,输出数据线呈高阻状态。D7D0 为数字量输出线。 CLK 为时钟输入信号线。由于ADC0809 的内部没有时钟电路,所需时钟信号必须由外界提供,通常使用频率为500KHz,最大不能超过 1280KHz11。 VREF(+) ,VREF(-)为参考电压输入,决定了输入模拟量的范围。一般情况 VREF(-)接地,VREF(+)接+5V 电源。3.2.43.2.4 ADC0809ADC0809 与单片机的接口方法与单片机的接口方法 电路原理图 2.2 可以看出 ADC0809 的数据 D0D7 直接与单片机的总线 P0相连。模拟输入通道地址 A、B、C 直接接地,因此 ADC0809 只对通道 IN0 输入西安工业大学学士学位论文10的电压进行模数转换,其他通道直接接地(接地的目的主要是为了减少输入噪声,一般情况对于模数转换芯片中没用到的模拟输入端都这样处理) 。时钟 CLK由单片机的 ALE 取得,对于晶振为 12MHz 的单片机 ALE 输出为 2MHz 的方波,但前面提到 ADC0809 的时钟频率一般为 500KHz,最大能超过 1280KHz,但在实际应用中 2MHz 的信号也可以使 ADC0809 正常工作。START、ALE 和 OE 分别由单片机的 WR、RD 和 P2.7 经或非门接入、这样主要是满足 ADC0809 的信号电平与时序的要求。按此图中的片选接法。ADC0809 通道IN0 的地址为 7FFFH。 由于 EOC 未接入单片机,故只能采用延时等待的方法来读取 A/D 转换的结果(即当单片机启动 ADC0809 后延时一段时间再主动去读 ADC0809 的转换结果) 。但是如果单片机在进行 A/D 转换时还要执行其他的程序可以将 EOC 接在单片机的中断上,这样当 A/D 转换完后 EOC 可以对单片机产生中断使其读取 A/D 转换的结果,这样做单片机的使用效率更高。3.33.3 单片机介绍单片机介绍3.3.13.3.1 单片机介绍单片机介绍单片微型计算机简称单片机,又称微型控制或嵌入式控制器,是将计算机的基本部件微型化,使之集成在一块芯片上的微机。单片机有着体积小,功耗低,功能强,性能价格比高、易于推广应用等显著优点,在自动化装置、智能化仪器仪表、过程控制和家用电器等领域得到日益广泛的应用。3.3.23.3.2 采用采用 AT89C51AT89C51 的原因的原因在众多的 51 系列单片机中,要算 ATMEL 公司的 AT89C51 更实用,它是由北京集成电路设计中心在 MSC-51 单片机的基础上精心设计,由美国生产的至今为止世界上最新型的高性能八位单片机。它不但和 8051 指令、管脚完全兼容,而且其片内的 4K 程序存储器是 FLASH 工艺的,这种工艺的存储器用户可以用电的方式瞬间擦除、改写,一般专为 ATMEL AT89Cx 做的编程器均带有这些功能。显而易见,这种单片机对开发设备的要求很低,开发时间也大大缩短12。3.3.33.3.3 AT89C51AT89C51 芯片主要性能参数芯片主要性能参数与 MCS51 产品指令系统完全兼容 4K 字节的可重擦写 Flash 闪速存储器1000 次擦写周期全静态操作:0Hz24Hz三级加密程序存储器1288 字节内部 RAM32 个可编程 I/O 口线西安工业大学学士学位论文112 个 16 位定时/记数器6 个中断源可编程串行 UART 通道底功耗空闲和掉电模式 图 2.5 AT89C51 管脚分3.3.43.3.4 功能介绍功能介绍AT89C51 是一种低损耗、高性能、CMOS 八位微处理器,片内有 4K 字节的在线可重复编程快擦快写存储器,能重复写入/擦除 1000 次,数据保存时间为十年。它与 MCS-51 系列单片机在指令系统和引脚上完全兼容,不仅可完全代替MCS-51 系列单片机,而且能使系统具有许多 MCS-51 单片机,而且能使系统具有许多 MCS-51 系列产品没有的功能。AT89C51 可构成真正的单片机最小应用系统,缩小系统体积,增加系统的可靠性,降低了系统成本。只要程序长度小于4K,四个 I/O 口全部提供给用户。可用 5V 电压编程,而且擦写时间仅需 10 毫秒,仅为 8751/87C51 的擦除时间的百分之一,与 8751/87C51 的 12V 电压擦写相比,不易损坏器件,没有两种电源的要求,改写时不拔下芯片,适合许多嵌入式控制领域。工作电压范围宽 2.7V-6V,全静态工作,工作频率宽,在 0M Hz-24M Hz 内,比 8751/87C51 等 51 系列的 6MHz-12 MHz 更具有灵活性,系统能快能慢。AT89C51 芯片提供三级程序存储器加密,提供了方便灵活而可靠的硬加密手段,能完全保证程序或系统不被仿制13。另外,AT89C51 还具有 MCS-51 系列单片机的所有优点。1288 位内部RAM,32 位双向输入输出线,两个十六位定时/计数器,5 个中断源,两级中断优先级,一个全双工异步串行口及时钟发生器等。3.3.53.3.5 芯片管脚介绍及分配芯片管脚介绍及分配引脚描述:引脚描述: VCCVCC:电源GNDGND:电源地P0P0 口:口:P0 口是一组 8 位漏极开路双向 I/O 口,也既地址/数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动 8 个 TTL 逻辑门电路,对端口写“1”可作为高阻抗输入端用。在访问外部数据存储器话程序存储器时,这组口线分时转换地址(底 8 位)和数据总线服用,在访问期间激活内部上拉电阻。在 Flash 编程时,P0 口接受指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。P1P1 口:口:P1 口是一个带内部上拉电阻的 8 位双向 I/O 口,P1 的输出缓冲级可驱动(吸收或输出电流)4 个 TTL 逻辑门电路。对端口 写“1” ,通过内部的西安工业大学学士学位论文12上拉电阻把端口拉到高电平,此时可操作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉底时会输出一个电流(IIL) 。Flash 编程和程序校验期间,P1 接收底 8 位地址。P2P2 口:口:P2 口是一个带有内部上拉电阻的 8 位双向 I/O 口,P2 的输出缓冲级可驱动(吸收或输出电流)4 个 TTL 逻辑门电路。对断口写“1” ,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉底时会输出一个电流(IIL) 。在访问外部程序存储器或 16 位地址的外部数据存储器(例如执行 MOVE DPTR)时,P2 口送出高 8 位地址数据。在访问 8 位地址的外部数据存储器(如执行 MOVE RI 指令)时,P2 口线上的内容也即特殊功能存储器(SFR)区中 R2 寄存器的内容,在整个访问期间不改变。在 Flash 编程或校验时,P2 亦接收高位地址和其他控制信号。P3P3 口:口:P3 口是一组带有内部上拉电阻的 8 位双向 I/O 口。P3 口输出缓冲级可驱动(吸收或输出电流)4 个 TTL 逻辑门电路。对 P3 口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。作输入端时,被外部拉底的 P3 口将用上拉电阻输出电流(IIL) 。P3 口除了作为一般的 I/O 口线外,更重要的用途是它的第二功能,如下表2.2 所示:表 2.2 P3 口第二功能表端口引脚第二功能 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 口还接受一些用于 Flash 闪速存储器编程和程序校验的控制信号。RSTRST:复位输入。当振荡器工作时,RET 引脚出现两个机器周期以上高电平将使单片机复位。ALE/PROGALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的底 8 位字节。即使不访问外部存储器,ALE 仍以时钟振荡频率的 1/6 输出固定的正脉冲信号,因此它可对外部输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个 ALE 脉冲。对 Flash 存储器编程期间,该引脚还用于输入编程脉冲(PROG) 。西安工业大学学士学位论文13如有必要,可通过对特殊功能寄存器(SFR)区中的 8EH 的 D0 位置位,可禁止 ALE 操作。该位置位后,只有一条 MOVE 和 MOVX 指令 ALE 才会被激活,此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置 ALE 无效。PSENPSEN:程序存贮允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C51 由外部程序存储器取指令(或数据)时,每个机器周期两次 PSEN 有效,既输出两个脉冲。在此期间,当访问外部数据存储器,这两次有效的 PSEN 信号不出现。EA/VPPEA/VPP:外部访问允许。欲使 CPU 仅访问外部程序存储器(地址为0000HFFFFH) ,EA 端必须保持底电平(接地) 。需注意的是:如果加密位 LB1被编程,复位时内部会锁存 EA 端状态。如 EA 端为高电平(接 VCC 端) ,CPU 则执行内部程序存储器中的指令。Flash 存储器编程时,该脚加上+12V 的编程允许电源 VPP,当然这必须是该器件是使用 12V 编程电压 VPP。XTAL1XTAL1:振荡器反相放大器的及内部时钟发生器的输入端。XTAL2XTAL2:振荡器反相放大器的输出端。3.43.4 显示驱动单元设计显示驱动单元设计3.4.13.4.1 ZLG7289ZLG7289 芯片介绍芯片介绍ZLG7289 是广州周立功单片机发展有线公司自行设计的数码管显示驱动及键盘扫描管理芯片,可直接驱动 8 位共阴式数码管(或64 只独立 LED) ,同时还可以扫描管理多达64 只按键。 ZLG7289 内部含有显示译码器,可直接接受 BCD 码或 16 进制码,并同时具有2 种译码方式。此外,还具有多种控制指令,如消隐、闪烁、左移、右移、段寻址等。ZLG7289 采用 SPI 串行总线与微控制器接口,仅占用少数几根 I/O 口线。利用片选信号,多片 ZLG7289 还可以并接在一起使用,能够方便地实现多于 8 位的显示或多于 64 只按键的应用。3.4.23.4.2 ZLG7289ZLG7289 的主要特征的主要特征很宽的工作电压范围:+2.7-6V;直接驱动 8 位共阴式数码管(1 英寸以下)或 64 只独立的 LED;段电流可达 15mA 以上,字电流可达 100mA;西安工业大学学士学位论文14利用功率电路可以方便地驱动 1 英寸以上的大型数码管;具有左移、右移、闪烁、消隐、段点亮等强大功能;要显示的数据提供有两种不同的译码方式(也可以选择不译码) ;不接数码管而仅使用键盘管理功能时,工作电流可将至 3mA;与微控制器之间采用 SPI 串行总线接口,操作方便,占用 I/O 资源少;工作温度范围:-40+85;封装:DIP-28。3.4.33.4.3 ZLG7289ZLG7289 引脚功能说明引脚功能说明表 2.3 ZLG7289 引脚功能表引脚序号引脚名称功能描述1RTCC接电源2VCC电源,+2.76V3NC悬空4GND接地5NC悬空6CSSPI 总线片选信号,低电平有效7CLKSPI 总线时钟输入信号,上升沿有效8DIOSPI 总线数据信号,双向9INT键盘中断请求信号,低电平(下将沿)有效10SG/KR0数码管 g 段/键盘行信号 011SF/KR1数码管 f 段/键盘行信号 112SE/KR2数码管 e 段/键盘行信号 213SD/KR3数码管 d 段/键盘行信号 314SC/KR4数码管 c 段/键盘行信号 415SB/KR5数码管 b 段/键盘行信号 516SA/KR6数码管 a 段/键盘行信号 617DP/KR7数码管 dp 段/键盘列信号 718DIG0/KC0数码管字选信号 0 键盘列信号 019DIG1/KC1数码管字选信号 1/键盘列信号 120DIG2/KC2数码管字选信号 2/键盘列信号 221DIG3/KC3数码管字选信号 3/键盘列信号 3西安工业大学学士学位论文1522DIG4/KC4数码管字选信号 4/键盘列信号 423DIG5/KC5数码管字选信号 5/键盘列信号 524DIG6/KC6数码管字选信号 6/键盘列信号 625DIG7/KC7数码管字选信号 7/键盘列信号 726OSC2晶振输出信号27OSC1晶振输入信号28RST复位信号,低电平有效3.4.43.4.4 ZLG7289ZLG7289 与单片机及数码管的连接与单片机及数码管的连接U1 就是 ZLG7289。为了使电源更加稳定,在 Vcc到 GND 之间接入 47-470F的电解电容。J1 是 ZLG7289 与微处理器的接口。晶振 Y1 取 4-16MHz,调节电容C3 和 C4 通常在 10pF 左右。复位信号是低电平有效,一般只需外接简单的 RC图 2.6 只使用数码管的应用电路复位电路,也可以通过直接拉低引脚的方法进行复位。RST数码管必须是共阴式的,不能直接使用共阳式的。DPY1 和 DPY2 是 4 位联体式数码管,共同组成完整的 8 位。数码管在工作时要消耗较大的电流,R9-R16 是限流电阻,典型值是 270。如果要曾大数码管的亮度,可以适当减小电西安工业大学学士学位论文16阻值,最低 20013。ZLG7289 通常应连接共阴式数码管,应用中无须用到的数码管可以不接,省去数码管不影响使用。ZLG7289 与单片机的接口采用 3 线制 I2C 串行总线,由、CLK 和 DIO 这 3 根信号组成。和 CLK 是输入信号,由单片机提供。DIOCSCS信号是双向的,必须接到单片机上具有双向功能的 I/O 上。设计中使 ZLG7289的 6-9 脚分别于 AT89C51 的 P1.0-P1.3 相连。其中 6 脚为片选输入端 CS,低电平有效,可用来向芯片发送数据,7 脚 CLK 为同步时钟输入端,当向芯片发送数据时,此引脚上的电平上生表示数据有效;8 脚为串行数据输入/输出端,当芯片接受指令时,此引脚为输入端。SPI 信号线的具体意义参见表 2.4。操作SPI 总线的时序图参见图 2.7、2.8。表 2.4 ZLG7289 的 SPI 串行接口信号信号名称引脚时序描述CS6SPI 总线片选输入信号,低电平有效CLK7SPI 总线时钟输入信号,上升沿有效DIO8SPI 总线数据信号,双向图 2.7 存指令时序图(单字节命令) 图 2.8 带数据指令时序图(命令字在前,输入数据在后)3.4.53.4.5 时序图中的各项延迟时间时序图中的各项延迟时间 表中 2.5 各项参数的测试条件为:VCC=5.0V,Fosc=16MHz表 2.5 时序延时表符号名称最小值典型值单位T1片选信号的建立时间CS2550sT2CLK 信号高电平的宽度58sT3CLK 信号低电平的宽度58s西安工业大学学士学位论文17T4命令字与输出数据之间的时间间隔1525s3.4.63.4.6 控制指令控制指令ZLG7289 的控制指令分为单字节纯指令和双字节数据指令两大类。在这里直介绍设计中所用的单字节复位(清除)指令和双字节带数据指令中的下载数据并按方式 1 进行译码指令13。复位(清除)指令D7D6D5D4D3D2D1D010100100这是一条软复位指令,执行后会将数码管所有的显示内容清楚掉,原先设置的所有闪烁、消隐等属性也一并清除,就像硬件复位一样。下载数据并按方式 1 进行译码D7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D011001a2a1a0dpxxxd3d2d1d0在指令格式中,高 5 位的 11001 是指令字节段;a2a1a0是数码管显示数据的位地址,位地址编号从左到右的顺序依次位 0、1、2、3、4、5、6、7;dp 控制小数点是否显示,dp=1 时该位的小数点被点亮,dp=0 时该位的小数点被熄灭;xxx 是无关位;d3d2d1d0是要显示的数据。显示数据按照下表中的规则进行译码:表 2.6 下载数据命令译码方式 1d3d2d1d0(二进制)d3d2d1d0(十六进制)显示结果000000H0000101H1001002H2001103H3010004H4010105H5011006H6011107H7100008H8100109H910100AHA10110BHB11000CHC11010DHD11100EHE11110FHF西安工业大学学士学位论文183.53.5 SPI 接口技术接口技术3.5.13.5.1 SPI 总线简介总线简介SPI,是英语 Serial Peripheral Interface 的缩写,顾名思义就是串行外围设备接口。SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为 PCB 的布局上节省空间,提供方便,正是出于这种简单易用的特性,现在越来越多的芯片集成了这种通信协议14。3.5.23.5.2 SPI 总线的基本结构总线的基本结构SPI 是一个环形总线结构,由 SS(CS)、SCK、SDI、SIO 构成,其时序其实很简单,主要是在 SCK 的控制下,两个双向移位寄存器进行数据交换。 上升沿发送、下降沿接收、高位先发送。 上升沿到来的时候,SDO 上的电平将被发送到从设备的寄存器中。 下降沿到来的时候,SDI 上的电平将被接收到主设备的寄存器中。3.5.33.5.3 数据的传输数据的传输假设主机和从机初始化就绪:并且主机的 sbuff=0 xaa (10101010),从机的sbuff=0 x55 (01010101),下面将分步对 SPI 的 8 个时钟周期的数据情况演示一遍(假设上升沿发送数据)15。-脉冲 主机 sbuff 从机 sbuff SDI SDO-0 00-0 10101010 01010101 0 0-1 0-1 0101010 x 10101011 0 11 1-0 01010100 10101011 0 1-2 0-1 1010100 x 01010110 1 02 1-0 10101001 01010110 1 0-3 0-1 0101001x 10101101 0 13 1-0 01010010 10101101 0 1-4 0-1 1010010 x 01011010 1 04 1-0 10100101 01011010 1 0-5 0-1 0100101x 10110101 0 15 1-0 01001010 10110101 0 1西安工业大学学士学位论文19-6 0-1 1001010 x 01101010 1 06 1-0 10010101 01101010 1 0-7 0-1 0010101x 11010101 0 17 1-0 00101010 11010101 0 1-8 0-1 0101010 x 10101010 1 08 1-0 01010101 10101010 1 0- 这样就完成了两个寄存器 8 位的交换,上面的 0-1 表示上升沿、1-0 表示下降沿,sdi、 sdo 相对于主机而言的。根据以上分析,一个完整的传送周期是16 位,即两个字节,因为,首先主机要发送命令过去,然后从机根据主机的名准备数据,主机在下一个 8 位时钟周期才把数据读回来。其中 CS 是控制芯片是否被选中的,也就是说只有片选信号为预先规定的使能信号时(高电位或低电位) ,对此芯片的操作才有效16。这就允许在同一总线上连接多个 SPI 设备成为可能。接下来就负责通讯的 3 根线了。通讯是通过数据交换完成的,这里先要知道 SPI 是串行通讯协议,也就是说数据是一位一位的传输的。这就是 SCK 时钟线存在的原因,由 SCK 提供时钟脉冲,SDI,SDO 则基于此脉冲完成数据传输。数据输出通过 SDO 线,数据在时钟上升沿或下降沿时改变,在紧接着的下降沿或上升沿被读取。完成一位数据传输,输入也使用同样原理。这样,在至少 8 次时钟信号的改变(上沿和下沿为一次) ,就可以完成 8 位数据的传输。3.63.6 电压显示电路电压显示电路设计中采用的是 8 段 LED 数码管 sm420364 来显示电压值。LED 具有耗电低、亮度高、视角大、线路简单、耐震及寿命长等优点,它由 8 个发光二极管组成,其中 7 个按8字型排列,另一个发光二极管为圆点形状,位于右下角,常用于显示小数点。把 8 个发光二极管连在一起,公共端接高电平,叫共阳极接法,相反,公共端接低电平的叫共阴极接法,根据 ZLG7289 的要求我们采用共阴极接法。当发光二极管导通时,相应的一段笔画或点就发亮,从而形成不同的发光字符。其 8 段分别命名为 dp g f e d c b a。例如,要显示“0”,则 dp g f e d c b a 分别为:1100 0000B;要显示“A”,则 dp g f e d c b a 分别为:0001 0001B(共阳极)。若要显示多个数字,只要让若干个数码管的位码循环为低电平就可以了。根据设计要求,显示电路需要至少 4 位 LED 数码管来显示电压值,则有
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!