压力传感器称重系统

更新时间:2023-03-08 07:15:59 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

五邑大学本科毕业设计

摘 要

本论文从国际电子称重技术的发展及市场竞争的需要出发,展望了21世纪初电子称重技术的发展趋势与技术,提出了电子称重系统的设计方案,并完成了电子称重系统的硬件及软件设计。该系统以AT89S51单片机为核心,外围电路包含电压信号放大电路、A/D转换电路和键盘/显示单元等几个功能模块。称重系统的工作过程是:系统的前端为压敏式压力传感器采集重量产生的电压模拟信号,将该信号经放大、滤波后,由ADC0809实现数模转换,转换后数字信号进入AT89S51单片机,系统软件进行运算处理后,由数码管进行动态显示,实现对压力的称重控制。

本文提出的一种基于AT89S51单片机控制的新型电子称重系统,该系统具有体积小、重量轻、精度高、在没有交流电的场合进行测重方便、可靠。

关键词 电子称重技术;传感器;A/D转换器;51单片机

I

五邑大学本科毕业设计

Abstract

From the international electronic weighing technology development and the needs of market competition, this thesis looked to the early 21st century electronic weighing technology development trends and technology, bring forward the electronic weighing system design, and completed the hardware and software design of electronic weighing system. The system use AT89S51 single-chip micro-computer as the core, containing the external circuit voltage signal amplifier, A / D converter circuit and keyboard display unit, and several other modules as well. the process of weighing system is: The front part of the system is for pressure-sensitive pressure sensor acquisition weight of the voltage analog signal, after amplification and filtering the signal and achieving D\\A conversion by the ADC0809, converted digital signals being put into AT89S51 SCM ,after the processing of System software, numerical code tube displays the dynamic digital, and controls the pressure weighing.

This thesis presents a new electronic weighing system base on AT89S51 MCU, which is small, light, high precision, it is convenient and reliable to measure weight in the absence of AC occasions.

Keyword Electronic weighing technology Transducer A/D converter single-chip micro-computer

II

五邑大学本科毕业设计

目 录

摘要 ·················································································································································· I Abstract ·········································································································································· II

第1章 绪论 ································································································································· 1

1.1课题背景 ···························································································································· 1 1.2国内外电子称重技术的发展 ···························································································· 1 1.3电子称重系统中相关概述 ································································································ 3 1.4本课题的主要研究目标及内容 ························································································ 4 1.5本章小结 ···························································································································· 4 第2章 系统的硬件设计 ··············································································································· 5

2.1总体设计 ···························································································································· 5

2.2传感器的工作原理及其仿真分析 ···················································································· 5

2.2.1工作原理 ·················································································································· 5 2.2.2传感器的仿真分析 ·································································································· 7 2.3放大电路模块 ···················································································································· 8 2.4放大芯片LM358 ············································································································· 11 2.4.1 LM358的概述 ······································································································· 11

2.4.2 LM358特性 ··········································································································· 11 2.4.3 LM358的原理 ······································································································· 12 2.5 ADC0809转换器 ············································································································· 13

2.5.1转换器芯片ADC0809简介 ················································································· 14 2.5.2信号引脚 ················································································································ 15 2.5.3 MCS-51单片机与ADC0809的接口 ··································································· 16 2.5.4 转换数据的传送 ··································································································· 17 2.6 MCS—51单片机 ············································································································ 19 2.6.1 MCS—51单片机芯片概述 ·················································································· 19

2.6.2 MCS—51单片机内部结构与工作原理 ······························································ 19 2.7 LED数码管结构 ············································································································· 23 2.8整体的PROTEL电路图 ································································································· 24 2.9 本章小结 ························································································································· 24 第3章 系统软件设计 ················································································································· 25

3.1软件的总体设计 ·············································································································· 25 3.2系统的主程序 ·················································································································· 26 3.3相关的子程序 ·················································································································· 27 3.4本章小结 ·························································································································· 29 第4章 系统调试与总结 ············································································································· 30

III

五邑大学本科毕业设计

4.1 PCB的绘制和制板过程 ······························································································ 30 4.2 硬件电路调试 ················································································································· 31 4.3 软件调试 ························································································································· 31 4.4 软、硬件总体调试 ········································································································· 31 4.5体会 ·································································································································· 32

结论 ··············································································································································· 33 致谢 ··············································································································································· 34 参考文献 ······································································································································· 35 附录1 ········································································································································ 36 附录2 ········································································································································ 38 附录3 ········································································································································ 40

IV

五邑大学本科毕业设计

第1章 绪论

1.1课题背景

电子称重技术是现代称重计量和控制系统工程的基础之一自50年代中期电子技术渗人到衡器助测量装置,印年代初期出现机电结合式电子衡来,经过40多年的不断改进与完善,电子衡器从的机电结合型发展到现在的全电子型和数字化智:由于它具有称量准确、快速,读数方便,环境适强,便于与电子计算机结合而实现称重计量自动化等特点,在工商贸易、能源交通、冶金矿工食品、医药卫生、航空航天等部门得到了广泛用。

近年来,随着计算机和称重传感器技术的迅速发展,现代科学技术的相互渗透,电子称重技术及应用又有了新发展。称重技术从静态称重向动态称重发展;计量方法从模拟测量向数字测量发展;测量特点从单参数测量向多参数测量发展特别是对快速称重和动态称重的研究与应用,已为世界各国所关注。可以说电子称重技术的发展水平,已成为衡量一个国家科学技术水平和工业发达程度的重要标志之一。

电子称重技术是集机械、电子、材料、信息、管理为一体的综合技术,是一项系统工程。各工业发达国家长期以来,都把电子称重技术的研究及应用提高到电子称重设备制造工程的高度来认识。它们不约而同的将研究开发的重点,从单纯的称重转移到生产过程的称重系统和自动控制领域,使称重计量的内涵不断扩展,由狭义到广义,由单项到系统,新型的现代称重计量概念已脱颖而出,一跃成为当代世界瞩目的技术与行业。尽管80年代以来,我国衡器行业打破了部门和地区的界限,走上了按专业和产品归口的行业管理轨道,开创了由机械衡器向电子衡器过渡的新局面,电子衡器产品的数量和质量与工业发达国家相比还有较大差距,行业的总体水平还跟不上国家经济的发展步伐。因此,中国衡器协会在2010年长远规划中提出“到2010年电子衡器和称重传感器生产厂家的技术装备和检测试验手段要达到国际如年代中期的水平;到2010年要基本达到当代国际水平。”为配合完成这一规划,本论文就我国21世纪初电子称重技术的发展趋势与技术课题,电子衡器产品的发展动向,谈些浅薄看法,并提出了电子称重技术如何进人21世纪的问题供同行思考。

1.2国内外电子称重技术的发展

称量技术在近百年的历史中,大致经历了以下的四个发展阶段,约半个世纪的机械式的模拟式称量时代,接着进入了电气时代称量和电子称量时代,至七八十年代末期,全面进入了数字化称量及微机智能化称量的时代,至九十年代,开始进入模型化称量的新时代。不仅要求取得称量的正确结果,而且要求对称量结果的状态趋势进行估计,对动态变化中的量进行实时称量。这种要求仅仅依靠传统的称量方法和数据处理的方法已经不可能实现的,只有模型化称量才能为日趋复杂的动态称量问题开辟一条新的路径。国际上己经取得了动态精密称量的技术突破,称量技术已经跨入了高技术王国。把激烈的市场竞争由

1

五邑大学本科毕业设计

此推向了新的阶段,一个成功企业,无不重视高新技术的应用,使高新技术紧密和行业特征相结合,技术成了市场竞争的核心,我国的电子衡器技术在我国的大力支持下,己经取得了很大的发展,但与实际需要还有很大差距。而从电子衡器的综合水平,尤其是在动态电子称量方面,与国际水平不但没有接近而是拉大了距离,致使我国要进口很多的称量装置,消耗大量的外汇,如果我国早点重视这个问题,就我国的工业基础和技术力量,完全有能力将自动化称量技术形成产业化的市场产品,关键在于充分的重视和正确的导向,先择适宜的起点,瞄准国际先进水平,摒弃低水平重复,将我国的电子称量技术推向一个新的好层次是完全可能的。

