终极版基于单片机的简易电子秤设计论文_第1页
终极版基于单片机的简易电子秤设计论文_第2页
终极版基于单片机的简易电子秤设计论文_第3页
终极版基于单片机的简易电子秤设计论文_第4页
终极版基于单片机的简易电子秤设计论文_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

1、目录摘要IAbstractII第1章 绪论11.1 研究目的及意义11.2 国内外发展历程11.3 本文的研究内容2第2章 方案论证与器件选型32.1 方案论证32.1.1 主控模块32.1.2 信号采集模块42.1.3 显示模块42.1.4 键盘输入模块52.2 元器件选型52.2.1 STC89C52RC单片机52.2.2 YZC-161B电阻应变式传感器62.2.3 HX711A/D转换模块82.2.4 LCD1602液晶显示器92.2.5 4*4薄膜矩阵键盘102.3 本章小结10第3章 系统硬件设计113.1 主控电路设计113.2 信号采集电路设计123.3 A/D转换电路设计13

2、3.4 显示电路设计143.5 键盘输入电路设计153.6 超重报警电路设计163.7 电源接口电路设计173.8 本章小结18第4章 系统软件设计194.1 主程序设计194.2 子程序设计214.2.1 A/D转换子程序设计214.2.2 显示子程序设计214.2.3 键盘子程序设计224.2.4 报警子程序设计234.2.5 程序计算公式设计244.3 本章小结24第5章 设计制作与调试255.1 电路原理图绘制255.2 设计制作255.3 设计调试265.4 本章小结27第6章 总结28致谢29参考文献30附录31附录一:系统电路原理图31附录二:系统源程序32II太原科技大学华科学

3、院毕业设计(论文)摘要本文完成了基于单片机的简易电子秤设计。通过电阻应变式传感器实现数据的采集、信号经过HX711模块完成数据的模数转换和放大、通过单片机进行数据的处理、数据显示由LCD实现。经实物制作验证:本设计对小于10Kg物体的称重精度可达到±0.005Kg,具有去皮、一键输入单价和改变单价、计算价格、累加金额的功能。关键词:电子秤,单片机,模数转换AbstractThis design was a simple Single-Chip Microcomputer based electronic scales. gathers data gathering was made

4、by a weighting sensor .The gathered signal was made A/D transform by the convertor of HX711 and sent to SCM. At last the result would be steadily displayed on LED. The experimental verification: It has been proved that that the accuracy of the system could be less than 5% in the range of 010Kg in ex

5、periment ,with a peeled, a key input unit price and changes in price, calculate prices, cumulative amount of functionality.Keywords: electronic scales, single-chip microcomputer, analog-digital conversion31第1章 绪论1.1 研究目的及意义电子秤为推动贸易交往的合理化和自动化做出了重大贡献!近十几年来,高精度方便的称量散货的标签计价秤成为大型超市必用的设备!但由于标签计价秤成本高、

6、技术复杂、难度大、价格高等等这些缺点,不利于其在中小市场上推广。因此目前中小型市场上大多采用的还是台秤,弹簧度盘秤,计量精度不高的电子秤。甚至在有些菜市场、药店等地方还有卖家使用的是计量准确度很低的杆秤!而国家为了加强衡器的规范化管理,保护消费者、经营者的合法权益,很早就在公众贸易中限制使用杆秤了!为了使我国中小型市场中的衡器水平整体提高,推动贸易交往的合理化和自动化,更好的维护买家和卖家的合法权益,制造一种高精度、操作简单、功能强大、便于维修、价格便宜的适合中小市场的电子秤是具有很大研究意义的,而本设计所完成的功能就是这种电子秤的最初步模型。1.2 国内外发展历程随着科技的发展,经济的繁荣,

