毕业论文--基于单片机的电子秤设计.doc_第1页
毕业论文--基于单片机的电子秤设计.doc_第2页
毕业论文--基于单片机的电子秤设计.doc_第3页
毕业论文--基于单片机的电子秤设计.doc_第4页
毕业论文--基于单片机的电子秤设计.doc_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

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

文档简介

基于单片机的电子秤设计 摘 要:本设计以51系列单片机stc89c52rc为控制核心,实现电子秤的基本控制功能。在设计系统时,为了更好地采用模块化设计法,分步的设计各个单元功能模块,系统的硬件部分可以分为最小系统、数据采集、人机交互界面(键盘以及显示)和系统电源四大部分。最小系统部分为stc89c52rc系统;数据采集部分由压力传感器、信号的前级处理和a/d转换部分组成,包括运算放大器op07和a/d转换器adc0809;人机交互界面为键盘输入和数码管显示,主要使用5x5键盘、ch423数码管控制芯片及13位数码管显示,可以方便的输入数据并直观的显示重量、单价和总价。系统电源是以lm7805、 lm7812为核心设计电路以提供系统正常工作电源。软件部分应用单片机c51语言进行编程,实现了该设计的基本控制功能。该电子秤可以实现基本的称重功能(称重范围为010kg,重量误差不大于0.02kg),重量、单价、总价的计量可以精确到两位小数,键盘设置有数字键(09、.)、储存键、单价1单价8调用单价键、清除键、去皮键等;发挥部分有8种不同物品的单价记忆功能、99种消费商品价格累计功能、;待发挥部分为讲电子秤与打印机连接,能打印消费记录(小票),超量程和欠量程的报警功能。本系统结构简单,使用方便,功能齐全,精度高,具有一定的开发价值。 关键词:单片机 采样电路a/d转换器 ch423数码管驱动芯片 数码管显示 工作电源 the design of electronic scales based on single-chip microcomputerabstract :the design for the control of 51 computers stc89c52rc the core, to achieve the basic control functions of electronic scales. in designing the system, in order to better modular design, the design of each unit step function modules, the system can be divided into the minimum hardware system, data acquisition, man-machine interface (keypad and display) and the system power 4 most. minimum system partly stc89c52rc system; data collection in part by the pressure sensor, signal processing and the first class a / d conversion components, including the operational amplifier op07 and the a / d converter adc0809; man-machine interface for the keyboard and digital display the main use of 5x5 keypad, ch423 digital control chip and 13 digital display, can easily enter data and visual display weight, unit price and total price. system power is based on lm7805, lm7812 as the core design of the circuit to provide normal power supply system. software part of the application mcu c51 language programming, the design of the basic control functions. the electronic weighing scales can realize the basic functions (weighing range of 0 10kg, the weight of the error is not greater than 0.02kg), weight, unit price, total measurement is accurate to two decimal places, the keyboard settings are the number keys ( 0 9,.), storage key, unit 1 to unit 8 unit call key, clear key, peeled keys, etc.; play a part in 8 different items priced memory, 99 kinds of consumer goods prices cumulative function; play a part to be about electronic scales and printers connected to print consumption records (small notes), over range and under-range alarm. the system is simple, easy to use, fully functional, high precision, has some value for development.key words: microcontroller sampling circuit a/d converter ch423 digital tube driver chip digital display power supply目录第一章 绪 论11.1引言11.2 选题背景与意义1第二章 系统方案的设计22.1 电子秤的设计要求22.1.1 基本要求22.1.2 特色与创新22.2实验原理及设计基本思路22.2.1系统工作原理22.2.2 系统设计基本思路22.3 系统总体设计方案比较与论证32.4单片机的选型42.5 数据采集部分的方案确定42.5.1 传感器42.5.2 前级放大器部分72.5.3 a/d 转换器92.6人机交互部分112.6.1 键盘输入112.6.2 输出显示112.7系统电源122.8 具体实施方案简介13第三章 系统硬件设计153.1 基于stc89c52rc的主控电路153.1.1芯片介绍153.2 系统电源183.2.1 芯片介绍183.2.2 电源电路19第四章 软件流程204.1 主程序流程图204.2 键盘扫描流程图21第五章 结 论225.1 论文总结225.2 感想22致 谢24参 考 文 献25附录a:原理图26附录b:源程序2957第一章 绪 论 1.1引言在现代化的今天,电子产品变得越来越丰富,给人们带来了诸多方便,其中电子秤成了人们生活中不可或缺的一部分。大大小小的市场电子秤能够完成许多秤量工作,为人们节省了大量时间,提高了工作效率。在大部分超市里的电子秤,它能很精确的秤出商品的重量,还能去除皮重,更主要的是,它其中预存了超市里商品的单价,当秤出商品的重量后,电子秤马上就能算出价格,不管几种商品都能一一累加价格,最后列出消费清单。由此,顾客在购物的时候非常的放心,商家的经济效益和员工的工作效率也得到了大幅提高了,所以有了电子秤,顾客买的放心,商家也卖的开心了。本设计就是为了制作这样一种电子秤,它以单片机为核心在实际使用时达到以下要求:1、电子秤秤重范围:010;重量误差0.02;2、数码管显示物重、单价、商品价格;3、8种商品的单价储存等。本设计的控制功能包括基本的秤重功能,显示购物单价及价格功能,储存8种商品的单价功能。由于系统资源丰富,还可以方便的拓展其应用。 1.2 选题背景与意义电子秤是日常生活中常用的电子衡器,广泛应用于超市、大中型商场、物流配送中心。电子秤在结构和原理上取代了以杠杆平衡为原理的传统机械式秤量工具。相比传统的机械式秤量工具,电子秤具有秤量精度高、装机体积小、应用范围广、易于操作使用等优点,在外形布局、工作原理、结构和材料上都是全新的计量衡器。 目前市场上电子秤产品的整体水平不高,部分小型企业产品质量差且技术力量薄弱,设备不全,缺乏产品的独立开发能力,产品质量在低水平徘徊。因此,有针对性地开发出一套有实用价值的电子秤系统,从技术上克服上述诸多缺点,改善电子秤系统在应用中的不足之处,具有现实意义。第二章 系统方案的设计电子秤的应用系统是由硬件和软件所组成。硬件指单片机、扩展的存储器、扩展的输入输出设备等部分;软件是各种控制语言程序的总秤。只有硬件和软件紧密配合、协调一致,才能提高系统的性价比。从一开始设计硬件时,就应考虑相应软件的设计方法,而软件设计是根据硬件原理和系统的功能要求进行的。2.1 电子秤的设计要求2.1.1 基本要求1、电子秤秤重范围:010kg;重量误差不大于0.02kg;2、数码管显示:所秤物体重量、单价显示、商品价格显示3、8种商品的单价储存等。2.1.2 特色与创新1、使用单片机为主控核心,简化系统的构造,单片机可拓展性强,可以方便的对系统进行功能拓展和加强。2、使用键盘输入数据,操作简单、方便。3、显示所秤量的物品重量、单价及所秤物品的金额。4、具有去皮功能和金额累加计算功能。 2.2实验原理及设计基本思路2.2.1系统工作原理电子秤的工作原理。首先是通过压力传感器采集到被测物体的重量并将其转换成电压信号。输出电压信号通常很小,需要通过前端信号处理电路进行准确的线性放大。放大后的模拟电压信号经a/d转换电路转换成数字量被送入到主控电路的单片机中,再经过单片机控制译码显示器,从而显示出被测物体的重量。在实际应用中,为提高数据采集的精度并尽量减少外界电气干扰,还需要在传感器与a/d芯片之间加上信号调整电路。2.2.2 系统设计基本思路按照设计的基本要求,系统可分为三大模块,数据采集模块、控制器模块、人机交互界面模块。其中数据采集模块由压力传感器、信号的前级处理和a/d转换部分组成。转换后的数字信号送给控制器处理,由控制器完成对该数字量的处理,驱动显示模块完成人机间的信息交换。此部分对软件的设计要求比较高,系统的大部分功能都需要软件来控制。2.3 系统总体设计方案比较与论证在设计系统时,针对各个模块实现的功能来设计电子秤的方案有以下几种:方案一 数码管显示方案结构简图如下图所示: 图2.1 数码管显示方案此方案利用数码管显示物体重量,简单可行,可以采用内部带有模数转换功能的单片机。由此设计出的电子秤系统,硬件部分简单,接口电路易于实现,并且在编程时大大减少程序量,在电路结构上只有简单的输出输入关系。方案二 在前一种方案的基础上进行扩展,增加一键盘输入装置,增加外界对单片机内部的数据设定,使电子秤实现秤重计价的功能。 结构简图如下图所示:图2.2 带有键盘输入的结构简图此方案设计的电子秤,可以实现秤物计价功能,但是局限于数码管的功能,在显示时只能显示单价、购物总额以及简单的货物代码等。在显示重量时,如果数码管没有足够的位数,那么秤量物体重量的精度必受到限制,所以此方案需要较多的数码管接入电路中。方案三 前端信号处理时,选用放大、a/d转换等措施,尤其在显示方面采用具有字符图文显示功能的lcd显示器。这种方案不仅加强了人机交换的能力,而且满足设计要求,所秤量的物体重量、单价、价格等相关内容。结构简图如下图所示: 单片机传感器键盘输入led显示信号放大器a/d转换器图2.3 led显示的方案目前单片机技术比较成熟,功能也比较强大,被测信号经放大整形并转换后送入单片机,由单片机对输入信号进行处理并根据相应的数据关系译码显示出被测物体的重量。鉴于本电子秤的设计并不太复杂,单片机完全能实现所需功能,所以在具体设计时,采用了第三种设计方案。2.4单片机的选型在平时的电子制作中,经常应用的单片机有51系列单片机、avr单片机以及msp430单片机。后两种单片机相对51系列单片机较昂贵,则本设计选择51系列单片机。而51系列单片机又有诸多的分类,但是我们常用的有atmel公司生产的at89xxx系列单片机和宏晶公司生产的stc89xxx系列的单片机。两个公司所生产的单片机的功能相近,且都为低功耗型,同时,在市场上都能方便的购买,但是根据自己的单片机仿真工具,我们选择宏晶公司的stc89c52rc这款单片机,以方便在设计过程中的调试。2.5 数据采集部分的方案确定2.5.1 传感器传感器的定义:能感受规定的被测量,并按照一定规律转换成可用输出信号的器件或装置。通常传感器由敏感元件和转换元件组成。其中敏感元件指传感器中能直接感受被测量的部分,转换部分指传感器中能将敏感元件输出量转换为适于传输和测量的电信号部分。方案一 压电传感器压电传感器是一种典型的有源传感器,又秤自发电式传感器。其工作原理是基于某些材料受力后在其相应的特定表面产生电荷的压电效应。压电传感器体积小、重量轻、结构简单、工作可靠,适用于动态力学量的测量,不适合测频率太低的被测量,更不能测静态量。目前多用于加速度和动态力或压力的测量。压电器件的弱点:高内阻、小功率。功率小,输出的能量微弱,电缆的分布电容及噪声干扰影响输出特性,这对外接电路要求很高。 方案二 电容式传感器电容式传感器是将被测非电量的变化转换为电容变化的一种传感器。它有结构简单、灵敏度高、动态响应好、可实现非接触测量、具有平均效应等优点。电容传感器可用来检测压力、力、位移以及振动学非电参量。 电容传感器的基本工作原理可用最普通的平行极板电容器来说明。两块相互平行的金属极板,当不考虑其边缘效应(两个极板边缘处的电力线分布不均匀引起电容量的变化)时,其电容量为 (2.1)若被测量的变化使式中、a、三个参量中任一个发生变化,都会引起电容量的变化,通过测量电路就可转换为电量输出。 虽然电容式传感器有结构简单和良好动态特性等诸多优点,但也有不利因素:小功率、高阻抗;初始电容小。 方案三 电阻应变式传感器电阻应变式传感器是一种利用电阻应变效应,将各种力学量转换为电信号的结构型传感器。电阻应变片式电阻应变式传感器的核心元件,其工作原理是基于材料的电阻应变效应,电阻应变片即可单独作为传感器使用,又能作为敏感元件结合弹性元件构成力学量传感器。电阻应变片把机械应变信号转换为r/r后,由于应变量及相应电阻变化一般都很微小,难以直接精确测量,且不便处理。因此,要采用转换电路把应变片的r/r变化转换成电压或电流变化。其转换电路常用测量电桥。直流电桥的特点是信号不会受各元件和导线的分布电感及电容的影响,抗干扰能力强,但因机械应变的输出信号小,要求用高增益和高稳定性的放大器放大。下图为一直流供电的平衡电阻电桥,接直流电源e: 图2.4 传感器结构原理图当电桥输出端接无穷大负载电阻时,可视输出端为开路,此时直流电桥秤为电压桥,即只有电压输出。当忽略电源的内阻时,由分压原理有: = (2.2)当满足条件r1r3=r2r4时,即(2.3)=0,即电桥平衡。式(2.3)秤平衡条件。应变片测量电桥在测量前使电桥平衡,从而使测量时电桥输出电压只与应变片感受的应变所引起的电阻变化有关。若差动工作,即r1=r-r,r2=r+r,r3=r-r,r4=r+r,按式(2.2),则电桥输出为 (2.4) 应变片式传感器有如下特点:应用和测量范围广,分辨力和灵敏度高,精度较高,结构轻小,对试件影响小, 对复杂环境适应性强,可在高温、高压、强磁场等特殊环境中使用,频率响应好,商品化,使用方便,便于实现远距离、自动化测量。 通过以上对传感器的比较分析,最终选择了第三种方案。设计要求秤重范围09.99kg,重量误差不大于0.02kg,考虑到秤台自重、振动和冲击分量,还要避免超重损坏传感器,所以传感器量程必须大于额定秤重9.99kg 。我们选择的是l-psiii型传感器,量程40kg,精度为 0.01%,满量程时误差0.002kg,完全满足本系统的精度要求。2.5.2 前级放大器部分经由传感器或敏感元件转换后输出的信号一般电平较低;经由电桥等电路变换后的信号亦难以直接用来显示、记录、控制或进行a/d转换。为此,测量电路中常设有模拟放大环节。这一环节目前主要依靠由集成运算放大器的基本元件构成具有各种特性的放大器来完成。放大器的输入信号一般是由传感器输出的。传感器的输出信号不仅电平低,内阻高,还常伴有较高的共模电压。因此,一般对放大器有如下一些要求:1、输入阻抗应远大于信号源内阻。否则,放大器的负载效应会使所测电压造成偏差;2、抗共模电压干扰能力强;3、在预定的频带宽度内有稳定准确的增益、良好的线性,输入漂移和噪声应足够小以保证要求的信噪比。从而保证放大器输出性能稳定;4、能附加一些适应特定要求的电路,如放大器增益的外接电阻调整、方便准确的量程切换、极性自动变换等。我考虑了以下几种方案:方案一 由高精度低漂移运算放大器构成差动放大器。差动放大器具有高输入阻抗,增益高的特点,可以利用普通运放(如lm324)做成一个差动放大器,如下图所示: 图2.5 利用普通运放构成的放大器电阻r1、r2和电容c1、c2、c3、c4用于滤除前级的噪声干扰,c1、c2均为普通小电容,可以滤除高频信号干扰,c3、c4为大容量的电解电容,主要用于滤除低频噪声干扰。优点:输入级加入射随放大器,增大了输入阻抗,中间级为差动放大电路,滑动变阻器r6可以调节输出零点,最后一级可以用于微调放大倍数,使输出满足满量程要求。输出级为反向放大器,所以输出电阻不是很大,比较符合应用要求。缺点:此电路要求r3、r4相等,误差将会影响输出精度,难度较大。实际测量,每一级运放都会引入较大噪声,对精度影响较大。方案二 采用低噪声,非斩波稳零的双极性运算放大器,如op07 op07芯片是一种低噪声,非斩波稳零的双极性运算放大器集成电路。由于op07具有非常低的输入失调电压(对于op07a最大为25v),所以op07在很多应用场合不需要额外的调零措施。op07同时具有输入偏置电流低(op07a为2na)和开环增益高(对于op07a为300v/mv)的特点,这种低失调、高开环增益的特性使得op07特别适用于高增益的测量设备和放大传感器的微弱信号等方面。特点:超低偏移: 150v最大 。低输入偏置电流: 1.8na 。低失调电压漂移: 0.5v/ 。超稳定时间: 2v/month电源电压范围: 3v至22v其放大原理电路如下图所示:图2.6 op07线性放大电路2.5.3 a/d 转换器a/d转换器选用的原则:1、a/d 转换器的位数。a/d 转换器决定分辨率的高低。在系统中,a/d 转换器的分辨率应比系统允许引用误差高一倍以上。2、a/d 转换器的转换速率。不同类型的a/d 转换器的转换速率大不相同。积分型的转换速率低,转换时间从几豪秒到几十毫秒,只能构成低速a/d 转换器,一般用于压力、温度及流量等缓慢变化的参数测试。逐次逼近型属于中速a/d 转换器,转换时间为纳秒级,用于个通道过程控制和声频数字转换系统。3、是否加采样/保持器。4、a/d 转换器的有关量程引脚。有的a/d 转换器提供两个输入引脚,不同量程范围内的模拟量可从不同引脚输入。5、a/d 转换器的启动转换和转换结束。一般a/d 转换器可由外部控制信号启动转换,这一启动信号可由cpu提供。转换结束后a/d 转换器内部转换结束信号触发器置位,并输出转换结束标志电平。通知微处理器读取转换结果。6、a/d 转换器的晶闸管现象。其现象是在正常使用时,a/d 转换器芯片电流骤增,时间一长就会烧坏芯片。为防止这种现象,可采取如下措施:(1)加强抗干扰措施,尽量避免较大的干扰电流进入电路;(2)加强电源稳压滤波措施, 在a/d 转换器电源入口处加退耦滤波电路,为防止窄脉冲波窜入在电解电容上再接一高频滤波电容;(3)在a/d 转换器的电源端接一限流电阻,可在出现晶闸管现象时,有效地把电流限定在允许范围内,以防止烧坏器件。选择a/d 转换器除考虑上述要点外,为防止对a/d 转换器的技术指标的影响,还要注意以下几个问题:(1)工作电源电压是否稳定;(2)外接时钟信号的频率是否合适;(3)工作环境温度是否符合器件要求;(4)与其它器件是否匹配;(5)外接是否有强的电磁干扰;(6)印刷线路板布线是否合理。由上面对传感器量程和精度的分析可知:a/d转换器误差应在3g以下。8位a/d精度:10kg/256=39.0625g;12位a/d精度:10kg/4096=2.44g;14位a/d精度:10kg/16384=0.61g;由于 12位与14位的价格较为昂贵,我选择精度相对较低的8位a/d转换芯片,经过人为的处理,可以使其误差在0.002kg范围内。 逐次逼近型a/d转换器,如:adc0809、adc0804等。逐次逼近型a/d转换,一般具有采样/保持功能。采样频率高,功耗比较低,是理想的高速、高精度、省电型a/d转换器件。高精度逐次逼近型a/d转换器一般都带有内部基准源和内部时钟,基于51系列单片机构成的系统设计时仅需要外接几个电阻、电容。考虑到所转换的信号为一慢变信号,逐次逼近型a/d转换器的快速的优点不能很好的发挥,但是 8位a/d可以满足精度要求,太高的精度就反而浪费了系统资源。所以是理想的选择。 2.6人机交互部分2.6.1 键盘输入 789单价1单价2456单价3单价4123单价5单价60.储 存单价7单价8置 零累 加去 皮清 除图2.7 按键分布图键盘输入是人机交互界面中重要的组成部分,它是系统接受用户指令的直接途径。键盘是由若干个按键开关组成,键的多少根据单片机应用系统的用途而定。键盘由许多键组成,每一个键相当于一个机械开关触点,当键按下时,触点闭合,当键松开时,触点断开。单片机接收到按键的触点信号后作相应的功能处理。因此,相对于单片机系统来说键盘接口信号是输入信号。 2.6.2 输出显示方案一 采用可以设置显示单价,金额,中文,购物日期等的lcd,它具有低功耗、可视面大、画面友好及抗干扰能力强等功能,其显示技术已得到广泛应用。但是其占用i/o口较多,且编程比较繁琐,不利于外部功能的拓展。方案二 全部采用数码管显示,数码能显示时钟,以及被测物体的重量等信息。此方案显示直观,而且编程简单,可以同时显示重量、单价和金额。应用单片机的串行通信,编程较为简单,占用单片机的i/o口较少,可以节约大量i/o已方便拓展其他功能。2.7系统电源系统需要多种电源,单片机、a/d转换器、传感器以及数码管显示驱动需要5v电源,运算放大器需要+12v电源。稳压电源的技术指标分为两种:一种是特性指标,包括允许的输入电压、输出电压、输出电流及输出电压调节范围等;另一种是质量指标,用来衡量输出直流电压的稳定程度,包括稳压系数、输出电阻、温度系数及纹波电压等。方案一 采用三端固定稳压芯片7805和7812为系统提供稳定的电源。这个部分由整流电路、滤波电路、稳压电路等组成。如下图:图2.8 +5v电源电路图在这里只给出了5v电源电路,+12v电源电路与+5v相似,因此不再画出。78系列是输出电压固定的三端集成稳压器,输出为正电压,输出电流可达1a。输出功率足够本设计的电路使用。方案二 以lm317和lm337型号的芯片为核心来设计电源电路。lm317是一种外接很少元件就能工作的三端可调式集成稳压器,它的三个接线端分别秤为输入端、输出端和调整端。它的内部电路有比较放大器、偏置电路、恒流源电路和带隙基准电路等,它的公共端改接到输出端,器件本身无接地端。所以消耗的电流都从输出端流出,内部的基准电压(约1.2v)接至比较放大器的同相端和调整端之间。若接上外部的调整电阻r1、r2后,输出电压为 = (2.5)lm317的vref =1.2v, i adj =50a,由于调整端电流i adji1, 故可以忽略,式(2.5)可简化为 (2.6)2.8 具体实施方案简介根据以上设计方案,硬件部分采用51系列单片机stc89c52rc为控制核心部件,实现电子秤的基本控制功能。stc89c52rc是一款8位的内带8k程序存储器、512字节数据存储器和2k eeprom的微控制器,考虑到用软件实现电子秤系统的各项功能时,所需的软件量并不是很大,不需要太大的程序存储空间,因此在对stc89c52rc实际设计时不需要在片外再扩展程序存储器,这样不仅节省了硬件资源,也优化了电路的设计。系统的硬件部分不仅包括以单片机stc89c52rc为核心的最小系统部分,而且还包括数据采集、人机接口界面、系统电源部分。数据采集部分由压力传感器、信号的滤波放大处理和a/d转换部分组成。在具体选择传感器时,考虑到在秤量物品时必要的精度、准确性要求,所秤物品的重量误差必须要控制在一定的范围之内。一般选择为实际要求量程的两倍,且需要满足精度要求,满量程时候的误差不能大于规定量。由于传感器的输出信号中含有一定的干扰噪声,所以必须要对传感器的输出信号进行滤波,在滤波电路的设计时利用普通小电容滤除高频干扰,利用大的电解电容滤除低频干扰。传感器输出的电信号比较微弱,一般为毫伏级,必须采用适当的电路进行信号放大处理,这样才能保证整个系统的精度和稳定性能。采用低噪声,非斩波稳零的双极性运算放大器。逐次逼近型a/d转换,一般具有采样/保持功能。采样频率高,功耗比较低,是理想的高速、高精度、省电型a/d转换器件。系统硬件的结构框图如下所示:单片机传感器键盘输入led显示信号放大器a/d转换器图2.9 系统硬件结构图第三章 系统硬件设计根据设计要求以及系统所需要实现的功能,在设计系统时可以分成以下几个部分:单片机控制模块,前端信号采集、处理、转换模块,人机接口界面以及系统电源部分(为实现系统超量程与欠量程的报警功能,还扩展了报警电路)。3.1 基于stc89c52rc的主控电路3.1.1芯片介绍1、芯片stc89c52rcstc89c52rc是一个低功耗,高性能cmos 8位单片机,片内含8k bytes isp(in-system programmable)的可反复擦写10000次的flash只读程序存储器,2 k bytes 的eeprom掉电保护存储器。器件采用宏晶公司的高密度、非易失性存储技术制造,兼容标准mcs-51指令系统及80c51引脚结构。芯片内集成了通用8位中央处理器和isp flash存储单元,功能强大的微型计算机的stc89c52rc可为许多嵌入式控制应用系统提供高性价比的解决方案。 stc89c52rc具有如下特点:40个引脚,8k bytes flash片内程序存储器,512 bytes的随机存取数据存储器(ram),2 k bytes 的eeprom掉电保护存储器,32个外部双向输入/输出(i/o)口,5个中断优先级2层中断嵌套中断,3个16位可编程定时计数器,2个全双工串行通信口,看门狗(wdt)电路,片内时钟振荡器。空闲模式下,cpu暂停工作,而ram定时计数器、串行口、外中断系统可继续工作,掉电模式冻结振荡器而保存ram的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有pdip、lqfp和plcc等三种封装形式,以适应不同产品的需求。主要功能特性见下表:表3.1 stc89c52rc功能 兼容mcs-51指令系统 8k可反复擦写(10000次)isp flash rom 32个双向i/o口 4.5-5.5v工作电压 3个16位可编程定时/计数器 时钟频率0-33mhz 全双工uart串行中断口线 256x8bit内部ram 2个外部中断源 低功耗空闲和省电模式 中断唤醒省电模式 3级加密位 看门狗(wdt)电路 软件设置空闲和省电功能 灵活的isp字节和分页编程 双数据寄存器指针引脚封装如下图所示:图3.1 stc89c52rc的引脚图引脚功能说明:vcc/gnd: 电源/接地引脚port 0:p0是一个8位漏极开路型双向i/o端口,端口置1(对端口写1)时作高阻抗输入端;p0还可以用作总线方式下的地址数据复用管脚,用来操作外部存储器。在这种工作模式下,p0口具有内部上拉作用。对内部flash程序存储器编程时,接收指令字节、校验程序、输出指令字节时,要求外接上拉电阻;port 1:p1是一个带有内部上拉电阻的8位双向i/0端口,输出时可驱动4个ttl。端口置1时,内部上拉电阻将端口拉到高电平,作输入用; 另外,p1.0、p1.1可以分别被用作定时器/计数器2的外部计数输入(p1.0/t2)和触发输入(p1.1/t2ex);对内部flash程序存储器编程时,接收低8位地址信息;port 2: p2是一个带有内部上拉电阻的8位双向i/0端口;输出时可驱动4个ttl。端口置1时,内部上拉电阻将端口拉到高电平,作输入用; p2口在存取外部存储器时,可作为高位地址输出;内部flash程序存储器编程时,接收高8位地址和控制信息; port 3: p3是一个带有内部上拉电阻的8位双向i/0端口,输出时可驱动4个ttl。端口置1时,内部上拉电阻将端口拉到高电平,作输入用。 p3引脚功能复用见下表:表3.2 p3引脚功能复用p3.0 串行通讯输入(rxd) p3.1串行通讯输出(txd) p3.2外部中断0( int0) p3.3外部中断1(int1) p3.4 定时器0输入(t0) p3.5定时器1输入(t1)p3.6 外部数据存储器写选通wr p3.7外部数据存储器写选通rd rst:在振荡器运行时,有两个机器周期(24个振荡周期)以上的高电平出现在此管脚时,将使单片机复位。只要这个管脚保持高电平,51芯片便循环复位。复位后p0p3口均置1,管脚表现为高电平,程序计数器和特殊功能寄存器sfr全部清零。当复位脚由高电平变为低电平时,芯片为rom的00h处开始运行程序;xtal1、xtal2 :xtal1是片内振荡器的反相放大器输入端,xtal2则是输出端,使用外部振荡器时,外部振荡信号应直接加到xtal1,而xtal2悬空。内部方式时,时钟发生器对振荡脉冲二分频,如晶振为12mhz,时钟频率就为6mhz。晶振的频率可以在1mhz至24mhz内选择,电容取30pf左右。ale/prog:访问外部存储器时,ale(地址锁存允许)的输出用于锁存地址的低位字节,即使不访问外部存储器,ale端仍以不变的频率输出脉冲信号(此频率是振荡器频率的1/6),在访问外部数据存储器时,出现一个ale脉冲; psen:该引脚是外部程序存储器的选通信号输出端。当at89s52由外部程序存储器取指令或常数时,每个机器周期输出2个脉冲,即两次有效。但访问外部数据存储器时,将不会有脉冲输出;ea/vpp:外部访问允许端。当该引脚访问外部程序存储器时,应输入低电平。要使at89s52只访问外部程序存储器(地址为0000h-ffffh), 这时该引脚必须保持低电平; 3.2 系统电源3.2.1 芯片介绍在系统的各个功能模块设计完成之后,为了满足系统的工作要求,系统电源需满足以下几种:+12v、+5v。其中+12v、为运算放大器op07的工作电压;+5v为a/d转换器adc0809、单片机stc89c52rc、数码管驱动芯片ch423的工作电压。设计电路时,选用lm7805和lm7812型号的芯片为核心来设计电源电路。三端稳压集成电路lm78xx电子产品中,常见的三端稳压集成电路有正电压输出的lm78 系列和负电压输出的lm79系列。顾名思义,三端ic是指这种稳压用的集成电路,只有三条引脚输出,分别是输入端、接地端和输出端。它的样子象是普通的三极管,to- 220 的标准封装,也有lm9013样子的to-92封装。 用lm78xx系列三端稳压ic来组成稳压电源所需的外围元件极少,电路内部还有过流、过热及调整管的保护电路,使用起来可靠、方便,而且价格便宜。该系列集成稳压ic型号中的lm78或lm79后面的数字代表该三端集成稳压电路的输出电压。lm78xx常用电路原理图如图2.8所示.3.2.2 电源电路 在输入端加入了0.1uf电容c2、c4,滤除有害杂波,提高输入电源的质量。滤波电容c1、c3的确定:一般情况下滤波电容越大越好。这是因为整流特性与时间常数rlc的值有关,数值越大,电容放电越慢,滤波效果越好。提高电容滤波电源的负载能力,应适当选用滤波电容的容量,并且选用内阻低的电路及容量大的电源变压器。因此,采用470uf/25v的滤波电容。第四章 软件流程4.1 主程序流程图调用功能函数功能键返回金额显示有无按键按下键盘扫描开始主程序流程图给出了系统工作的基本过程,描述了信号的基本流向,起到一个向导的作用。a/d转换数据采集重量、单价、金额显示 无判断键值 有 是否为数字键 否单价显示 是 图4.1主程序流程图4.2 键盘扫描流程图键盘扫描 否判断是否有键按下等待按键释放判断键是否释放 是 否 是 判断键值键值功能处理返回图4.2 键盘扫描流程图操作说明:本系统采用25键键盘来实现,分为数字键:0-9及.,单价1-单价8,6个控制键。本系统开机显示制作时间,后重量、单价、金额显示初始化界面。数字键和小数点键:用于输入单价;累加键:相当于确认,可以将当前物品金额保存;并且将金额累加,得到所购买商品的总金额。去皮键:用于去除皮重;运行中如果顾客购买已存入的8种商品,只需按下相应的单价键,既可以将商品的单价显示,同样累加键保存此商品金额及当前累计金额。置零键:当开机重量窗口显示不为零时,按下此键使窗口显示为零。第五章 结 论5.1 论文总结经过几个月的努力,终于按照毕业设计进度要求如期完成了实用电子秤控制系统的硬件以及软件设计任务。在做毕业设计的过程中,虽然碰到了不少的困难,但是在老师的指导以及自己的努力下,终于取得了一定成果。一、 主要工作及结论1、熟悉stc89c52rc芯片的功能及工作特性,掌握其接口扩展方法。2、通过对数据采集的分析,掌握了压力传感器、运算放大器及a/d转换器的应用方法,对信号的采样、转换、传输有了更深的认识。3、对键盘和显示器进行方案比较,总结出部分方案的优劣比。二、 存在的问题1、电子电路的设计中对各种影响因素的考虑不够完全,比如在对过压情况的处理中未作防范措施。2、可扩展更多电路,如通讯接口电路可以与上位机(pc机)进行通讯,从而将大量的商品数据存于上位机,然后通过串口或并口通讯与电子秤相连,达到远距离控制的目的。5.2 感想在此次设计中我收获良多。经过一个多月的努力,从在网上和书上寻找a/d转换、数码管驱动等芯片的资料,到定下设计的基本框架,再到理清每一部分的原理,我将大学四年所学绞尽脑汁的拼凑在了一起。在每一部分都设计好后,我进行了原理图的组装,接着在仿真软件中进行了仿真,结果发现数据采集部分很不理想,于是又开始寻找心得a/d转换资料,改变数据采集电路。最终实现了良好的数据采集以及线性放大电路。在本电路中,传感器的信号放大是一个难点,放大后的信号既要保证不失真,还要保证在a/d转换器的分辨率范围内,否则将不能准确的进行电压的变化到重量变化的转换。在设计过程中,我试用了很多的放大电路,但是都以失败告终。最后,我在一个放大电路上进行了反复的调试,最后较为理想的实现了传感器输出信号的放大。 软件的设计比较简单,只要硬件电路实现其功能,就能应用软件进行很好的控制。最后我想说:“不积小流,无以成江海;不积跬步,无以至千里。”任何事情的成功,都需要自身能力的积累。致 谢此次毕业设计的制作,凝聚了我的心血,也注入了老师和同学的无私帮助和热情奉献。在此,我要特别感谢我的指导老师白伟老师,感谢老师给予我的大力支持。从毕业设计的选题、资料的收集、参考书目的推荐到实物的调试和完成直到最后的论文定稿,白老师总是循循善诱的给我指出不足并给出中肯改善的意见。同时,还要感谢刘强老师,在此次毕业设计制作中,他给了我莫大的帮助,很多问题都是在他的帮助下才解决的;另外那些帮助和关心过我的同学们也倾注了很多的精力给予我真诚的帮助,在此,我对所有关心和帮助过我的家人、同学、老师们表示衷心感谢!参 考 文 献1 郭天祥.新概念51单片机c语言教程.电子工业出版社.2009.062 赵建领.51单片机开发宝典. 电子工业出版社.2008.043 唐继贤.51单片机工程应用实例.北京航空航天大学出版社.2004.044 张 俊.匠人手记. 北京航空航天大学出版社.2009.115 李光飞,李良儿,楼然苗.单片机c程序设计指导. 北京航空航天大学出版社.2005.096马忠梅,籍顺心,张凯,马岩.单片机的c语言应用程序设计. 北

温馨提示

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

评论

0/150

提交评论