国内从20世纪60年代中期开始研制和生产电子秤,初期为模拟指针式,20世纪80年代中后期发展成数字式,20世纪90年代末至21世纪初已研制开发出微机式产品。表1-1[1]国内外电子衡器准确度对比表。总体来说,目前国内电子衡器的发展水平相当于发达国家20世纪90年代的水平。少数产品的技术已处于国际领先水平,例如中船重工集团第七○七研究所研制的HW-2000动态汽车衡的几项新技术:无开关判别车辆、浅基坑整体秤台和无基坑结构以及防作弊功能。

表1-1外电子秤衡器准确精度对比

名称 商用静态秤 静态工艺秤 动态计量皮带秤 动态轨道衡 动态汽车衡 国内准确度 3 000 d 0.15%~0.3% 0.25%~0.5% 0.2级 0.2级 国外准确度 6 000 d 0.1%~0.3% 0.1%~0.25% 0.2级 0.2级 国内电子衡器数量所占比例仅为衡器的6.6%;品种少,功能不齐全;关键元器件的稳定性和可靠性与进口产品比较还有差距。表2为国内外电子衡器占衡器比例对照表。

表1-2 国内外电子衡器占衡器比例对照表 区域 国内 国外 工业电子衡器比例/% 40.8 80~90 商用电子衡器比例/% 6.4 50~60 发达国家在电子称重方面,无论从技术水平、品种和规模等方面都达到了较高水平,特别是在准确度、长期稳定性和可靠性等方面都有了很大的提高。静态商用秤已做到OIML规定的3000d,最高可做到6000d;在稳定性方面要求1年内不允许超差;在可靠性方面称重传感器在正常使用条件下的寿命一般在10年以上,仪表的平均故障间隔时间(MTBF)都超过了2000h,有些产品达到了5000 h;工业用电子秤的准确度一般能做到。

称量问题是一个传统的问题,日常生活有各种应用场合,在实际的应用中人们关心的是称量的精度,即尽可能准确地称出物体的重量,所以在传统的方法中主要是研究如何利用各种原理来提高秤的精度,近年来称量技术取得了惊人的发展,主要是由静态称量到动态称量、在线称量和模型化称量方向发展,尤其是动态数学模型的建立、系统理论、模糊理论、人工智能、神经网络、数字滤波、振动理论、阻尼技术等科学技术在称量领域中的

2

五邑大学本科毕业设计

广泛应用,系统的自诊断、自适应及功能自组织扩展形成、组合化和功能自适应方向发展。例如在称量系统中采用二阶系统自回归滑动平均模型,使称量时间在不超过一个振荡周期的情况下,就可以获得精密的称量结果,这种将事先掌握的信息和实验数据结合的称量技术,将成为称量技术的扩大应用的主要发展方向。 近年来电子称量技术和电子衡器总的发展动向为[2]: (l)小型化:体积小,高度低,质量轻,即小薄轻。

(2)模块化:电子衡器的承载器采用模块式一体组合或分体组合,不但提高了产品的通用性和可靠性,而且也大大提高了生产效率,降低了成本。

(3)智能化:与电子计算机组合或开发称量用计算机,利用计算机的智能来增加称量显示器的功能,使其在原有功能的基础上增加推理、判断、自诊断、自适应、自组织等功能。

(4)集成化:对于某些电子衡器可以实现承载器和称量传感器一体化。

(5)综合性:电子称量技术与电子衡器产品的应用不断扩大,已渗透到一些学科和工业自动控制领域。

(6)组合性:在工业生产过程或工艺流程中局有可组合性,即称量范围可以任意设定:硬件能够依据一定的工作条件和环境作某些调整等。

1.3电子称重系统中相关概述

衡器(或电子秤)是配有电子称量装置的衡器,主要由称重传感器、承载器(俗称秤架)、称重仪表3部分组成。电子衡器的工作原理是将作用在承载器上的质量或力的大小,通过称重传感器转换为与之成正比的电信号,并且,以模拟或数字量的形式在称重仪表上显示出来。

电阻应变式传感器可测量位移、加速度、力、力矩等各种参数,是目前应用最广泛的传感器之一。它具有结构简单,性能稳定、可靠,灵敏度高,测量速度快等优点。电阻应变片传感器种类繁多,形式各样,根据敏感元件的形态不同,将金属式电阻应变片分为丝式应变片和箔式应变片两种传感器。丝式应变片是将电阻丝绕制成敏感栅粘贴在各种绝缘基底上制成的,是一种常用的应变片,它由敏感栅、基底和盖片、粘贴剂和引线4部分组成。电阻应变片的工作原理是基于金属的电阻应变效应,金属丝的电阻值随着它所受的机械变形而发生相应变化。

单片机型号方面,选用上最常见的MCS-51系列的AT89S51。该系列的单片机是采用高性能的静态80-C51设计,由先进CMOS工艺制造并带有非易失性Flash程序存储器。支持12时钟和6时钟操作。包含128字节RAM,32个I/O口脚,2个16位定时/计数器,5输入2优先级嵌套中断结构,1个串行I/O口可用于多机通信I/O扩展或全双工UART以及片内振荡器和时钟电路。

ADC0809模数转换器是一种常用的8路8位A/D转换器,通常外部设备与计算机连接,要通过输入、输出指令,选择通道读取信号这样作不仅硬件复杂,而且软件编程指令用的多。

3

五邑大学本科毕业设计

1.4本课题的主要研究目标及内容

称量问题是一个传统的问题,日常生活有各种应用场合,在食品、医药、化工等行业都有。近年来,人们对衡器的要求也变得更高了:更简洁、准确、安全和高效。测量特点从单参数测量向多参数测量发展特别是对快速称重和动态称重的研究与应用,已为世界各国所关注。可以说电子称重技术的发展水平,已成为衡量一个国家科学技术水平和工业发达程度的重要标志之一。因此,本论文设计的基于单片机控制的电子称重系统具有一定的实用价值和意义。 论文的主要内容:

(1)电子称重压力系统的硬件设计,包括压力传感器产生压力、放大电路模块、A/D转换、单片机以及LED数码管的设计模块。

(2)单片机的软件设计、ADC0809与单片机的通信、LED的显示模块,整体电路的调试与分析。

1.5本章小结

主要介绍了电子称重技术的发展历史以及前景,国内外情况的对比与分析,并提了电子秤在现实生活、工业上的重要性。同时,还简单概述了系统中的一些重要硬件芯片以及相关的设计内容。

4

五邑大学本科毕业设计

第2章 系统的硬件设计

2.1总体设计

传感器是称重系统的最重要部件,系统通过称重压力传感器的应变信号测得物料的重量。称重传感器实际上是一种将质量信号转换成可测量的电信号的输出装置。称重压力传感器实际上是一个高灵敏电桥,它通过称重桥与承重杆相连,当物料的重量压在传感器上,使压力传感器应变片电阻变化时,电桥产生不平衡电压,此不平衡电压经放大后即为称重信号。根据传感器稳定性、测量精度、灵敏度和使用环境要求选择了压阻压式称重传感器,度为0.02%。为了防止过载,使传感器损坏,本系统选用量程为300g的传感器,电桥电压为直流25v。将一个小于300g的物体放到秤盘上也就是传感器上,经过放大、滤波、A/D转换将其电信号传入控制器,控制器将其作为控制信号输出到显示器(LED),显示器将其输出。 硬件结构框图:

负 荷 称 重 传 感 器 放 大 电 路 滤 波 A/D 转 换 器 控制系统 LED 显 示

图2-1硬件设计图

2.2传感器的工作原理及其仿真分析

2.2.1工作原理

压力传感器是用来测量压力的大批量规模生产的计量或传感元件。本文应用[3]代微电子技术,在单晶硅片的特定晶向上,制成应变电阻并且将它们连接构成惠斯顿电桥,同时利用半导体材料的压阻效应和硅的弹性力学特性,用集成电路工艺研制体积小、灵敏度高、精度高、动态特性好、耐腐蚀、零位小的固态压阻压力传感器。制作过程中由于硅是一种各向异性材料,不同晶向的材料参数不一样,理论设计往往与实际有很大差别。本文对单晶硅衬底的轴对称模型进行分析、模拟,以实现硅微结构的合理设计,减少物理实验的过程,缩短研制周期,以达到优化设计的目的。