7、人们越来越希望称重过程可以实现自动化!这样既可以节省宝贵的时间,又能减轻人的负担。为此,电子技术与衡器紧密结合产生了电子衡器这一新生事物。电子衡器由最初的精度粗糙、功能单一,逐渐进化成了高精度,多功能的电子衡器。电子衡器由于具有高精度、方便读数、对工作环境要求不高、可与计算机相结合等优点,目前已广泛应用与工业、商业、农业、科研等部门。因此提高电子衡器的技术水平,同时也会使大多行业的现代化水平有所提高!我国衡器行业的发展史是很漫长的。很久之前,我们的祖先使用以物易物的方式,交换自己所需要的东西,但是在那时,人们交易商品是凭感觉来称重的,要想做到公平交易是很难得。为了解决很难做到公平交易这一问题,

8、楚国就已经制造了小型的测量物体轻重的衡器(木衡),通过慢慢的演化,衡杆的力臂加长,重臂缩短。也就形成了我们众所周知的杆秤。二十世纪中期我国的主流衡器还是杆秤和弹簧秤。二十世纪末,我国开始通过向外国学习引进先进电子衡器的制造技术,加以消化吸收并进行技术改造。目前我国的电子衡器制造水平已有很大的提高,近十几年来,高精度方便的称量散货的标签计价秤成为了大型超市必用的设备。但由于标签计价秤成本高、技术复杂、难度大、价格高等等这些缺点,不利于其在中小市场上推广。因此目前中小型市场上大多采用的还是台秤,弹簧度盘秤,计量精度不高的电子秤。甚至在有些菜市场、药店等地方还有卖家使用的是计量准确度很低的杆秤!从国

9、外角度看,一些西方国家早在二十世纪中期电子衡器就已经被广泛运用。其制造的衡器已向集成化、网络化、智能化等发展方向取得了重大的进步。1.3 本文的研究内容对于电子秤来说,研究内容对硬件部分无非就是重力信号的收集、处理、显示。再加上价格的输入和超重报警器。其余的就是软件部分的设计。具体点就是研究怎样收集重量信号,怎样处理信号和输入的命令,最后就是如何显示处理出来的结果。本设计的主要要求如下所述:(1)本设计可以实现基本秤重功能,显示设置的商品英文名称、所称商品重量、单价和总价(称重范围为010Kg,重量误差不大于±0.005Kg);(2)本设计具备去皮,输入单价、一键输入储存的商品的单价

10、并可改变单价,自动完成商品价格计算并可实现金额累加功能;(3)本设计当所秤重量超出电子秤的重量上限值8Kg时,实现报警功能。在本设计中,实现秤重是基本功能,不能称重的电子秤也就不能叫电子秤了!其它功能是在其基础上实现的。本设计的主要设计思路为:首先,需要进行重量数据的采集,我们通过传感器采集到重量的信号,由于所采集的重量信号很小且不能直接被控制器所识别,所以采集到的重量信号必须经过放大后再通过A/D转换器,转换成为控制器可以识别的数字信号。经过控制器相应的处理后,得出当前所秤商品的重量、单价和总价,并显示出来。除此之外,本设计的电子秤还应具有设置单价、切换模式(本设计模式一:处于称重模式、模式

11、二:改变一键输入的价格)、确认、删除等等的功能,因此还需要通过键盘向控制器输入数据或命令。此外,当所称重量超出电子秤的最大测量范围10Kg时,为保护电子秤还要设计报警电路。第2章 方案论证与器件选型本章依据设计思路对整体系统进行分模块,以方便系统的硬件设计。下面就主要的模块进行方案的论证及主要元器件进行简要介绍。2.1 方案论证本设计主要实现的是称重功能,要实现这一功能就必须有能实现重量数据采集的数据收集模块,以及对所采集信号进行A/D转换的模数转换模块、主控模块、显示模块。由设计要求可知本设计还需要实现人机的交流例如输入单价功能因此还需要键盘模块;由于还要进行超重报警所以还要有报警模块。本设

12、计总体结构框图如图2-1所示。图2-1 设计总体结构框图2.1.1 主控模块方案一:可编程逻辑控制器可编程逻辑控制器作为主控器的优势在于编程简单,容易上手、有很强的抗干扰能力、对环境要求不高,但是由于其体积大、价格昂贵,十分不适合作为本设计的主控器。所以此方案被淘汰。方案二:单片机单片机作为主控器的优势在于价格便宜,成本低、体积小,适用于小、微型设备、硬件电路很好设计、软件编程十分方便。综合考虑,在本设计中的主控器我选择采用单片机。2.1.2 信号采集模块方案一:电容式传感器电容式传感器的结构简单。但由于其电容量十分的小,不便于测其电容变化量。并且很容易受环境因素的影响,所以此方案被淘汰。方案

