基于单片机控制的电子秤设计112_第1页
基于单片机控制的电子秤设计112_第2页
基于单片机控制的电子秤设计112_第3页
基于单片机控制的电子秤设计112_第4页
基于单片机控制的电子秤设计112_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

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

文档简介

目 录摘要IAbstractII1绪论12系统方案论证与选型2 2.1 控制器部分3 2.2.传感器的选择3 2.3.放大电路的选择4 2.4.A/D转换器的选择6 2.5.键盘处理方案论证 6 2.6 显示电路的选择6 2.7 超量程报警部分选择73 硬件电路设计8 3.1 AT89S52的最小系统电路12 3.1.1AT89S52简介9 3.1.2单片机管脚说明9 3.1.3AT89S52的最小电路构成9 3.2.2A/D转换芯片与单片机接口电路设计 153.3 显示电路与单片机接口电路设计113.4键盘电路与单片机接口电路设计113.5报警电路设计124系统软件设计144.1主程序设计154.2子程序设计18 4.2.1A/D转换启动以及数据读取程序设计18 4.2.2数制转换子程序设计19 4.2.3显示子程序设计21 4.2.4 键盘扫描子程序的设计25 4.2.5 报警子程序的设计26设计总结28致谢29参考文献30附录31II基于单片机控制的电子秤设计摘要:本文设计的电子称是以单片机为主要部件,用汇编语言进行软件设计。通过传感器测量信号,用信号放大系统放大信号,经过A/D转换系统转换信号输送给CPU控制系统,通过LCD显示系统显示数据,键盘输入系统用来输入操作指令,阀值报警系统可以防止超量程损坏电子称。基本上实现了电子秤的基本功能。具备使用方便,直观,测量准确,成本低等特点。适应了现代社会发展的需求。在本设计中将智能化,人性化,自动化用在了电子秤的控制系统中。系统采用AT89S52芯片作为单片机的主控芯片,外围以称重电路,显示电路,报警电路,键盘电路等构成系统电路板,从而实现了自动称重的各种控制功能。关键词 ; 电子称 单片机 AT89S52 称重传感器 A/D转换器 LCD显示器1Electronic design based on single chip microcomputer control Abstract : This article is based on single chip design, said the main electronic components in assembly language for software design. Measured by the sensor signal, amplifies the signal with a signal amplification system, after A / D conversion system control signal transmission to the CPU, LCD display system displays the data through the keyboard input system for entering instructions, the threshold alarm system to prevent over-range damage to electronic said. Basically realize the basic functions of electronic scales. With easy to use, intuitive, measurement accuracy, and low cost. Adapted to the needs of modern social development. In this design will be intelligent, humane, automated electronic scales used in the control system. System uses the AT89S52 chip as the microcontroller control chip, the external load assigned to the city circuit, display circuit, alarm circuit, the keyboard circuit board constitutes a system, enabling the automatic weighing of the various control functions.Keywords: electronic scale AT89S52 load sensor A/D converter LCD display绪 论1.1 称重技术和衡器的发展称重技术自古以来就被人们所重视,作为一种计量手段,广泛应用于工农业、科研、交通、内外贸易等各个领域,与人民的生活紧密相连。电子秤是电子衡器中的一种,衡器是国家法定计量器具,是国计民生、国防建设、科学研究、内外贸易不可缺少的计量设备,衡器产品技术水平的高低,将直接影响各行各业的现代化水平和社会经济效益的提高。称重装置不仅是提供重量数据的单体仪表,而且作为工业控制系统和商业管理系统的一个组成部分,推进了工业生产的自动化和管理的现代化,它起到了缩短作业时间、改善操作条件、降低能源和材料的消耗、提高产品质量以及加强企业管理、改善经营管理等多方面的作用。称重装置的应用已遍及到国民经济各领域,取得了显著的经济效益。因此,称重技术的研究和衡器工业的发展各国都非常重视。50年代中期电子技术的渗入推动了衡器制造业的发展。60年代初期出现机电结合式电子衡器以来,经过40多年的不断改进与完善,我国电子衡器从最初的机电结合型发展到现在的全电子型和数字智能型。现今电子衡器制造技术及应用得到了新发展。电子称重技术从静态称重向动态称重发展:计量方法从模拟测量向数字测量发展;测量特点从单参数测量向多参数测量发展,特别是对快速称重和动态称重的研究与应用。通过分析近年来电子衡器产品的发展情况及国内外市场的需求,电子衡器总的发展趋势是小型化、模块化、集成化、智能化;其技术性能趋向是速率高、准确度高、稳定性高、可靠性高;其功能趋向是称重计量的控制信息和非控制信息并重的“智能化”功能;其应用性能趋向于综合性和组合性。电子秤是电子衡器中的一种,衡器是国家法定计量器具,是国计民生、国防建设、科学研究、内外贸易不可缺少的计量设备,衡器产品技术水平的高低,将直接影响各行各业的现代化水平和社会经济效益的提高。1.2电子秤的组成以及工作原理电子称是利用物体的重力作用来确定物体质量的测量仪器,也可用来确定与物体质量相关的其他量的大小,参数,或特性。电子称一般由以下三部分组成。承重、传力复位系统,称重传感器,测量显示和数据输出的的载荷测量装置。当被称物体放置在秤体的秤台上时,其重量便通过秤体传递到称重传感器,传感器随之产生力电效应,将物体的重量转换成与被称物体重量成一定函数关系(一般成正比关系)的电信号(电压或电流等)。此信号由放大电路进行放大、经滤波后再由模/数(A/D)器进行转换,数字信号再送到微处器的CPU处理,CPU不断扫描键盘和各种功能开关,根据键盘输入内容和各种功能开关的状态进行必要的判断、分析、由仪表的软件来控制各种运算。运算结果送到内存贮器,需要显示时,CPU发出指令,从内存贮器中读出送到显示器显示,或送打印机打印。一般地信号的放大、滤波、A/D转换以及信号各种运算处理都在仪表中完成。1.3设计思路 目前,台式电子秤在商业贸易中的使用已相当普遍,但存在较大的局限性:体积大、成本高、需要工频交流电源供应、携带不便、应用场所受到制约。现有的便携秤为杆秤或以弹簧、拉伸变形来实现计量的弹簧秤,居民用户使用的基本是杆秤。弹簧盘秤制造工艺要求较高,弹簧的疲劳问题无法彻底解决,一旦超过弹簧弹性限度,弹簧秤就会产生很大误差,以至损坏,影响到称重的准确性和可靠性,只是一种暂时的代用品,也被列入逐渐取消的行列。 微控制器技术、传感器技术的发展和计算机技术的广泛应用,电子产品的更新速度达到了日新月异的地步。本系统在设计过程中,除了能实现系统的基本功能外,还增加了打印和通讯功能,可以实现和其他机器或设备(包括上位PC机和数据存储设备)交换数据.除此之外,系统的微控制器部分选择了兼容性比较好的AT89系列单片机,在系统更新换代的时候,只需要增加很少的硬件电路,甚至仅仅删改系统控制程序就能够实现。另外由于实际应用当中,称可以有一定量的过载,但不能超出要求的范围,为此我们还设计了过载提示和声光报警功能。综上所述,本课题的主要设计思路是:利用压力传感器采集因压力变化产生的电压信号,经过电压放大电路放大,然后再经过模数转换器转换为数字信号,最后把数字信号送入单片机。单片机经过相应的处理后,得出当前所称物品的重量及总额,然后再显示出来。此外,还可通过键盘设定所称物品的价格。主要技术指标为:称量范围05kg;分度值0.01kg;精度等级级;电源DC1.5V(一节5号电池供电)。这种高精度智能电子秤体积小、计量准确、携带方便,集质量称量功能与价格计算功能于一体,能够满足商业贸易和居民家庭的使用需求。按键输入AT89S52单片机压力传感器放大电路A/D转换器LCD显示器阀值报警设计思路框图1.1第二章 系统方案论证与选型2.1CPU的选择方案 本设计由于要求必须使用单片机作为系统的主控制器,而且以单片机为主控制器的设计,可以容易地将计算机技术和测量控制技术结合在一起,组成新型的只需要改变软件程序就可以更新换代的“智能化测量控制系统”。这种新型的智能仪表在测量过程自动化、测量结果的数据处理以及功能的多样化方面,都取得了巨大的进展。再则由于系统没有其它高标准的要求,又考虑到本设计中程序部分比较大,根据总体方案设计的分析,设计这样一个简单的的系统,可以选用带EPROM的单片机,由于应用程序不大,应用程序直接存储在片内,不用在外部扩展存储器,这样电路也可简化。INTEL公司的8051和8751都可使用,在这里选用ATMENL生产的AT89SXX系列单片机。AT89SXX系列与MCS-51相比有两大优势:第一,片内存储器采用闪速存储器,使程序写入更加方便;第二,提供了更小尺寸的芯片,使整个硬件电路体积更小。此外价格低廉、性能比较稳定的MCPU,具有8K8ROM、2568RAM、2个16位定时计数器、4个8位I/O接口。这些配置能够很好地实现本仪器的测量和控制要求最后我们最终选择了AT89S52这个比较常用的单片机来实现系统的功能要求。AT89S52内部带有8KB的程序存储器,基本上已经能够满足我们的需要。2.2传感器的选择 在本设计中,传感器是个十分重要的元件,因此对传感器的选择也显得十分重要。不仅要注意其量程和参数,还要考虑与其相配置的各种电路的设计的难易程度和设计性价比等等。 综合考虑,本设计采用SP20C-G501电阻应变式传感器,其最大量程为7.5 Kg.称重传感器由组合式S型梁结构及金属箔式应变计构成,具有过载保护装置。由于惠斯登电桥具诸如抑制温度变化的影响,抑制干扰,补偿方便等优点,所以该传感器测量精度高、温度特性好、工作稳定等优点,广泛用于各种结构的动、静态测量及各种电子秤的一次仪表。该称重传感器主要由弹性体、电阻应变片电缆线等组成,其工作原理如图2.1所示: 图2.1 传感器工作原理图其工作原理:用应变片测量时,将其粘贴在弹性体上。当弹性体受力变形时,应变片的的敏感栅也随之变形,其阻值发生相应的变化,通过转换电路转换为电压或电流的变化。由于内部线路采用惠更斯电桥,当弹性体承受载荷产生变形时,输出信号电压可由下式2-2给出:(2-2)2.3放大电路的选择方案主要由高精度低漂移运算放大器构成差动放大器,而构成的前级处理电路差动放大器具有高输入阻抗,增益高的特点,可以利用普通运放做成一个差动放大器。其设计电路如图2.3所示:图2.3 利用普通运放设计的差动放大器电路图2.4 A/D转换器的选择A/D转换部分是整个设计的关键,这一部分处理不好,会使得整个设计毫无意义。目前,世界上有多种类型的ADC,有传统的并行、逐次逼近型、积分型ADC,也有近年来新发展起来的-型和流水线型ADC,多种类型的ADC各有其优缺点并能满足不同的具体应用要求。目前, ADC集成电路主要有以下几种类型:(1)并行比较A/D转换器:如ADC0808、 ADC0809等 。并行比较ADC是现今速度最快的模/数转换器,采样速率在1GSPS以上,通常称为“闪烁式”ADC。它由电阻分压器、比较器、缓冲器及编码器四种分组成。这种结构的ADC所有位的转换同时完成,其转换时间主取决于比较器的开关速度、编码器的传输时间延迟等。缺点是:并行比较式A/D转换的抗干扰能力差,由于工艺限制,其分辨率一般不高于8位,因此并行比较式A/D只适合于数字示波器等转换速度较快的仪器中,不适合本系统。(2) 逐次逼近型A/D转换器:如:ADS7805、ADS7804等。逐次逼近型ADC是应用非常广泛的模/数转换方法,这一类型ADC的优点:高速,采样速率可达 1MSPS;与其它ADC相比,功耗相当低;在分辨率低于12位时,价格较低。缺点:在高于14位分辨率情况下,价格较高;传感器产生的信号在进行模/数转换之前需要进行调理,包括增益级和滤波,这样会明显增加成本。(3)积分型A/D转换器:如:ICL7135、ICL7109、ICL1549、MC14433等。积分型ADC又称为双斜率或多斜率ADC,是应用比较广泛的一类转换器。它的基本原理是通过两次积分将输入的模拟电压转换成与其平均值成正比的时间间隔。与此同时,在此时间间隔内利用计数器对时钟脉冲进行计数,从而实现A/D转换。积分型ADC两次积分的时间都是利用同一个时钟发生器和计数器来确定,因此所得到的表达式与时钟频率无关,其转换精度只取决于参考电压VR。此外,由于输入端采用了积分器,所以对交流噪声的干扰有很强的抑制能力。若把积分器定时积分的时间取为工频信号的整数倍,可把由工频噪声引起的误差减小到最小,从而有效地抑制电网的工频干扰。这类ADC主要应用于低速、精密测量等领域,如数字电压表。其优点是:分辨率高,可达22位;功耗低、成本低。缺点是:转换速率低,转换速率在12位时为100300SPS。 (4)压频变换型ADC:其优点是:精度高、价格较低、功耗较低。缺点是:类似于积分型ADC,其转换速率受到限制,12位时为100300SPS。 考虑到本系统中对物体重量的测量和使用的场合,精度要求不是很苛刻,转换速率要求也不高,根据系统的精度要求以及综合的分析,本设计采用了12位逐次逼近型A/D转换器AD574。2.5 键盘处理部分方案论证由于电子秤需要设置单价(十个数字键),还具有确认、删除等功能,总共需设置17个键(包括一个复位键)。键盘的扩展有使用以下方案:采用矩阵式键盘:矩阵式键盘的特点是把检测线分成两组,一组为行线,一组列线,按键放在行线和列线的交叉点上。图2-4给出了一个44的矩阵键盘结构的键盘接口电路,图中的每一个按键都通过不同的行线和列线与主机相连这。44矩阵式键盘共可以安装16个键,但只需要8条测试线。当键盘的数量大于8时,一般都采用矩阵式键盘。结合本设计的实际要求,16个按键使用44矩阵式键盘,另外一个复位键使用独立式按键实现。2.6显示器部分的选择 显示器是人机交换的主要部分,他可以将测量电路测得的数据经过cpu处理后直观的显示出来。数据显示有两种方案:LED数码显示和LCD液晶显示。LCD液晶显示器是一种极低功耗显示器,从电子表到计算器,从袖珍仪表到便携式微型计算机以及一些文字处理机都用到了液晶显示器。考虑到液晶显示器的直观方便,这次设计选择了LCD液晶显示器。2.7超量程报警部分选择智能仪器一般都具有报警和通讯功能,报警主要用于系统运行出错、当测量的数据超过仪表量程或者是超过用户设置的上下限时为提醒用户而设置。在本系统中,设置报警的目的就是在超出电子秤测量范围时,发出声光报警信号,提示用户,防止损坏仪器。超限报警电路是由单片机的I/O口来控制的,当称重物体重量超过系统设计所允许的重量时,通过程序使单片机的I/O值为高电平,从而三极管导通,使蜂鸣器SPEAKER发出报警声,同时使报警灯D1发光。第三章 硬件电路设计在本系统中用于称量的主要器件是称重传感器,称重传感器在受到压力或拉力时会产生电信号,受到不同压力或拉力是产生的电信号也随着变化,而且力与电信号的关系一般为线性关系。由于称重传感器一般的输出范围为020mV,对A/D转换或单片机的工作参数来说不能使A/D转换和单片机正常工作,所以需要对输出的信号进行放大。由于传感器输出的为模拟信号,所以需要对其进行A/D转换为数字信号以便单片机接收。单片机根据称重传感器输出的电信号和速度传感器输出的速度信号计算出物体的重量。在本系统中,硬件电路的构成主要有以下几部分: AT89C52的最小系统构成、电源电路、数据采集、人-机交换电路等。单 片 机复位电路时钟电路按键接口电路A/D转换接口电路LCD显示电路报警电路3.1.1AT89S52介绍高性能8位单片机AT89S52 是一个低功耗,高性能CMOS 8位单片机,片内含8k Bytes的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S52可为许多嵌入式控制应用系统提供高性价比的解决方案。AT89S52具有如下特点:40个引脚,8k Bytes Flash片内程序存储器,256 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。此外,AT89S52设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。 3.1.2 AT89S52各引脚功能介绍VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门流。当P1口的管脚第一次写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编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。表3.1 P3.0口引脚功能表P3口引脚第二功能P3.0RXD(串行口输入)P3.1TXD(串行口输出)P3.2INT0(外部中断0输入)P3.3INT1(外部中断1输入)P3.4T0(定时器0外部脉冲输入)P3.5T1(定时器1外部脉冲输入)P3.6WR(外部数据存储器写脉冲输出)P3.7RD(外部数据存储器读脉冲输出)图3.1AT89S52引脚图3.1.3AT89S52的最小系统电路构成AT89S52单片机的最小系统由时钟电路、复位电路、电源电路及单片机构成。单片机的时钟信号用来提供单片机片内各种操作的时间基准,复位操作则使单片机的片内电路初始化,使单片机从一种确定的初态开始运行。单片机的时钟信号通常用两种电路形式得到:内部振荡方式和外部振荡方式。在引脚XTAL1和XTAL2外接晶体振荡器(简称晶振)或陶瓷谐振器,就构成了内部振荡方式。由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自激振荡器并产生振荡时钟脉冲。当单片机的复位引脚RST出现2个机器周期以上的高电平时,单片机就执行复位操作。如果RST持续为高电平,单片机就处于循环复位状态。根据应用的要求,复位操作通常有两种基本形式:上电复位和上电或开关复位。上电复位要求接通电源后,自动实现复位操作。上电或开关复位要求电源接通后,单片机自动复位,并且在单片机运行期间,用开关操作也能使单片机复位。单片机的复位操作使单片机进入初始化状态,其中包括使程序计数器PC0000H,这表明程序从0000H地址单元开始执行。系统复位是任何微机系统执行的第一步,使整个控制芯片回到默认的硬件状态下。51单片机的复位是由RESET引脚来控制的,此引脚与高电平相接超过24个振荡周期后,51单片机即进入芯片内部复位状态,而且一直在此状态下等待,直到RESET引脚转为低电平后,才检查EA引脚是高电平或低电平,若为高电平则执行芯片内部的程序代码,若为低电平便会执行外部程序。3.2A/D转换器与AT89S52单片机接口电路设计AD574是美国Analog Device公司生产的12位单片A/D转换器。它采用逐次逼近型的A/D转换器,最大转换时间为25us,转换精度为0.05%,所以适合于高精度的快速转换采样系统。芯片内部包含微处理器借口逻辑(有三态输出缓冲器),故可直接与各种类型的8位或者16位的微处理器连接,而无需附加逻辑接口电路,切能与CMOS及TTL电路兼容。AD574采用28脚双列直插标准封装。A/D574有5根控制线,逻辑控制输入信号有:A0:字节选择控制信号。CE:片启动信号。/CS:片选信号。当/CS=0,CE=1同时满足时,AD574才处于工作状态,否则工作被禁止。R/-C:读数据/转换控制信号。12/-8:数据输出格式选择控制信号。当其为高电平时,对应12位并行输出;为低电平时,对应8位输出。当R/-C=0,启动A/D转换:当A0=0,启动12位A/D转换方式;当A0=1,启动8位转换方式。当R/-C=1,数据输出,A0=0时,高8位数据有效;A0=1时,低4位数据有效,中间4位为0,高4位为三态。输出信号有:STS:工作状态信号线。当启动A/D进行转换时,STS为高电平;当A/D转换结束时为低电平。则可以利用此线驱动一信号二极管的亮灭,从而表示是否处于A/D转换。其它管脚功能如下:10Vin,20Vin:模拟量输入端,分别为10V和20V量程的输入端,信号的另一端接至AGND。DB11DB0:12位数字量输出端,送单片机进行数据处理。REF OUT :10V内部参考电压输出端。REF IN :内部解码网络所需参考电压输入端。BIP OFF :补偿校正端,接至正负可调的分压网络,0输入时调整数字输出为0;AGND:接模拟地。DGND:接数字地。由于对AD574 8、10、12引脚的外接电路有不同连接方式,所以AD574与单片机的接口方案有两种,一种是单极性接法,可实现输入信号010V或者020V的转换;另一种为双极性接法,可实现输入信号-5+5V或者-10+10V之间转换。本次设计采用单极性接法。图3.2 AD574芯片引脚图图3.3 AD574与AT89s52的接线图根据芯片管脚的原理,无论启动、转换还是结果输出,都要保证CE端为高电平,所以可以将单片机的/RD引脚和/WR端通过与非门与AD574的CE端连接起来。转换结果分高8位、低4位与P0口相连,分两次读入,所以12/-8端接地。同时,为了使CS、A0、R/-C在读取转换结果时保持相应的电平,可以将来自单片机的控制信号经74LS373锁存后再接入。CPU可采用中断、查询或者程序延时等方式读取AD574的转换结果,本设计采用中断方式,则将转换结束状态STS端接到P3.2(外部中断/INT0)。其工作过程如下:A.当单片机执行对外部数据存储器的写指令,并使CE=1,/CS=0,R/-C=0,A0时,进行12位A/D转换启动。B.CPU等待STS状态信号送P3.2口,当STS由高电平变为低电平时,就表示转换结束。转换结束后,单片机通过分两次读外部数据存储器操作,读取12位的转换结果数据。C.当CE=1,/CS=0,R/-C=1,A0=0时,读取高8位;当CE=1,/CS=0,R/-C=1,A0=1时,读取低4位。3.3显示电路与AT89S52单片机的接口电路设计本设计采用是LCD显示。在LCD驱动时,需在段电极和公共电极上施加交流电压。若只在电极上施加DC电压时,液晶本身发生劣化。液晶驱动方式包括静态驱动、动态驱动等驱动方式。图3.4 单片机与LCD接线图3.4键盘电路与AT89s52的接口电路设计矩阵式键盘的结构与工作原理: 在键盘中按键数量较多时,为了减少I/O口的占用,通常将按键排列成矩阵形式。在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。这样,一个端口(如P1口)就可以构成4*4=16个按键,比之直接将端口线用于键盘多出了一倍,而且线数越多,区别越明显,比如再多加一条线就可以构成20键的键盘,而直接用端口线则只能多出一键(9键)。由此可见,在需要的键数比较多时,采用矩阵法来做键盘是合理的。矩阵式键盘的按键识别方法 :确定矩阵式键盘上何键被按下介绍一种“行扫描法”。行扫描法 行扫描法又称为逐行(或列)扫描查询法,是一种最常用的按键识别方法,如上图所示键盘,介绍过程如下。判断键盘中有无键按下 将全部行线Y0-Y3置低电平,然后检测列线的状态。只要有一列的电平为低,则表示键盘中有键被按下,而且闭合的键位于低电平线与4根行线相交叉的4个按键之中。若所有列线均为高电平,则键盘中无键按下。 判断闭合键所在的位置 在确认有键按下后,即可进入确定具体闭合键的过程。其方法是:依次将行线置为低电平,即在置某根行线为低电平时,其它线为高电平。在确定某根行线位置为低电平后,再逐行检测各列线的电平状态。若某列为低,则该列线与置为低电平的行线交叉处的按键就是闭合的按键。 在本系统中键盘采用矩阵式键盘并采用中断工作方式。键盘为4 X 4键盘,包括0、1、2、3、4、5、6、7、8、9、十个数字及确认和清除键。采用中断工作方式提高了CPU的利用效率,没键按下时没有中断请求,有键按下时,向CPU提出中断请求,CPU响应后执行中断服务程序,在中断程序中才对键盘进行扫描。单片机与键盘接口电路3.53.5报警电路的设计当电路检测到称重的物体超过仪器的测量限制时,将产生一个信号给报警电路。使报警电路报警从而提醒工作人员注意,它是有89S52的P2.6口来控制的,当超过设置的重量时(5Kg),通过程序使P2.6口值为高电平,从而使三极管导通,报警电路接通,使蜂鸣器SPEAKER发出报警声,同时使报警灯LED发光。由于持续的声音不能够引起人们的关注,所以本系统的报警电路采用间断的声音和频闪的灯光来实现。这一任务的实现主要靠程序来完成。图3.5 报警电路设计图第四章 系统软件设计程序设计是一件复杂的工作,为了把复杂的工作条理化,就要有相应的步骤和方法。其步骤可概括为以下三点: 分析系统控制要求,确定算法:对复杂的问题进行具体的分析,找出合理的计算方法及适当的数据结构,从而确定编写程序的步骤。这是能否编制出高质量程序的关键。 根据算法画流程图:画程序框图可以把算法和解题步骤逐步具体化,以减少出错的可能性。编写程序:根据程序框图所表示的算法和步骤,选用适当的指令排列起来,构成一个有机的整体,即程序。程序数据的一种理想方法是结构化程序设计方法。结构化程序设计是对利用到的控制结构类程序做适当的限制,特别是限制转向语句(或指令)的使用,从而控制了程序的复杂性,力求程序的上、下文顺序与执行流程保持一致性,使程序易读易理解,减少逻辑错误和易于修改、调试。根据系统的控制任务,本系统的软件设计主要由主程序、初始化程序、显示子程序、数据采集子程序和延时程序等组成。4.1主程序设计系统上电后,初始化程序将 RAM 的30H5FH内存单元清零,P2.6引脚置成低电平,防止误报警。主程序模块主要完成编程芯片的初始化及按需要调用各模块(子程序),在系统初始化过程中,将系统设置成5Kg量程,并写5Kg量程标志。设计流程图如图4.1所示。开始设置堆栈指针设置各中断服务程序入口相关寄存器清零设置显示缓冲区设置显示初值设置中断优先级及触发形式调用执行代码转换程序调用键盘子程序调用显示子程序启动数模转换调用数据处理子程序调用计算子程序执行数模转换调用显示子程序设置显示子程序INT1有效效?重物移去返回调用显示子程序INT0有效NYNNY4.2子程序设计系统子程序主要包括A/D转换启动及数据读取程序设计、键盘输入控制程序设计、显示程序设计、以及中断程序设计等。4.2.1 A/D转换启动及数据读取程序设计A/D转换子程序主要是指在系统开始运行时,把称重传感器传递过来的模拟信号转换成数字信号并传递到单片机所涉及到的程序设计。设计流程图如图4-2所示。图4.2 A/D转换启动及数据读取程序流程图4.2.2数制转换子程序设计在数制转换前要进行系数调整, 在IN0输入的数最大为5V,要求的质量500g对应的是4.8V,为十六进制向十进制转换方便,将系数放大100倍。并用小数点位置的变化体现这一过程。数制之间的转换:在二进制数制中,每向左移一位表示数乘二倍。以每四位作为一组对数分组,当第四位向第五位进位时,数由8变到16,若按十进制数制规则读数,则丢失6,所以应进行加六调整。DA指令可完成这一调整。可见数制之间的转换可以通过移位的方法实现。其中,移出数据的保存可以通过自乘再加进位的方法实现,因为乘二表示左移一位,左移后,低位进一,则需加一。否则,加零。而通过移位已将要移入的尾数保存在了进位位中,所以能实现。 图4.3 数据处理流程图4.2.3显示子程序设计 显示子程序主要是来判断是否需要显示,以及如何去显示,也是十分重要的程序之一。而显示子程序是其他程序所需要调用的程序之一,因此,显示子程序的设计就显得举足轻重,设计的时候也要十的小心。设计显示子程序的流程图如下图4-4所示:图4.4 显示子程序流程图4.2.4键盘扫描子程序的设计键盘电路设计成4X4矩阵式,由键盘编码方式可以得出0,1,2,3,4,5,6,7,8,9,A,B,C,D,E。在程序中可以先判断按键编码,然后根据编码将键盘代表的数值送到相应的存储单元,再进行功能选择或数据处理。键盘输入LCD初始化字符显示界面字符显示调用LCD显示原地跳转原地跳转有功能键按下输入完毕有返回键按下NYNNY图4.5 键盘扫描子程序设计流程图4.2.5报警子程序设计由于要求要键盘设定阈值,所以要求有报警电路,报警电路可以有声报警也可有光报警,将设定的阈值与实时显示的值进行比较,如果设定值小于实时显示的值,则将P1.0置为1,将发光二极管点亮,或使蜂鸣器发出声音。这就需要一段比较程序以及一小段置1清0程序。 图4.6 报警子程序流程图设计总结随着集成电路和计算机技术的迅速发展,使电子仪器的整体水平发生巨大变化,传统的仪器逐步的被智能仪器所取代。智能仪器的核心部件是单片机,因其极高的性价比得到广泛的应用与发展,从而加快了智能仪器的发展。而传感器作为测控系统中对象信息的入口,越来越受到人们的关注。传感器好比人体“五官”的工程模拟物,它是一种能将特定的被测量信息(物理量、化学量、生物量等)按一定规律转换成某种可用信号输出的器件或装置本次设计中的半桥电子秤就是在以上仪器的基础上设计而成的。因此,只有充分了解有关智能仪器、单片机、传感器以及各部分之间的关系才能达到要求。首先是传感器的精密度,它将直接影响电子秤的称重准确度。课设时由于传感器发出的信号不是很稳定,所以称重时误差很大。如果使用精密度较高的传感器,效果会好的多。其次是数据采集处理阶段,此阶段是对传感器发出的信号进行量化、采集,主要分为信号放大、采集,然后进行A/D转换。该阶段需注意的地方是对传感器输出的信号进行放大时,应选取合适的运算放大电路。最好是预先计算好应放大的倍数,以便选取。还有就是进行数据处理时,选取适当的数据转换系数,使输出满足量程要求。致 谢经过半年的忙碌和工作,本次毕业设计已经接近尾声,作为一个本科生的毕业设计,由于经验的匮乏,难免有许多考虑不周全的地方,如果没有指导老师的督促指导,以及一起工作的同学们的支持,想要完成这个设计是难以想象的。 在这里要感谢我的指导老师李响老师。他平日里工作繁多,但在我做毕业设计的每个阶段,从外出实习到查阅资料,设计草案的确定和修改,中期检查,后期详细设计,装配草图等整个过程中都给予了我悉心的指导。我的设计较为复杂烦琐,但是老师仍然细心地纠正图纸中的错误。除了李老师的专业水平外,他的治学严谨和科学研究的精神也是我永远学习的榜样,并将积极影响我今后的学习和工作。 最后还要感谢大学四年来所有的老师,为我们打下专业知识的基础;同时还要感谢所有的同学们,正是因为有了你们的支持和鼓励。此次毕业设计才会顺利完成。 参考文献1赵茂泰. 智能仪器原理及应用M.北京:电子工业出版社.2004 2张毅刚. MCS-51单片机应用设计M.哈尔滨:哈尔滨工业大学出版社.2003 3贾伯年, 俞朴.传感器技术M.东南大学出版社.2000 4单成祥.传感器理论设计基础及其应用M.北京:国防工业出版社.1999 5李道华,李玲,朱艳 .传感器电路分析与M.武汉:武汉大学出版社.2000 6沙占友 ,王彦朋等. 智能传感器系统设计与应用M.北京:电子工业出版社2004.67何希才,薛永毅. 传感器及其应用实例J.北京:机械工业出版社.2004.1 8李群芳. 单片机微型计算机与接口技术M.电子工业出版社.9周立功. 单片机实验与实践M.北京航空航天大学出版社.2004.610全国大学生电子设计竞赛组委会.全国大学生电子设计竞赛获奖作品汇编J.北京理工大学出版社.2005.1111何立民 .单片机高级教材M.北京:航空航天大学出版社.200012童诗白,华成英 .模拟电子技术基础M. 北京:北京高等教育出社.200113程林 ,超省电型电子秤的设计方案J.福建:福建省计量科学技术研究所. 2008.314宁爱民, 兰如波 .单片机应用技术15徐晨 . 微机原理及应用.附录程序清单:定义 中文C液晶 128X64 的地址W_C_GLCD XDATA0E000HW_D_GLCD XDATA0E001HR_B_GLCD XDATA0E002HR_D_GLCD XDATA0E003H;-TIMER0

温馨提示

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

评论

0/150

提交评论