压阻式压力传感器的性能与结构和制造工艺有着密切的关系,而传感器基本结构的

5

五邑大学本科毕业设计

确定应同时考虑性能和工艺可行性这两个因素。下图是该传感器结构示意图:

3142

图2-2 传感器结构示意图

其中:1、压阻薄层条敏感元件,2、向上的压力,3、向下的压力,4、衬底硅元件,其1电阻率随应力的变化而变化。压阻效应就是对于金属或半导体材料,若沿它的某一晶面加以压力或拉力时,其晶格内部将产生畸变,这一畸变将导致晶体内部能级构造的变化,进一步导致载流子相对能量的改变,从而引起晶体固有电阻率变化的物理现象。由于导电

1体的电阻为:R??,一般的电阻变化率与压力的关系由下式:

s

??ij???ijki?kiki (1)

其中,??ij为电阻变化率;?ijkl为压阻系数;?kl为压力;金属或半导体材料由于其电阻率的变化而导致的电阻相对变化为:

其中,式中: ?i为纵向应力;?j久为横向应力,?j气为纵向压阻系数,?i为横向压阻系数。可见,若能将在应力下材料变形导致的电阻变化?R检测出来,并且将其与外作用力对应起来,便从原理上达到了测量压力的目的。一般来说,电阻的变化量是不便于直接检测的,需将其转换为方便检测的电学量的变化。本传感器电路为了取得更高的电压灵敏度和低温度敏感性采用常用的惠斯顿电桥[4]如下图:

?R??i?i??j?j (2) R

6

五邑大学本科毕业设计

图2-3 惠斯顿电桥

2.2.2传感器的仿真分析

硅衬底上力敏元件构成惠斯顿电桥,为使传感器具有较高输出灵敏度,力敏元件条在硅衬底上面的位置显得格外重要,下面采用有限元分析对传感器轴对称模型进行仿真,确定力敏元件的最佳位置。有限元分析(FEA,FiniteElementAnalysis)是对物理现象的模拟,是对真实情况的数值近似。通过对分析对象划分网格,求解有限数值来近似模拟真实环境的无限个未知量。有限元分析可分成三个阶段,前处理、处理和后处理。前处理是建立有限元模型,完成单元网格划分;后处理则是采集处理分析结果,使用户能简便提取信息,了解计算结果。 本结构是轴对称结构

[5],所以只用取一半模型进行分析即可,传感器各基本参数为:

宽度 b/?m 1000 厚度b/?m 20 晶片厚度?m 650

材料属性为: 基体Si:

杨氏模量/N?m?2 1.8×1011 柏松比 0.28

下图是传感器模型的仿真结果:

7

五邑大学本科毕业设计

图2-4 X轴方向的压力 图2-5 Y轴方向的压力

上面简单分析了压阻式压力传感器的工作原理和结构并对队轴对称模型进行了仿真分析,得出了使传感器的灵敏度最大化时力敏元件在硅衬底上面的最佳位置。

2.3放大电路模块

组成放大电路必须遵循的原则:

(1)提供直流电源,以作为电路输出能源和设置合适的静态工作点。

(2)电源的极性和大小应保证BJT基极与发射极之间处于正向偏置,VBEQ>Von;而集电极与基极之间处于反向偏置;使BJT工作在放大区。对于场效应管放大电路,则应使之工作在恒流区。

(3)电阻取值与电源配合,使放大管有合适的静态工作电流。 (4)输入信号必须能够作用于放大管的输入回路。

(5)当负载接入时,必须保证放大管输出回路的动态电流(BJT的DIC或场效应管Did)能够作用于负载,从而使负载获得比输入信号大得多的信号电流或信号电压。

共射放大电路的组成遵循放大电路的组成原则,电路由三极管、Rb、直流电源VBB 、耦合电容Cb1、RC、耦合电容Cb2、RL等组成。如下图:

iCcbACb1++ViVaa12V-Rb300K+Cb2+BTeRC4KVCC12ViEORL v-

图 2-6 共射放大电路

8

五邑大学本科毕业设计

三极管是整个电路的核心,起放大作用。直流电源VBB通过基极电阻Rb为三极管发射结提供正向偏置电压,并为基极提供所需的偏置电流Ibc耦合电容Cb1将Vi送入输入回路。电源电压Vcc,通过RC为三极管发射结提供反向偏置电压,Cb2对交流信号而言,呈现的容抗很小,它将放大后的信号传送给负载RL 。

ACb1++ViVbb12V-Rb300KiCiB+cb+Cb2+BTeRL4KVCC12V-

VBEiE- 图2-7 静态工作点分析图 图2-8 电压变化图 静态:当 Vi=0路处于静态,电路的电量均为直流量。 直流量: IB、IC、VCE为静态工作点。

动态:有正弦电压Vi加入时,电路处于动态。电路中电量为交、直流叠加。

iB?IB?ib ic?Ic?bib

vCE?VCE?Vce VCE?Vcc?icRc

静态:在图1所示共射极基本放大电路中,当vi=0时,电路处于静态,电路中各处的电压、电流都是直流量:IB、IC和VCE。这些电流、电压的数值称为静态工作点(用Q表示)。静态工作点必须采用放大电路的直流通路来分析、计算IB、IC和VCE。

v动态:当有正弦电压i加入时,电路处于动态。此时电路中既有直流电量,也有交流电量,基极总电流iB?IB?ib,集电极总电流ic?Ic?bib,总量vCE?VCE?Vce,由于

iVCE?Vcc?icRc,因此当c在集电极电阻RC上的电压增加时,管压降vCE必然减小,反之则增大。由此可看出共射电路国输出电压与输入电压是反相的。动态一般用放大电路的交流通路(交流电流流通的途径)分析。

9

五邑大学本科毕业设计

从以上分析可得如下结论:共射极基本放大电路的电压放大作用是利用了BJT的电流控制作用,依靠RC将电流的变化转为电压变化来实现的。

直流通路:在直流电源作用下直流电流流经的通路,它用于研究静态工作点。画直流通路:①电容视为开路;②电感线圈视为短路;③信号源视为短路,但应保留其内阻。

交流通路:输入信号作用下交流信号流经的通路,它用于研究动态参数及性能指标。画交流通路:①容量大的电容视为短路,②直流电源视为短路。

在三极管的放大电路中,要画出小信号等效电路之后,就可以用解线性电路的办法求

???解。在已知输入电压Vi的条件下求出基极电流Ib,然后又落实到输出回路上,利用Ib求???出Ic及V0,从而最后求出电压增益Av公式如下:

????Vi Ib? ,Ic??Ib, V0??IcR'L ,R'L?Rc‖RL

rbe??由上式可得到电压增益Av:

??Av??V0Vi???IcR?'LIbrbe???IbRLIbrbe???R'Lrbe

??'?下图是用Protel画的电路图:

图 2-9 放大电路Protel图

10

五邑大学本科毕业设计

放大电路工作时各电极电流和电压都是在静态直流量的基础上叠加一个交流成分。放大电路静态工作点直接影响到放大电路的性能,静态工作点设置过低或过高都会使放大电路动态范围减小,使得输入信号较大时输出信号产生截止或饱和失真。所以在本设计中用了一个放大芯片LM358进行放大,它的放大系数大约100倍,能将传感器产生的0~5mv的电压放大,范围0~5V。

2.4放大芯片LM358

本设计的传感器产生的电路比较微小,用三极管NPN作为放大元件有一定的技术难度,原因:①传感器信号比较微小,三极管的内阻大;② 三极管静态工作点直接影响到

放大电路的性能。所以放大电路要用放大芯片LM358来实现。

2.4.1 LM358的概述

LM358内部包括有两个独立的、高增益、内部频率补偿的双运算放大器,适合于电源电压范围很宽的单电源使用,也适用于双电源工作模式,在推荐的工作条件下,电源电流与电源电压无关。它的使用范围包括传感放大器、直流增益模块和其他所有可用单电源供电的使用运算放大器的场合。

2.4.2 LM358特性

? 内部频率补偿

? 直流电压增益高(约? 单位增益频带宽(约

100dB) 1MHz)