13、二:压电式传感器压电式传感器重量轻、体积小、工作可靠,但是其输出的能量十分微弱并且对外接电路要求非常之高。并不适合本设计,所以此方案被淘汰。方案三:电阻应变式传感器 在本设计中采用电阻应变式传感器对重量信息进行采集,其优势在于:能测出很微笑的应变,很灵敏,价格很便宜。当有商品放上去的时候传感器里面的阻值会产生相对应的变化量。综合考虑在本设计中,本设计选择方案三作为本设计的数据采集部分。2.1.3 显示模块方案一:发光二极管采用发光二极管作为本设计的显示模块其主要优点是:成本低廉、硬件电路非常简便、编程十分简单。其主要缺点是:只能显示几个特定的字符和数字,需要很多的七段LED数码管来显

14、示所称商品的重量、单价、总价等信息,占用太多的IO资源,且显示效果很不好,所以此方案被淘汰。方案二:液晶显示器液晶是一种有机化合物,其在特定温度范文内具有液态的形变、流动性等特性,又能体现出晶体的电光效应、热效应、光学各向异性、磁光效应等等的物理特性,所以我们把它称为“液晶”。当我们给液晶通电时它的分子排列会产生改变,因此造成了光线的折射或扭曲。利用这种电场效应,人们制造了功耗很低的液晶显示器。显示模块采用液晶显示器的优点是:功耗低、画面显示质量高无闪烁,护眼、无电磁辐射、可以显示多行的汉字以及图案。其缺点是:相较于发光二极管,成本稍高、编程较复杂。综合考虑,在本设计中的显示模块本设计选择采用

15、液晶显示器。2.1.4 键盘输入模块方案一:键盘处理芯片采取专用的键盘处理芯片作为本设计输入模块的主要器件的优点是:具有很高的可靠性,使用简便,节省单片机的IO口资源,但由于其成本较高,我还要学习相关的芯片使用方法,很是麻烦,所以,此方案被淘汰。方案二:矩阵键盘由于在本设计中,电子称应具有设置单价、切换模式(本设计模式一:处于称重模式、模式二:改变一键输入的价格)、确认、删除等等的功能,所需要的按键数量较多,假如我采用独立按键来实现的话,虽然软件结构很简便,电路配置也很灵活。但与此同时,则会占用很多的IO资源,我觉得很不划算。所以键盘输入电路我决定采用矩阵键盘实现,矩阵键盘顾名思义就是采取把按

16、键排列成为矩阵形式,这样可以节省一倍的IO口资源1。并且矩阵键盘十分的实用,便宜。综合考虑我选择矩阵键盘作为本设计的键盘输入模块。2.2 元器件选型本小节主要对控制模块的单片机、数据采集模块的电阻应变式压力传感器、A/D转换的元器件、显示模块的液晶显示器进行其元器件的选型。2.2.1 STC89C52RC单片机一台家用的计算机的主机部分主要由CPU(执行运算和控制)、硬盘(存储程序和数据)、内存(存储数据)、输出输入设备(如串行口和并行口等)构成。而在单片机中,这些部分全部被集成到一块集成到电路芯片(IC)中,其中的CPU称为“ALU”(算术逻辑运算单元),硬盘称为“ROM”(只读存储器),内

17、存则称为“RAM”(随机存储器)。 如果把本设计比作一个人来说,那么单片机就相当于人的脑袋,十分的重要!在本设计中,单片机选择了宏晶厂家的型号为STC89C52RC的单片机,其工作电压为3.8V到5.5V,程序的空间大小是8K的字节,工作频率可达到40MHz,属于工业级其温度范围为-40到+85摄氏度采用PDIP封装。单片机实物图如图2-2所示。相较于AT系列的单片机本设计毅然决然的选择了STC系列单片机的原因有:价格便宜,降低本设计的成本、功能与AT系列的单片机一样强大、STC系列的单片机可用串口下载程序使用非常方便。单片机引脚图如图2-2所示。单片机的实物图如图2-3所示。图2-2 单片机