? 电源电压范围宽:单电源(3—30V) ? 双电源(±1.5—±15V) ? 低功耗电流,适合于电池供电 ? 低输入偏流

? 低输入失调电压和失调电流 ? 共模输入电压范围宽,包括接地 ? 差模输入电压范围宽,等于电源电压范围 ? 输出电压摆幅大(0

至Vcc-1.5V)

11

五邑大学本科毕业设计

2.4.3 LM358的原理

LM358引脚图及引脚功能,如下图:

OUT11IN1(-)28VCC7OUT2

放大电路的接法:

-IN1(+)3+-6IN2(-)GND4+5IN2(+)

图2-10 LM358引脚图

10K+LM358e-R21MR110K 图2-13 LM358放大电路图

放大倍数:ARv=1+2R

112

五邑大学本科毕业设计

实际电路图的仿真图:

图2-14放大电路仿真图

R1M根据公式: Av=1+2=1+=100;得出放大倍数约100。

R110KLM358内部包括有两个独立的、高增益、内部频率补偿的双运算放大器,根据设计的

电路要求要它来实现效果很好。

2.5 ADC0809转换器

随着半导体技术数字化和集成化的日益提高,在推动微控制器、数字信号处理器、微机械电子系统的发展中,也推动了嵌入或隐性模数(A/D)转换技术的发展,A/D转换技术在变得越来越复杂的同时,也正朝着高精度、高速度的发展方向迈进。由于数字信号处理技术在图形、视频、无线通讯的广泛应用,对高速高精度的CMOS工艺的模数转换器的要求日益迫切。本论文采用分析比较的方法对各种A/D转换电路的结构、性能、应用领域等方面做了介绍,并最终给出了A/D转换技术的发展趋势。ADC采用新型电路结构方案,如?—?调制技术,在同样的工艺条件下,使单片ADC达到更高的分辨率。将两个或多个较低分辨率的闪电型ADC组合起来,即流水线ADC,这种类型的转换器既具有高的分辨率,又有很高的转换速率。采用激光修正技术、自校正技术和统计匹配技术,使数据转换电路的分辨率和精度得到进一步的提高。采用CMOS,BiCMOS 工艺,低工作电压(3V/5V)及电源休眠工作方式等措施和技术,既可使转换器电路获得高分辨率、高精度和高转换速率,又可达到低功耗(mw量级),解决一直存在的精度、速度和功耗之间的矛盾,同时,也适应了便携式仪器的需要。

13

五邑大学本科毕业设计

2.5.1转换器芯片ADC0809简介

8路模拟信号的分时采集,片内有8路模拟选通开关,以及相应的通道抵制锁存用译码电路,其转换时间为100μs左右。下图是ADC0809的引脚说明[6]:

IN3IN4IN5IN6IN7STARTEOCDsOECLOCKVccVref(+)GNDD112345678910111213142827262524232221201918171615IN2IN1IN0ADDAADDBADDCALED7D6D5D4D0Vref(-)D2ADC0809

图2-15 ADC0809的引脚图

ADC0809的内部结构:

图2-16 ADC0809内部结构图

图中多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用一个A/D转换器进行转换,这是一种经济的多路数据采集方法。地址锁存与译码电路完成对A、B、C 3个

14

五邑大学本科毕业设计

地址进行锁存和译码,其译码输出用于通道选择,其转换结果通过三态输出锁存器存放、输出,因此可以直接与系统数据总线相连。 下表为通道选择表:

表2-1 通道选择表

C B A 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 被选择的通道 IN0 IN1 IN2 IN3 IN4 IN5 IN6 IN7

2.5.2信号引脚

ADC0809芯片为28引脚为双列直插式封装,下面对ADC0809主要信号引脚的功能说明[7]: IN7~IN0—模拟量输入通道。

ALE—地址锁存允许信号,对应ALE上跳沿,A、B、C地址状态送入地址锁存器中。 START—转换启动信号,START上升沿时,复位ADC0809;START下降沿时启动芯片,开始进行A/D转换;在A/D转换期间,START应保持低电平;本信号有时简写为ST。

A、B、C—地址线,通道端口选择线,A为低地址,C为高地址,引脚图中为ADDA,ADDB和ADDC;其地址状态与通道对应关系见通道选择表2-1。

CLK—时钟信号,ADC0809的内部没有时钟电路,所需时钟信号由外界提供,因此有时钟信号引脚;通常使用频率为500KHz的时钟信号。

EOC—转换结束信号,EOC=0,正在进行转换;EOC=1,转换结束;使用中该状态信号即可作为查询的状态标志,又可作为中断请求信号使用。

D7~D0—数据输出线,为三态缓冲输出形式,可以和单片机的数据线直接相连;D0为最低位,D7为最高。

OE—输出允许信号,用于控制三态输出锁存器向单片机输出转换得到的数据;OE=0,输出数据线呈高阻;OE=1,输出转换得到的数据。 Vcc—+5V电源。

Vref—参考电源参考电压用来与输入的模拟信号进行比较,作为逐次逼近的基准;其典型值为+5V(Vref(?)=+5V, Vref(?)=-5V)。

15

五邑大学本科毕业设计

2.5.3 MCS-51单片机与ADC0809的接口

电路连接主要涉及两个问题。一是8路模拟信号通道的选择,二是A/D转换完成后转换数据的传送。

8路模拟通道选择

P074L373ALEA0A0A1A2A780C51INT1WRP2.0RD+-+2CLKD0D7DOCSTALEOEABCV+V-ADC08095VGNDIN0IN7

图2-17 ADC0809与MCS-51的连接

如上图所示模拟通道选择信号A、B、C分别接最低三位地址A0、A1、A2即(P0.0、P0.1、P0.2),而地址锁存允许信号ALE由P2..0控制,则8路模拟通道的地址为0FEF8H~0FEFFH。此外,通道地址选择以作写选通信号,这一部分电路连接如下两图

A0A1A2P2.0

图2-18 通道地址图

ABCALESTART

16

五邑大学本科毕业设计

WR地址储存A/D启动寄存器清“0”

图2-19 信号的时间配合

从图中可以看到,把ALE信号与START信号接在一起了,这样连接使得在信号的前沿

写入(锁存)通道地址,后沿就启动转换。

启动A/D转换只需要一条MOVX指令。在此之前,要将P2.0清零并将最低三位与所选择的通道好像对应的口地址送入数据指针DPTR中。例如要选择IN0通道时,可采用如下两条指令,即可启动A/D转换:

MOV DPTR , #FE00H ;送入0809的口地址;

MOVX @DPTR , A ; 启动A/D转换(IN0); 注意:此处的A与A/D转换无关,可为任意值。

2.5.4 转换数据的传送

A/D转换后得到的数据应及时传送给单片机进行处理。数据传送的关键问题是如何确认A/D转换的完成,因为只有确认完成后,才能进行传送。为此可采用下述三种方式,本论文采用了定时传送方式来实现通信。 (1)定时传送方

对于一种A/D转换其来说,转换时间作为一项技术指标是已知的和固定的。例如ADC0809转换时间为128μs,相当于6MHz的MCS-51单片机共64个机器周期。可据此设计一个延时子程序,A/D转换启动后即调用此子程序,延迟时间一到,转换肯定已经完成了,接着就可进行数据传送。 (2)查询方式

A/D转换芯片转换完成的状态信号,例如ADC0809的EOC端,因此可以用查询方式,测试EOC的状态,即可却只转换是否完成,并接着进行数据传送。 (3)中断方式

把转换完成的状态信号(EOC)作为中断请求信号,以中断方式进行数据传送。不管使用上述那种方式,只要一旦确定转换完成,即可通过指令进行数据传送。首先送出口地址并以信号有效时OE信号即有效,把转换数据送上数据总线,供单片机接受。不管使用

上述那种方式,只要一旦确认转换结束,便可通过指令进行数据传送。所用的指令为

17

五邑大学本科毕业设计

MOVX读指令,则有:

MOV DPTR , #FE00H MOVX A , @DPTR

该指令在送出有效口地址的同时,发出有效信号,使ADC0809的输出允许信号OE有效,从而打开三态门输出,是转换后的数据通过数据总线送入A累加器中。

这里需要说明的示,ADC0809的三个地址端A、B、C即可如前所述与地址线相连,也可与数据线相连,例如与D0~D2相连。这是启动A/D转换的指令与上述类似,只不过A的内容不能为任意数,而必须和所选输入通道号IN0~IN7相一致。例如当A、B、C分别与D0、D1、D2相连时,启动IN7的A/D转换指令如下:

MOV DPTR, #FE00H ;送入0809的口地址

OV A ,#07H ; 2D1D0=111选择IN7通道 MOVX @DPTR, A ; 启动A/D转换

A/D转换接口控制电路由二输入四非门74HC02、六非门74HC74等组成。它为A/D转换器提供必要的时序信号,如A/D转换启动信号START、多路模拟信号的通道地址锁存信号ALE、A/D转换结束信号EOC、三态输出锁存缓冲器输出允许信号OE等等,并在转换结束后向单片机发出控制信号,以便单片机能够及时读取转换结果,同时驱动LED显示电路更新显示数据。

外围电路:

MCS—51 单片机 A/D转换接口控制电路 LED显示 电路 A/D转换 电路

图2-20外围电路

利用ADC0809的多通道结构来提高A/D转换分辨率,相比之下提高到10分辨率增加元件少,转换速度快,性能价格比高。

18

五邑大学本科毕业设计

2.6 MCS—51单片机

2.6.1 MCS—51单片机芯片概述

单片微型计算机SCM(Single Chip MICroeomputer),也称作微控制器MicroController,是把微型计算机主要部分都集成在一个芯片上的单芯片微型计算机。主要包括微处理器(CUP)、存储器(RMA、ORM)、输入/输出接口(I/0)、定时/计数器等功能部件。单片机自70年代问世以来,作为微型计算机一个很重要的分之,应用广泛、发展迅速,己经对人类社会产生了巨大影响。尤其是美国Intel公司生产的MCS—51系列单片机,由于其具有集成度高、处理能力强、可靠性高、系统结构简单、价格低廉等优点,在我国己经取得了广泛的应用,在智能仪器仪表、工业检测控制、机电一体化等方面取得了令人瞩目的成就。

2.6.2 MCS—51单片机内部结构与工作原理

8051是MCS—51系列单片机的最初产品,也是MCS—51系列器件的核心。 8051芯片的主要特征包括[8]:

①64K程序存储地址空间和6K4数据存储地址空间;

②K4字节的片上程序存储器和128字节的片上数据ARM;

③8—bti最优化的用于控制应用程序的CUP;

④广泛的布尔处理能力(Single—bitlogie)(相当于一个1—bitCPU); ⑤两个16—bit的定时/计数器;

⑥全双工UART(通用异步接收发送器); ⑦具有两个优先级的5个中断源; ⑧32个双向I/O口; ⑨一个片内振荡器;

如果按照功能划分,MCS—51系列单片机由8个部件组成,即微处理器(CPU)、数据存储器(ARM)、程序存储器(ORM)(其中8031无片内程序存储器)、I/0口(P0、Pl、P2、P3)、定时\\计数器、串行口、中断系统以及特殊功能寄存器SFR(Special Function Register)。微处理器由运算器和控制器组成,主要包括累加器(ACC)、B寄存器、临时存储器(TEMPI、TEMPZ)、算术逻辑单元等。

MCS—51系列单片机中的内核,它由运算器、控制器、定时器/计数器、串行接口四个部分组成。因此也可以说是将MCS—51系列单片机的内核分成了运算器、控制器、定时器/计数器、串行接口四个部分。虽然存储器不是本次设计的内容,但是它本身与设计是密不可分的。因此,下面就对应上述分法,看看MCS—51系列单片机的上述四个部分以及存储器各自的结构和功能。

19

五邑大学本科毕业设计

(1)运算器。 运算器包括算术逻辑部件AUL、位处理器、累加器A、寄存器B、暂存器、以及程序状态字寄存器PwS等。该模块的功能是实现数据的算术运算、逻辑运算、位变量处理和数据传送等操作。ALU的功能十分强大,它不仅可以对8位变量进行逻辑“与”、“或”、“非”、“异或”、移位和清零等基本操作,还可以进行加、减、乘、除和十进制调整等基本运算。AUL还具有一般微机的AUL所不具备的功能,即位处理操作,它可以对位(bi)t变量进行处理,如置位、清零、测试转移以及逻辑“与”、“或”、“非”等操作。由此可见,AUL在算术运算以及控制处理方面的能力是很强的。累加器A是一个8位的累加器。从功能上看它于一般微机的累加器相比没有什么特别之处,但需要说明的是A的进位标志Cy是特殊的,因为它同时又是位处理器的一位累加器。寄存器B是为执行乘法和除法操作设置的,在不执行乘、除法操作的一般情况下,可以把它当一个普通的寄存器使用。程序状态字寄存器PSW,是一个8位的可读写寄存器,它的不同位包含了程序状态的不同信息。其中进位标志位Cy(PwS.7)、辅助进位标志位AC(PSW.6)和Ov(PSw.2)在执行算术和逻辑指令时,可以由硬件或者软件(Cy可以有软件置位或清零)改变,因此运算器应该有上述三位状态改变的输出信息。本课题设计的运算器将完全以组合逻辑电路的形式出现,其内部将不包括累加器A、寄存器B、以及程序状态字寄存器PwS。它只是根据所接收的指令,将来自累加器、程序或者数据存储器的数据进行相应的算术或者逻辑运算,然后将运算结果以及程序状态字寄存器PSW的相关位以结果的形式输出。

(2)控制器。 控制部件是单片机的中枢神经,以主振频率为基准,控制器控制CUP的时序,对指令进行译码,然后发出各种控制信号,将各个硬件环节组织在一起。MCS—51系列单片机的CPU时序如下图所示。每个机器周期由6个状态周期组成,即51、52、53、54、55、56,而每个状态周期又由两个时相Pl、PZ(即2个主振荡周期)。所以一个机器周期依次可以表示为SIPI、SIPZ、ZSPI、SZP.2?S6PI、S6PZ。一般情况下,算术逻辑操作发生在时相Pl期间,而内部寄存器之间的传送发生在时相PZ期间,这些内部时钟信号无法从外部观测,故用XTALZ振荡信号作参考,而AEL可以用作外部工作状态指示信号用。MCS—51系列单片机的指令周期一般只有1—2个机器周期,只有乘、除两条指令占4个机器周期,当用12MHz晶体作主频率时,执行一条指令的时间,也就是一个指令周期为1ps(这样的指令约占全部指令的一半)、2ps以及4ps。主振频率越高,指令执行速度越快。

下图是CPU的时序图:

图2-21 CPU的时序图

20

五邑大学本科毕业设计

由此可见,MCS—51系列单片机的时序似乎比较简单。其实不然,要分析各条指令的取指、执行时序仍然是相当复杂的。本设计为简便起见,并不打算采用MCS—51系列单片机原有的CUP时序中机器周期的概念,而是将各条指令均设计在1到4个时钟周期内完成,因此所形成的PI核内,一个时钟周期内所要完成的任务基本上和原有MCS—51系列单片机中一个机器周期所要完成的任务基本一致(少部分指令有差别)。

(3)存储器。 MCS—51系列单片机存储器可划分为五类[9]: 程序存储器。一个微机系统之所以能够按照一定的次序进行工作,主要在于内部存在着程序,程序实际上是由用户程序形成的一串二进制码,该二进制码存放在程序存储器之中,8031无内部RMO,所以只能外扩EPORM来存放程序,MCS—51最多可以外扩6K4字节程序存储器,6K4程序存储器有5个单元具有特殊的用途。5个特殊单元分别对应于5种中断源的中断服务程序的入口地址。其分别是:“外部中断0”对应地址“0003H”;“定时器0中断”对应入口地址是“000B”;“外部中断1”对应入口地址是“0013H”;“定时器1中断”对应入口地址是“001BH”;“串行口中断”对应入口地址是“0003H”。