18、管脚图图2-3 STC89C52RC单片机实物图2.2.2 YZC-161B电阻应变式传感器前面有说到,如果把本设计比作一个人来说,那么单片机就相当于人的脑袋,十分的重要!但是,对于只有一个脑袋的人来说是办不成任何事情的。人还必须有感知外界的器官(眼、耳、口、鼻、皮肤等),通过器官对外界的环境信息进行收集,通过神经元产生相对应的兴奋,兴奋再通过神经元传递给大脑,大脑才能接受和处理相关的信息。在本设计中,压力传感器就相当于感知外界的器官,也是不可或缺的器件!压力传感器如果不好的话那么所收集的信息就是不正确的,就不用提后面的信息处理了。所以选择压力传感器也是十分重要的!电阻应变式传感器是由三大部分

19、组成分别是:电阻应变片、感压装置及惠更斯电桥检测电路。其中的核心元件是电阻应变片式,电阻应变片和感压装置相连接,当有商品放在感压装置上面时,应变片会产生相应的形变,这种应变片的电阻会随着其机械形变而变化,通过惠更斯电桥把其电阻值的变换量转换成为电压信号2。在本设计中采用了YZC-161B电阻应变式传感器,其灵敏度为1.0mV/V,千分之三的精度误差。本传感器的内部是一组半桥应变片,由于半桥电路测量的准度比起全桥电路测量的准度要差很多,所以采用了两个量程为5千克的YZC-161B电阻应变式传感器,组成全桥测量,量程可达到10Kg,误差不大于0.005Kg,本设计的传感器量程大于9.9Kg,符合保

20、护电子秤的传感器要求,满足本设计的精度要求。YZC-161B电阻应变式传感器的实物图如图2-4所示。图2-4 传感器实物图其电阻应变片受力形变前的图如图2-5所示。图2-5 应变片受力前形变图其电阻应变片受力形变后的图如图2-6所示。图2-6 应变片受力后形变图由图可得:R1所处位置发生了伸张,R2所处位置发生了收缩。由常理可知,R1的电阻会变大,R2的电阻变小。通过惠更斯电桥把其电阻值的变换量转换成为电压信号。其测量电桥由两个YZC-161B电阻应变式传感器构成。两个传感器组成全桥测量电路的连接原理图如图2-7所示。图2-7 传感器连接图2.2.3 HX711A/D转换模块前面有说道,人体通

21、过器官对外界的环境信息进行收集。但是,对于人体来说,通过器官对外界的环境所收集到的信息是不能直接被大脑所识别的,还必须通过神经元产生相对应的兴奋,兴奋再通过神经元传递给大脑,大脑才能接受和处理相关的信息。在本设计中,AD转换模块就类似于把器官对外界的环境所收集到的信息转换成为大脑所能识别的兴奋的神经元,也是不可或缺的器件!如果,本设计的AD转换不成功的话那么单片机也接受不到它所能识别的信息了,也就不用提后面的信息处理了。所以AD转化任然是十分重要的!由于电阻应变式传感器通过测量电路形成相对应的电压的信号较小所以还需要一个放大部分,又由于电压信号不能直接被单片机所识别,还必须有A/D转换部分。本

22、设计中选择了24位AD转换芯片HX711。相较于其它转换芯片本设计毅然决然的选择了HX711的原因有:其精度完全能满足本设计的需要、集成度非常高、抗干扰能力强、速度很快、方便编程、最最重要的是其A通道的可以编程的增益可以为120倍,选择HX711既可以完成A/D转换又可以对信号进行放大,免除本设计的放大部分电路设计,降低了本设计的成本并使得本设计的可靠性有所提高。芯片管脚图如图2-8所示。焊接好的HX711模块实物如图2-9所示。图2-8 HX711管脚图图2-9 HX711模块实物图2.2.4 LCD1602液晶显示器对一个人来说,他的大脑对外界感知到的重量信息,他如果想要表达他所感知的信息