内部数据存储器。MCS—51系列单片机内部有128个字节的随机存储器(RAM),字节地址为00H—7FH。MCS—51对其内部的RAM很有丰富的操作指令,从而使得用户设计程序时非常便。作为用户的数据存储器,它能满足大多数控制型应用场合的需要,用作处理问题的数据缓冲器。地址为00H—1FH的32个单元是4个通用工作寄存器区,每个区含有8个8位寄存器,编号为R0—R7。用户可以通过指令改变PSW中的RS1、RS0这两位来切换寄存器区,这种功能给用户程序保护寄存器内用户内容提供了极大的方便。地址为20H—2FH的16个单元可以进行共128位的位寻址,这些单元构成了1位处理器的存储器空间。单元中的每一位都有自己的位地址,同时者16个单元也可以进行字节(8位)寻址。

特殊功能寄存器。特殊功能寄存器SFR是用对片内各功能单元进行管理、控制、监视的控制寄存器和状态寄存器。MCS—51中的特殊功能寄存器SFR非常重要的。实质上一些具有特殊功能的RAM单元,其地址范围为80H—FFH。特殊功能寄存器的总数为21个,离散的分布在该区域中,其中有些SFR还可以进行位寻址。凡是可以进行位寻址的SFR的字节,其十六进制的末位,只能是OH或者8H。另外要注意的是,128个字节的SRF块中仅有21个字节是有定义的。对于尚未定义的字节地址单元,用户不能做寄存器使用,若访问没有定义的单元,则得到一个不确定的随机数。

21

五邑大学本科毕业设计

表2-2 MCS—51特殊功能寄存器(SFR)一览表

寄存器符号 *A *B *PSWW SP DPTR DPL DPH *PI *P2 *P3 *IP *IE TMOD *TCON THO TLO TH1 TL1 *SCON SBUF 名 称 累加器 B寄存器 程序状态字 堆栈指针 数据指针(DPL、DPH) 数据指针低位 数据指针高位 口锁存器 口锁存器、 口锁存器 中断优先级控制寄存器 中断允许控制寄存器 定时器/计数器方式控制寄存器 定时器/计数器控制寄存器 定时器/计数器0高字节 定时器/计数器O低字节 定时器/计数器1高字节 定时器/计数器1低字节 串行口控制寄存器 串行数据缓冲器 地 址 OEOH OFOH ODOH 81H 82H 83H 90H OAOH OBOH OB8H OA8H 89H 88H 8CH 8AH 8DH 8BH 98H 99H 87H PCON 电源控制寄存器

位地址空间。MCS—51有一个功能很强的位处理器,它实际上是—个完整的一位微计算机。一位机在开关决策、逻辑电路仿真和实时控制方面非常有效。MCS—51指令系统中有有着丰富的位操作指令,这些指令构成了位处理机的指令集。在内部RAM和SFR中共有211个可寻址位的位地址00H—FFH,其中00H—7FH这128个位处于内部RAM的字节地址为20F—2FH单元中;其余的83个可寻址位分布在SFR中。

外部数据存储器。MCS—51应用系统往往是一个应用系统。当片内RAM不够用时,可以在片外扩充数据存储器。MCS—51给用户提供了最多可以寻址4K字节的外部扩充RAM能力。以上介绍了MCS—51的存储器结构。使用各类存储器,要注意以下几点:

地址的重叠性。数据存储器与程序存储器全部64K地址重叠;程序存储器中片内外低4K字节地址重叠;数据存储器中片内外最低128字节地址重叠;虽然有这些重叠,但不会产生混乱,这是因为采用了不同的操作指令及EA控制选择。

22

五邑大学本科毕业设计

程序存储器(ORM)与数据存储器(ARM)在使用上是严格区分的,不同的操作指令不得混用。程序存储器只能放置程序指令以及常数表格,除程序的运行控制外,其操作指令不分内外,只有两条MOVC指令;而数据存储器则存放数据,片内外操作指令不同,片外数据存储器只有一条传送指令,即MOVX。 位地址空间有两个区域,即片内RAM中的2011—2FH的128位,以及SFR中的位地址(有些位没有意义)。这些位寻址单元与位指令集构成了位处理系统。

片外数据存储器中,数据区与用户外部扩展的I/O口统一编址。与外围接口进行数据传送时,使用的是与访问外部数据存储器相同的传送指令。

(4)定时器/计数器。 MCS—51系列单片机有两个可编程定时器/计数器,即定时器/计数器O和1。它们各具有两种工作模式(定时器模式和计数器模式)和4种工作方式(方式O、方式1、方式2、方式3)。4种工作方式中,前三种方式对两个定时器/计数器都是一样的,方式3对两者时不同的,这一点在设计时要注意。特殊功能寄存器TMOD(定时器/计数器方式控制寄存器)用于控制定时器/计数器的工作模式和过方式。另一个特殊功能寄存器TCNO(定时器/计数器控制寄存器)用于T0和T1的启动和停止计数,同事还包含了T0和T1的状态。有关定时器/计数器的各个工作方式将在具体设计中详细叙述。

(5)串行口。 MCS—51系列单片机内部有一个功能很强的全双工的串行口,该串行口有四种工作方式,波特率可以由软件设置,由片内的定时器/计数器产生。串行口有两个物理上独立地接收、发送缓冲器SBUF,可以同时发送、接收数据,发送缓冲器只能写入不能读出,接收缓冲器只能读出不能写入,两个缓冲器公用一个字节地址(99H)。串行口的接收、发送数据均可触发中断系统。同时,还有两个控制寄存器来控制MCS—51单片机地串行口,它们是特殊功能寄存器SCNO和PCNO。

2.7 LED数码管结构

从各发光段电极连接方式分有共阳极和共阴极两种

所谓共阳方式是指笔画显示器各段发光管的阳极(即P区)是公共的,而阴极互相隔离。 所谓共阴方式是笔画显示器各段发光管的阴极(即N区)是公共的,而阳极是互相隔离的。如下图所示:

5EF1062KP(G) 5EF1062AP(G)

共阴极510共阳极51012 e d

3c6b78ag9f12ed3c6b7a8g9f

图2-22 发光管管脚

23

五邑大学本科毕业设计

2.8整体的PROTEL电路图

AP0404135吴明卫

图2-23 原理图

2.9 本章小结

本章详细分析了系统的硬件设计,先着重介绍本设计每个硬件模块中的主要芯片,然

后分析每个模块的设计和工作原理。

24

五邑大学本科毕业设计

第3章 系统软件设计

3.1软件的总体设计

Franklin或KeiC51交叉编译器[10]是专为51系列单片机设计的一种高效的C语言编译器,使用它可以缩短开发周期,降低开发成本,而且开发出的系统易于维护,可靠性高,可移植性好,即使在代码的使用效率上,也完全可以和汇编语言相比,因此目前它已成为开发51系列单片机的流行工具。

随着单片机开发技术的不断发展,目前已有越来越多的人从普遍使用汇编语言到逐渐使用高级语言进行开发,其中以C语言为主。C语言发展非常迅速,成为最受欢迎的语言之一,只要因为它具有强大的功能。与汇编语言相比,它不但具有结构化控制语句,而且适用范围大和可移植性好;与其他高级语言相比,它不仅简洁紧凑、灵活方便,重要的是它的运算符、数据结构非常丰富,而且设计自由度大,生成代码质量高。所以,软件部分采用了C语言编程。

为了减少错误和调试方便,本系统软件设计采用模块化设计方案,主要包括控制A/D转换模块、单片机通信模块、LED显示模块等。软件流程图:

放大信号 返 回 A/D转换 清除转换器 1 0 启动程序 START 判断当前寄存器,决是否调用通信方案 LED显示

图3-1软件流程图

25

五邑大学本科毕业设计

由上流程图可知:ADC0809的START为启动转换输入线,其上升沿用以清除A/D转换器内部寄存器,其下降沿用以启动内部控制逻辑,使A/D转换器工作。再由单片机决定通信方案,并在LED上显示。

C语言是一种高级程序设计语言[11],它提供了十分完备的规范化流程控制结构。因此采用C51语言设计单片机应用系统程序时,首先要尽可能地采用结构化的程序设计方法,这样可使整个应用系统程序结构清晰,易于调试和维护。对于一个较大的程序,可将整个程序按功能分成若干个模块,不同的模块完成不同的功能。对于不同的功能模块,分别指定相应的入口参数和出口参数,而经常使用的一些程序最好编成函数,这样既不会引起整个程序管理的混乱,还可增强可读性,移植性也好。