23、他可以采取通过口说出来,通过手写出来。而在本设计中,没有采取语音芯片进行信息表达,而是通过显示器来表达的。经过前面的论证最终本设计中选择了液晶显示器作为本设计的显示模块的主要器件。通过深思熟虑,本设计中最终选择了采用LCD1602液晶显示器。相较于LCD12864其优点是:体积小、虽然只能实现显示字符、字母和数字但是任可以完成本设计的要求,用英文代替汉字就可,最最重要的是其价格比LCD12864便宜很多,LCD12864比LCD1602贵七倍多!LCD实物图如图2-10所示。图2-10 LCD实物图2.2.5 4*4薄膜矩阵键盘在本设计中,电子秤应具有设置单价、切换模式(本设计模式一:处于称重

24、模式、模式二:改变一键输入的价格)、确认、删除等功能,经过思考可得本设计需要十六个按键就可完成本设计的要求,本设计选择4*4的矩阵键盘来实现本设计的按键输入。由于矩阵键盘在进行实物焊接时,不太好焊接,所以本设计采用了直接做好的4*4薄膜键盘其实物如图2-11所示。图2-11 键盘实物图2.3 本章小结本章主要内容是对本次设计的方案论证与器件的选型,按照设计的基本要求,通过分析与论证,最后确定系统可分为四大模块,主控模块、数据收集模块、显示模块、键盘输入模块。其中信号采集模块由YZC-161B电阻应变片压力传感器采集模拟信号,信号的放大处理和A/D转换由HX711转换模块担任。转换后的数字信号送

25、给STC89C52RC单片机控制器处理,由单片机完成对该数字量的处理,驱动LCD1602液晶显示模块进行信息显示,用4*4薄膜矩阵键盘实现命令的输入。第3章 系统硬件设计单独的元器件是没有办法完成称重任务的。要想完成称重任务的前提是必须把它们通过正确的方式连接起来。本系统的硬件设计就是为了把这些独立的器件通过正确的连接方式连接起来,形成一个整体。本章主要对本系统的硬件电路进行了设计,下面就分模块对系统的硬件电路进行简要说明。3.1 主控电路设计前面有把本设计比作一个人来阐述本设计,对于本设计来说单片机STC89C52RC就相当于“大脑”,有“大脑”还不行,还必须有“健康的心脏”。对于本设计来说

26、,时钟电路就类似于本设计的“心脏”。在本设计中,本设计中采用最常见的内部时钟方式。在单片机STC89C52RC内部有个高增益反相放大器,其输入端为芯片引脚XTAL1,输出端为芯片引脚XTAL2,在芯片的外部通过这两个引脚跨接微调电容和晶体振荡器,形成反馈电路,构成自激振荡器3。本设计中采用的是11.0592MHz晶振,主要是因为它能准确的产生各种波特率,在进行串行通信时是非常有用的。对于时钟电路的微调电容来说,也没有定值。微调电容范围是在20-40pF之间。电容值越大,会使晶振越稳定,但是会降低静晶振的精度。电容值越小,会降低其抗干扰性能,在本设计中选一个中间值即电容选30pF。复位是单片机的

27、初始操作,让单片机从单元0000H开始执行程序4。复位作用除了使设计进入正常初始化外主要功能就是当单片机出现异常和跑飞,让单片机从新启动,和电脑的重启是一样的道理。单片机复位信号的输入端是RST,当输入高电平时有效,并且其输入高电平的时间应持续24个震荡脉冲周期(即两个机器周期)以上5。单片机STC89C52RC的31脚接高电平,表示允许使用单片机的片内ROM。单片机主控电路原理图如图3-1所示。 图3-1 单片机控制电路3.2 信号采集电路设计本设计中用了两个量程为5Kg的YZC-161B电阻应变式传感器,组成了全桥测量。测量电路原理图如图3-2所示。图3-2 测量电路原理图传感器的输出电压

28、U的计算公式如公式(3-1): (3-1)由式子(3-1)可得当满足条件时,即当电桥平衡时,传感器的输出电压U为零6。因此,在对商品称重前,使电桥平衡。就可使传感器输出电压U仅和因称重的商品的重量所引起的电阻变化有关。其中的E是传感器的供电电压,即HX711模块上的E+和E-电压。该电压通过计算。其中VBG为模块儿基准电压1.25V。R5是20K,R6是8.2K。可得E为4.3V。若在传感器上放上商品,则传感器的电阻产生的变化7如下:,按公式(3-1),则传感器输出电压U公式如(3-2): (3-2)传感器满量程输出电压的计算公式如公式(3-3): (3-3) 其中1.0mV/V指的是本传感器

29、的灵敏度。最大输出电压是 由于是用了两个量程为5千克的YZC-161B电阻应变式传感器,组成的全桥测量。所以本设计的最大量程输出电压为4.3mV的两倍8.6mV。 3.3 A/D转换电路设计本设计中采用的HX711芯片其精度完全能满足本设计的需要、其A通道的可以编程的增益可以为128倍,在本设计中不需要接B通道(即B+和B-)。最大输出电压为经过128倍放大后,最大电压为经过AD 转换后输出的24bit数字值最大为HX711模块的电路原理图如图3-3所示。图3-3 HX711模块原理图3.4 显示电路设计本设计的显示部分选择了用LED1602液晶显示模块。其可以显示2行、每行显示16个字符。引

30、脚1是液晶1602的接地引脚,引脚2是液晶1602的电源引脚,引脚15是液晶1602的背光源正极,引脚16是液晶1602背光源负极,所以把引脚1和引脚16接地,引脚2和引脚15接电源。引脚3是液晶显示器对比度调整引脚,如果把其直接接地的话,会造成对比度过高很可能产生我们常说的“鬼影”。为避免“鬼影”的产生,降低液晶显示器的对比度,本设计中采用把引脚3与地之间加一个10K的电位器对对比度进行调整8。引脚4、引脚5、引脚6是液晶1602的选控制引脚,本设计中将它们分别连接到STC89C52RC单片机的P2.0、P2.1、P2.2端口,引脚7到引脚14是数据接口,本设计中将它们分别连接到STC89C

31、52RC单片机的P0.0到P0.7口,用以实现数据的传输。其与单片机的连接电路如图3-4所示。图3-4 液晶显示接口电路3.5 键盘输入电路设计其中薄膜键盘的“1”“2”“3”“A”分别对应原理图中的“S1”“S2”“S3”“S4”,其它按键以此规律分配。薄膜键盘的左边为四条行扫描线,右边四条列扫描,最左边的连接到单片机STC89C52RC的IO口P3.0,最右边的连接到单片机STC89C52RC的IO口P3.7,其它端口连接以此规律连接。其原理图如图3-5所示。图3-5 按键输入电路原理图 功能:系统通电后自动进入模式一:自由输入单价模式。在放上商品后,会在LCD1602上显示出所称物体的重

32、量信息,此时单价、总价为零。这时可以直接输入你想要输入单价,LCD1602上会显示出你所输入的单价,如输错了的话按下“清除”按键“C”(即原理图的按键S12)就可以清除输错的内容,“等于”按键“D”(即原理图的按键S16)这时,LCD1602会显示总价信息。如果想进入模式二:一键输入单价模式的话,按下“切换”按键“*”(即原理图的按键S13),就可以进入一键输入模式了。其中数字0到9分别对应的不同的水果英文名称,直接按下数字键就会显示相应的英文名称和价格。如果需要更改一键输入的价格的话,首先按下“修改”按键“#”LCD1602就会回到可以改价格的界面,只是多显示了一个“#”符号,再按一次“#”

33、按键,多显示的“#”符号就会消失,此时输入想修成改的价格,输入完了再按下可以使设计变成模式二的“切换”按键“*”按下你想修改价格的水果对应数字按键,按下“修改”就改价完成了。本设计还可以实现金额的累加计算功能,按下“累加”按键“B”(即原理图的按键S8),类外,本设计换可以实现去皮的功能,按下“去皮”按键“A”(即原理图的按键S4)就可实现去皮功能了。3.6 超重报警电路设计在本设计中不需要播报液晶显示中显示出来的重量、单价、总价等相关信息,仅需要当所秤重量超出电子秤的最大测量范围10Kg时,发出提示声音以保护电子秤。并且所发出的提示音并没有要求必须发出“超重”这种提示音,相比较于采用语音芯片