在单片机程序设计中,设置一个好的时钟中断,将能使一个C户U发挥两个CPU的功效,大大方便和简化程序的编制,提高系统的效率与可操作性。我们可以把一些例行的及需要定时执行的程序放在时钟中断中,还可以利用时钟中断协助主程序完成定时、延时等操作。

3.2系统的主程序

初始化设置各个寄存器的值,定义了LED: include \调用LED函数 #define addo (5.0/255.0) //宏定义 #define zero 0.005

//用于校准AD的误差

void main() //主函数 {

uint cnt=0; //定义变量 while(1) //循环函数 {

switch(cnt++) //调用函数 {

case 0: decodenum(ad_action(0)*addo+zero,0);break; //执行上面的函数

case 4: cnt=0;break; //返还 disp(); // led显示 } }

26

五邑大学本科毕业设计

3.3相关的子程序

#include //调用函数 #include //头文件 #include \头文件 #define uchar unsigned char //宏定义命令 #define uint unsigned int //宏定义 #define adin XBYTE[0x7fff]

void delayus(uint us) //延迟函数 {

while(us--); //循环开始 }

uchar ad_action(uchar chn) //得到ADC转换数据 {

uchar read_data; //存放数据 adin=chn; /定义地址 delayus(6); //给充足的时间 read_data=adin; //读到数据 return read_data; //返还

}

以上程序实现了A/D的转换器的模/数之间的转换,并校正A/D的误差。

LED的子程序:

#include \调用ADC0809函数 #define LED_Data P0 //P2 //宏定义 #define A 10 //宏定义 #define U 11 //宏定义 sbit LED1=P2^3; //管脚定义 sbit LED2=P2^2; sbit LED3=P2^1;

sbit LED4=P2^0;//ED1=P3^0;LED2=P3^1;LED3=P3^2; LED4=P3^3; sbit dp=P0^7;

27

五邑大学本科毕业设计

#define LED_slect P2

static uchar dispdata[4]; //定义数值 void decodenum(float adv,uchar chn) //解码开始 {

uint temp; //定义 temp=(uint)(adv*100); //放大100 dispdata[0]=temp/100; dispdata[1]=temp/10; dispdata[2]=temp; dispdata[3]=chn; }

void select(uchar LED) //数码管通道选择 {

switch(LED) //循环函数 {

case 0:LED1=0;break; //执行0通道,返还 case 1:LED2=0;break; //执行1通道,返还 case 2:LED3=0;break; //执行2通道,返还 case 3:LED4=0;break; //执行3通道,返还 default: LED_slect=0xff; //低电平 } }

void dispone(uchar LED,bit ifpoint,uchar number) //,number 0--9 //送到数码管 {

select(LED); /数码管显示选择

LED_Data=num[number]|0x80; //数据送到相应管脚 if(ifpoint) //调用上面函数 dp=1; else

dp=0;

28

把数据五邑大学本科毕业设计

}

void disp() //数码管显示选择 {

uchar i; //定义变量 bit point;

for(i=0;i<4;i++) //进入循环0-3 {

if(i==1) point=0; /控制数码管 else point=1;

dispone(i,point,dispdata[i]); //进入下一个数码管的循环 } }

delayus(200); //延迟200us LED_slect=0xff; //数码管关闭

3.4本章小结

本章介绍了程控器的软件设计部分。软件设计是否完善,直接关系到系统能否正确地执行指定的指令。总之,软件设计是系统设计的灵魂,设计好软件是至关重要的。

29

五邑大学本科毕业设计

第4章 系统调试与总结

电路的制作与调试过程是整个系统的设计开发过程从理论迈向应用的第一步,电路板的制作会直接影响电路工作的稳定性,电路板做得好,为后面的调试做好基础。

4.1 PCB的绘制和制板过程

印制电路板的布线单片机系统能否抗干扰非常重要。要本着尽量控制噪声源、尽量减小噪声的传播与耦合,尽量减小噪声的吸收这三大原则设计印制电路板和布线。在元器件的布局方面,应该把相互有关的元件尽量放得靠近一些,对于那些易产生噪声的器件、小电流电路、大电流电路开关电路等,应尽量使其远离单片机的逻辑控制电路,如果可能的话,可以将这些电路另外制成电路板,这样有利于抗干扰,提高电路工作的可靠性。本来整个电路是用万用版来做电路板的,后来做好进行调试时,接线太多了,误差很大、检查起来很不方便。经过考虑、老师的指导、同学的建议,决定把ADC0809这块电路做成PCB板。

制PCB板前作出准备:绘制电路原理图,生成网络表,规划电路板,装入网络表和元件库,接着就可以进行制作PCB板。在画原理图时尽量将相关的元器件放在同一方向,采用Protel 99se布线,在满足电路性能及整机安装与面板布局要求的前提下,元件的排列方位尽可能保持与原理图相一致。布线方向最好与电路图走线方向相一致,设计时应力求走线合理,少用外接跨线,便于检查、调试及检修。焊盘设置为椭圆形,连线以1mm为宜,完成连线的手工调整后,再将焊盘变为泪滴焊盘,以提高焊盘(包括过孔)与印制导线连接处的宽度。为了提高电路的抗干扰和散热能力,完成布线后,在PCB板的焊锡面放置与地线相连的大面积敷铜区,达到减少接地电阻,改善散热的能力。

在实际操作中,要认真选好、画好封装,做到一丝不苟。要不,当你装焊元件到一半时才发现,装不进去,那时已经进退两难了,就算勉强装焊上去,也会影响美观,况且,还有可能影响性能,令电路的可靠性埋下了隐患。

电路板方面选用了单面感光板,感光最好就是在太阳光下,此时阳光均匀、亮度高,容易控制,感光大约8分钟就可以进行显影。显影时,如果经验不足,可以先剪一下块感光板做试验,适当地调好显影剂与水的比例,建议刚开始时显影剂的浓度可以低一些,如果发现显影不理想时再投放少量显影剂进去。这样投放显影剂目的是防止经验不足,导致显影剂过量,容易把导线弄掉,损坏整块感光板。注意,显影剂不够量再加进显影剂的时候,一定要拿起感光板,直到显影剂完全溶化的时候,才能放感光板进去从新显影。

腐蚀感光板的过程中,要不时地拿上来查看,如果发现有些线路的感光薄膜脱落,要立即清洗并用随身携带的油性笔补画上去,以免把导线腐蚀了。

磨刀不误砍柴工,要想焊好一块电路板,就要选择一把好的烙铁和一把吸锡器,选用有口碑的焊锡材料。装焊前,要清洁一下烙铁头,清洁烙铁头的石棉要蘸上水,随时准备清洗烙铁头。装焊的时间不能太长,否则,很容易烧坏焊盘,还可能烧坏元器件;太短

30

五邑大学本科毕业设计

也不行,那样容易导致虚焊。总之,一个合格的焊点应该做到无虚焊、假焊、拉锡和有锡渣,焊点表明圆润、有光泽。

4.2 硬件电路调试

本论文设计的电路主要分三大块:①万用板上的放大电路;②PCB板上的A/D模数转换电路;③开发板上的单片机与LED。在做放大电路时,开始是用三极管NPN来设计,由于三极管的静态工作点比较难确定,并且容易烧坏,后来改用放大芯片LM358来实现,效果不错,能把传感器的电压放大到5V左右。在做A/D模数转换电路时,装焊好元件后,使用万用表进行检查,排除电路中存在短路、断路的可能。首先,查看电源是否能够正常供电,因为电源作为程控器的动力之源,对程控器的正常运行至关重要。用万用表测量本设计的变压器输出是否为交流5V,三端稳压器的输出端输出5V 稳不稳定等。如果没有出现异常,就装上芯片进行在线通电检查。检查的时候,要留意各个芯片的管脚电压,检查单片机是否起振。

在调试初期,电路板上的一切电压正常,但是单片机全部输出高电平,或者输出乱码,控制处于失控状态。到实验室用示波器查看晶振输出波形,发现晶振没有起振。如果起振,用示波器的探针检测晶振的任一管脚,均能看到正弦波产生的。后来检查发现是电源问题。因为:压力传感器要用到25V的电源,而单片机、LM358、74HC74、74HC02都是用5V的电源,所以,调试就比较麻烦,电源、电流的控制要恰到好处才能显示效果。