34、的成本高、编程复杂等缺点蜂鸣器则电路十分简单、编程十分容易且可靠性十分的高。我决定报警模块中的中心器件我采用蜂鸣器,以起到报警的作用。超重报警电路在本设计中用9012(PNP三极管)来驱动蜂鸣器以实现超重报警功能,由STC89C52RC单片机的IO口P1.0控制PNP三极管的基极,当STC89C52RC单片机的IO口P1.0输出为低电平时,三极管导通,则蜂鸣器的正极与电源接通。由于设计时我使蜂鸣器的负极一直处于低电平,所以当其正极接通电源的话,蜂鸣器则会发出9。反之,当单片机的P1.0口输出高电平时,蜂鸣器断电停止发出声响。报警电路原理图如图3-6所示。图3-6 报警电路原理图3.7 电源接口

35、电路设计由于在本设计中,需要五伏的直流电压就可以工作了。因此为了确保本设计可以正常稳定的运行,本设计需要一个可以提供稳定的五伏直流电压的电源模块。但由于设计一个稳定的五伏直流电压电路很复杂,所以采用外置电源供电,以免除五伏直流电压电路的设计,减少本设计的工作量,假如在本设计中的外置电源采用干电池做电源的话就会面临着更换电池的麻烦,所以在本设计中采用USB电源线再加上我手机的充电头就构成了本设计的外置电源,十分的方便可靠。本设计只需要对电源的接口电路进行设计就好,本设计在设计时加了一个按下LED,起到一个提示通电的作用。电源接口电路原理图如图3-7所示。图3-7 电源接口电路原理图3.8 本章小

36、结本章主要是介绍硬件电路的设计。在第2章的基础上,把系统硬件电路设计分为主控电路设计、信号采集电路设计、A/D转换电路设计、显示电路设计、键盘输入电路设计、超重报警电路设计、电源接口电路设计。并详细的介绍了各个模块的具体电路设计。第4章 系统软件设计第本章主要对系统的软件部分进行设计。软件的作用相当于给硬件部分下达任务命令。所以对于只有硬件而没有软件的系统是不知道它要做的任务是什么,也就没有完成任务这一事了。当然还必须通过单片机能听懂的语言下达任务命令。例如,如果我用汉语对一个不懂汉语的美国人下达命令,他是不能理解的。但是我可以通过翻译软件,把我想表达的内容翻译成他能懂得英语。而本设计可以听懂

37、的语言是“十六进制”,我用C语言编写命令,通过Keil uVision4软件翻译成为设计可以听懂的“十六进制”文件10。而本设计的“命令”主要包括“主命令”和“子命令”。本设计程序采用模块化的结构,下面就对本设计的软件进行分模块介绍。4.1 主程序设计在本设计中,实现秤重是基本功能,不能称重的电子秤也就不能叫电子秤了!其它功能是在其基础上实现的。因此本设计程序的主要内容首先是完成对模拟信号的转换也就需要A/D子程序,处理成为与之对应的重量值需要用单片机来处理函数程序,当进行显示信息时就需要显示子程序。实现了这一主要功能后还需要实现设置单价、切换模式(本设计模式一:处于称重模式、模式二:改变一键

38、输入的价格)、确认、删除等等的功能,因此还需要键盘子程序,当超重时进行蜂鸣器报警这时需要报警子程序。本设计的主程序主要负责完成设计初始化,并大致按照上述过程调用各程序模块(子程序),主程序流程图如图4-1所示。 图4-1 主流程图4.2 子程序设计设计子程序主要包括A/D转换启动程序设计、显示程序设计、键盘子程序设、报警子程序的设计以及数据转换函数公式的得出等。 4.2.1 A/D转换子程序设计A/D转换子程序主要是指在设计开始运行时,把称重传感器传递过来的模拟信号转换成数字信号并传递到单片机所涉及到的程序设计。设计流程图如图4-2所示。图4-2 A/D转换子流程图4.2.2 显示子