4.3 软件调试

软件程序的设计采用C语言,对AT89S51进行编程实现各种功能。所用的编译器是Keil uVision2,编译环境是Windows XP,调试的流程是对各个子单元逐个地调试成功后,再联合起来整体调试,下面介绍一下调试的过程。

需要独立调试的子程序有:LED显示和A/D转换程序程序。通过这一步以后,再调试参数设置子程序和主程序。当调到这里的时候,这时的输出控制信号不是很准确,所以还需要通过多次的调试参数以得到理想的输出控制信号。

4.4 软、硬件总体调试

软、硬件结合后进行程控器的总体测试,发现在时序上控制的不是很好,例如,常常是控制部分提前完成,但是显示部分还显示没有结束。经过慢慢细心的调整,基本上已经在时钟方便做到准确了。

31

五邑大学本科毕业设计

开始的时候,电路没有采用74HC02反相器,直接利用单片机高电平驱动ADC0809,忽略了单片机复位的时候,所有管脚均为高电平,导致ADC0809常误动作。经过分析,采用了反相器后,单片机利用低电平作为选通信号,程控器的工作稳定性大大提高了。由于LED是在开发板上,七段数码管的显示亮度不错,情况比在PCB板上好多。

4.5体会

这次毕业设计是我MCS-51系列单片机开发的第一个作品。一开始对单片机外围电路的理解是很模糊的,觉得有点难度。随着时间的推移,逐渐熟悉了单片机通信,数码管的原理,还有基本外围电路及其编程。另外,开发单片机应用系统不仅仅是单片机本身技术上的问题,我们还需要了解相关专业的知识。比如,压力传感器、A/D转换器、74HC02芯片的一些概念。只有理解这些芯片的基本概念,才能编写出合乎逻辑的控制程序来。还有,以前学习标准的C语言,根本体会不了它的本质意义。这次毕业设计的编程是采用C语言,我体会到C确实能操作实实在在的硬件,尽管那些硬件已被封装成一些符号了。

这次毕业设计从查找资料,画原理图、PCB,制作电路板,编程调试到写总结论文,整个过程充分运用了大学四年来所学的专业知识,每一步都得到了充分地锻炼和能力的提升。通过这次毕业设计,对单片机开发技术有了感性和理性地认识,更加坚定了我今后从事单片机硬软件开发的信念。

不过这次毕业设计还有一些重要的功能没有实现。同时,本信号机只是单片机的简单扩展而已。全面提高单片机应用系统的设计和开发技术,有待将来于的努力。

32

五邑大学本科毕业设计

结 论

基于单片机控制的电子称重系统,通过放大器放大信号,A/D模数转换,达到压力监控的功能。利用51单片机来控制,实现了容易操作、功能丰富,可以扩展声光提示的设计要求。

在系统的软件设计过程中,我力求做到程序精简、功能齐全、运行稳定可靠,充分发挥了C语言编程的灵活性,编写出符合要求的程序。由于以前学单片机时只用汇编编程,也没有做过硬件,因此,用C语言编起来犹为吃力,得到许多教训。但自己通过独立思考,到图书馆、网上查找资料,虚心向向老师、同学请教,都一一把困难解决,顺利完成了毕业设计的要求。

采用Protel 99se设计制作原理图时,参考了大量的专业技术书籍,做到深刻理解系统的工作原理,设计出合理可靠的电路。设计完原理图,画PCB也不能急躁,要有耐心地连接每一根线。 同时,也令我更加熟悉了PROTEL的使用方法。装焊元器件的过程中,学会了学多检测元器件的方法,对日后的工作有很大的帮助。

从设计的过程中,也发现了许多不足,例如,对元器件的性能、型号非常生疏,去买元器件时,连压敏电阻的读书都搞不清楚;可控硅的特性不熟悉,导致装错引脚;封装画的不够精确等等。再有就是,网上查找资料的速度慢,查找得不够准确,看英文资料存在很大的障碍。希望自己以后能在这些方面多下功夫学习,令自己的知识更全面。

设计虽然基本符合毕业设计的要求,但还存在着许多需要改进的方面:

(1)编程过于烦琐,令程序存在不稳定的因素;由于时间的紧迫,功能方面只实现了电压的显示功能,如果时间充裕,可以对程序进行修改、添加其发音功能程序。

(2)硬件电路方面的电源选择、抗干扰能力都没有用专门的仪器进行试验,令系统的稳定性存在很大的隐患。电路只控制直流低压的通断,其运行的稳定性还有待论证。

此外,本设计涉及A/D模数具有非常大的实用价值,电路制作,电子产品开发都要用到这方面的知识。通过适当改变硬件配置,以及适当修改程序,还可以开发成具有各种功能的电子秤。因此,它在工业领域它具有十分广阔的应用前景。

33

五邑大学本科毕业设计

致 谢

在多数人看来,完成普通大学本科毕业设计是极其微不足道的,但于我而言,却是人生的一个新起点。能够顺利完成毕业设计,首先要感谢王洪涛老师的悉心指导,在此,向王洪涛老师表示衷心的谢意。其次,感谢五邑大学对我的培养,感谢刘焕成导师、电子实验室的罗老师的关怀,感谢五邑大学所有给我授过课的老师,感谢他们指导我走完大学四年的人生之路。

34

五邑大学本科毕业设计

参考文献

1 赵广平,孙雯萍,孙建军. 电子称重技术现状及发展趋势,1996年3月:1-3. 2 刘九卿. 展望21世纪初电子称重技术的发展,1999年6月:2-6.

3 郭成锐,林呵谢.压阻式MEMS压力传感器工作原理与分析,2007年7月:1-3. 4 张岩,胡秀芳.传感器应用技术.福建科学技术出版社,2005年11月:73-82. 5 孙以材,刘玉岭等.压力传感器的设计.冶金工业出版社,2000年4月:144-181. 6 刘焕成.工程背景下的单片机原理及系统设计.清华大学出版社,2008年:313-324. 7 龚运新,胡长胜等. 单片机实用技术教程. 北京师范大学出版社,2006年2月:239-251. 8 刘小俊. 基于DEA技术的兼容MCS-51单片机PI核设计.武汉理工大学【硕士学位论文】,2005年5月:25-35.

9 Lozano, JL,Corbera, J,etal. Design of a remote monitoring system for high-speed craft .Journal of Navigation ,2000:53-67.

10 牛余朋,牛傲其. 51单片机C语言的编程技巧,2007年3月:1-3.

11 M B Timmons, G R Baughman. Experimental evaluation of poultry mist -fog systems .Transactions of the ASAE:1983:16-23.

35

五邑大学本科毕业设计

附录1 AT89S51数据手册

主要性能参数:

1,与MCS-51产品指令系统完全兼容

2,4k字节在线系统编程(ISP)Flash闪速存储器 3,1000次擦写周期

4,4.0-5.5V的工作电压范围 5,全静态工作模式:0Hz-33Hz 6,三级程序加密锁

7,128字节内部RAM 8, 32个可编程I/O口线 9,2个16位定时/计数器 10,6个中断源

11,全双工串行UART通道 12,低功耗的空闲和掉电模式 13,中断可从空闲模唤醒系统 14,看门狗(WDT) 15, 双数据指针

16,掉电标识 17, 快速编程特性

18,灵活的在线系统编程 概述:

AT89S51是美国ATMEL公司生产的低功耗,高性能CMOS 8 位单片机,片内含4k字节的可在线系统编程的Flash程序存储器,器件采用 ATMEL 公司的高密度、非易失性存储技术生产,兼容标准8051指令系统及引脚。ATMEL公司的功能强大,低价位AT89S51单片机可为您提供许多高性价比的应用场合,可灵活应用于各种控制领域。

AT89S51提供以下标准功能;4k字节Flash闪速存储器,128字节内部RAM,32个I/O口线,看门狗,两个数据指针,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89S51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡停止工作并禁止其它所有部件工作直到下一个硬件复位。 引脚功能说明:

Vcc:电源电压 GND:地

P0口:P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口。作为输出口用时,每位能驱动8个TTL逻辑门电路,对端口写“1”可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,

36

本文来源:https://www.bwwdw.com/article/say.html

Top