39、程序设计显示子程序主要是来判断是否需要显示,和如何去显示。是其他程序所需要调用的程序之一,非常的重要。显示子程序的流程图如下图4-3所示。图4-3 显示子程序流程图4.2.3 键盘子程序设计在设计本程序时,首先应先判断是否有按键按下,如有按键按下的话,就应判断出是哪个按键按下的。本设计在判断按键是否按下时采用的是行列扫描法。在调用相应的处理显示程序。键盘子程序的流程图如图4-5所示。 图4-5 键盘子程序流程图4.2.4 报警子程序设计当STC89C52RC单片机的IO口P1.0输出为低电平时,三极管导通,蜂鸣器报警。反之,当单片机的P1.0口输出高电平时,蜂鸣器断电停止发出声响。报警子程序的

40、编程只需控制P1.O口就好,当超重时使P1.0口输出低电平,不超重则输出高电平。当所称商品超过程序设定的值则进入报警子程序。报警子程序流程图如图4-6所示。图4-6 报警子程序流程图4.2.5 程序计算公式设计假设重力为A Kg,,测量出来的模拟值为y 经过传感器输出。发送给AD转换模块传感器输出电压为经过128倍增益后为转换为24bit数字信号为获取当前采样的AD值,存放在long型变量HX711_Buffer中,因 long型变量计算速率和存放空间占用资源太多,固除以100,缩放为int型,便于后续计算。 因此得出所以程序中计算公式为: Weight_Shiwu=(unsignedint)

41、(float)Weight_Shiwu/4.30+0.05); 其中+0.05是为了四舍五入百分位的。4.3 本章小结本章主要介绍的是本次设计的软件部分,画出了软件的主程序流程图及部分子程序流程图。并简要介绍了本设计软件中最重要的重量换算公式。第5章 实物制作与调试前面介绍的内容都是为了做出一个真正可以称重的实物做铺垫的。要制作实物就会有焊接调试等内容。下面就关于实物的制作等方面进行简要介绍。5.1 电路原理图绘制本设计中的原理图是用Altium Designer6.09软件制作的。Altium Designer6.09软件,主要包括原理图绘制、PCB图绘制、原理图符号库绘制、元件封装绘制等功

42、能。原理图包括单个原理图和层次原理图两种类型;印制电路板包括单层板、双层板和多层板;其中网络表是原理图和印制板之间的桥梁。根据芯片数据手册可以绘制出原理图符号和元件封装,原理图符号包括单个和子元件符号,元件封装包括分立元件封装和集成电路封装,若将原理图符号和封装集成到一起将形成集成库。原理图和原理图符号库之间可以相互更新,同样印制电路板和封装库之间也可以互相更新。使用Altium Designer6.09软件设计电路原理图主要分为创建工程、设置工作环境、放置元器件、原理图布线、生成网络表、修改和调整等几个步骤。在本设计中采用的是万用板而不是按照PCB图制作的PCB板。原因是PCB板适合批量生产

43、,并且我觉得PCB板的制作对我来说很麻烦,在本毕业设计中相比较PCB板的制作我更愿意焊接元器件之间连接的导线!所以我制作的PCB图在实物制作时是起到先安排好各个器件的位置,确定怎样走线等等作用,避免直接再万用板上焊好元件了,结果位置不对,还要重弄。5.2 设计制作这部分介绍的内容主要是按照PCB图所示元器件位置在万用板上焊接元器件。在这部分中,我在焊接时严格遵守曾经在学校安排的电子工艺实习中学到的“手工焊接五步法”。具体的作法是首先保存烙铁头的干净,等烙铁很热了再一起加热焊盘和元件的引线,在这一步骤中,不可加热时间太久,否则会有可能把焊盘弄掉了,依据我的经验,我觉得加热2秒最好,加热后左手把焊锡丝送到所需位置,所融化的焊料不能太多也不能太少。接下来一定要先已开焊锡丝在移开烙铁,如果先移开烙铁则十分可能造成,焊锡丝移不开,和以融化的焊料融合再一起。还有需要十分注意的是要注意安全,

温馨提示

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

评论

0/150

提交评论