论文方法介绍-具有语音播报功能的体重测量仪-CNKI知网查重网站

论文方法介绍-具有语音播报功能的体重测量仪

2021-06-15 10:50:45
作者:杭州千明

  体重秤是将检测与转换技术、计算机技术、信息处理、数字技术等技术综合一体的现代新型称重仪器。它与我们日常生活紧密结合息息相关,体重称不但计量准确、快速方便,更重要的数字显示、语音播报,对人们生活的影响越来越大,广受欢迎。本系统的设计是基于单片机STC89C52为核心的控制单元实现数据的处理,采用压力传感器对数据进行采集,电子秤专用24位AD转换芯片HX711对传感器采集到的模拟量进行AD转换,转换后的数据送到单片机进行处理显示,数据显示由LCD1602液晶实现,并使用语音芯片JQ8900实现语音播报功能。

  体重秤在我们日常生活中非常普遍,小到菜市场大到工厂都随处可见,它是我们生活和生产中重要的工具,有了它我们才能准确的知道物体的重量。随着人们的生活现代化,人们对身体健康的重视程度越来越高,而身高和体重的比例是衡量身体健康的一个重要标准。因此,用一台体重秤定期测量自己的体重合格与否成为了关注自我健康的一个标志。设计一款方便的体重测量仪也是为了让人们能更简单的了解自己的体重变化。

  1.2体重测量系统的研究现状

  称重技术自古以来就受到人们的重视。作为一种测量方法,它广泛应用于工农业、科学研究、交通运输、国内外贸易等领域,与人们的生活息息相关。规模化产品技术水平的高低将直接影响到各行各业现代化水平和社会经济效益的提高。因此,称重技术的研究和称重工业的发展具有十分重要的意义。20世纪50年代中期,电子技术的渗透促进了称重仪器制造业的发展。自20世纪60年代初机电式电子称重仪器问世以来,随着科学技术的飞速发展,微电子、计算机等现代电子技术的成就给传统的电子测量仪器带来了巨大的冲击和革命性的影响。在20世纪80年代,美国、德国等工业发达国家,就开始了数字式称重传感器和数字称重系统的预先研究和初期开发工作,经过十余年的努力,推出了多种数字式智能称重传感器及其称重系统,在电子称重领域备受瞩目,有力的推动了电子衡器数字化和数字称重系统的发展。我国数字式智能称重传感器的研究开发始于20世纪90年代中后期,在短短几年时间里,研制出安装在模拟式称重传感器内部的小型数字化单元,完成了模拟信号与数字信号之间的转换,变模拟式称重传感器为数字化称重传感器,并应用于大型电子汽车衡和电子配料秤等小型称重系统中。

  经过不断的改进和完善,称重仪器技术也在不断提高。从世界范围来看,称重技术经历了四个阶段,从传统的由全部机械元件组成的机械秤,到用电子线路代替部分机械元件组成的机电组合秤,然后从集成电路到目前单片机系统设计的电子秤。我国电子称重仪器已从最初的机电组合式发展到目前的全电子式和数字智能型。目前,电子称重仪器的制造技术和应用有了新的发展:电子称重技术从静态称重发展到动态称重;测量方法从模拟测量发展到数字测量;测量特性已从单参数测量发展到多参数测量。传统的测试仪器和控制装置被更先进的智能仪器所取代,使得传统的电子测量仪器在距离、功能、精度和自动化水平等方面都发生了很大的变化,相应地出现了各种智能仪器控制系统,使科学实验和应用工程的自动化程度显著提高。

  1.3主要研究内容

  本课题要使用单片机实现一种具有语音播报功能的体重秤,具体模块包括称重传感器、语音芯片、放大器、转换器、单片机、显示器等几部分。随着微控制器技术、传感器技术的发展和计算机技术的广泛应用,电子产品的更新速度达到了日新月异的地步。设计一种基于单片机的带有语音播报功能的智能体重测量系统,可以弥补传统体重秤测量过程存在的不足。传统的体重秤是仪表形式的,不仅测量的误差比较大,而且读数很不方便,体积上会占用更多的空间。而电子称重器向着小型化、模块化、集成化、智能化方向发展;其技术性能趋向是速率高、准确度高、稳定性高、可靠性高;其功能趋向是称重计量的控制信息和非控制信息并重的“智能化”功能;其应用性能趋向于综合性和组合性。因此电子秤取代机械秤是科学技术发展的必然规律。低成本、高智能化的电子体重秤体现出来了其广泛的市场前景。

  综上所述,本次课题的主要设计思路是:利用压力传感器采集因压力变化产生的电压信号,经过电压放大电路放大,然后再经过模数转换器转换为数字信号,最后把数字信号送入单片机。单片机经过相应的处理后,得出当前所称物品的重量,然后在进行显示以及进行语音播报。

  2基本理论依据

  2.1基本结构

  体重秤是利用物体的重力作用来确定物体质量(重量)的测量仪器,也可用来确定与质量相关的其它量大小、参数、或特性。不管根据什么原理制成的电了秤均由以下三部分组成[5]:

  a)承重、传力复位系统

  它是被称物体与转换元件之间的机械、传力复位系统,又称体重秤的秤体,一般包括接受被称物体载荷的承载器、秤桥结构、吊挂连接部件和限位减振机构等。

  b)称重传感器

  即由非电量(质量或重量)转换成电量的转换元件,它是把支承力变换成电的或其它形式的适合于计量求值的信号所用的一种辅助手段。

  按照称重传感器的结构型式不同,可以分直接位移传感器(电容式、电感式、电位计式、振弦式、空腔谐振器式等)和应变传感器(电阻应变式、卢表面谐振式)或是利用磁弹性、压电和压阻等物理效应的传感器。

  对称重传感器的基本要求是:输出电量与输入重量保持单值对应,并有良好的线性关系;有较高的灵敏度;对被称物体的状态的影响要小;能在较差的工作条件下工作;有较好的频响特性;稳定可靠。

  c)测量显示和数据输出的载荷测量装置

  即处理称重传感器信号的电子线路(包括放人器、模数转换、电流源或电压源、调节器、补尝元件、保护线路等)和指示部件(如显示、打印、数据传输和存贮器件等)。这部分习惯上称载荷测量装置或二次仪表。在数字式的测量电路中,通常包括前置放大、滤滤、运算、变换、计数、寄存、控制和驱动显示等环节。

  2.2基本原理

  当被称物体放置在秤体的秤台上时,其重量便通过秤体传递到称重传感器,传感器随之产生力—电效应,将物体的重量转换成与被称物体重量成一定函数关系(一般成正比关系)的电信号(电压或电流等)。此信号由放大电路进行放大、经滤波后再由A/D器进行转换[10],数字信号再送到微处器的CPU处理,CPU不断扫描键盘和各种功能开关,根据键盘输入内容和各种功能开关的状态进行必要的判断、分析、由仪表的软件来控制各种运算。运算结果送到内存贮器,需要显示时,CPU发出指令,从内存贮器中读出送到显示器显示。一般地信号的放大、滤波、A/D转换以及信号各种运算处理都在仪表中完成。

  3系统方案选择

  3.1方案选择

  按照设计要求,系统由核心控制模块、压力传感器模块、语音播报模块、显示模块这四个部分组成,系统设计的总体框图方案如图2.1所示。

  图2.1

  测量部分是利用称重传感器检测压力信号,得到微弱的电信号,而后经放大电路处理后,送入AD转换器,将模拟量转化为数字量输出。控制模块部分接受来自AD转换器输出的数字信号,经过一系列运算,将数字信号转换为物体的实际重量信号,并通过控制模块进行数据的显示以及语音播报的功能。

  3.2核心控制方案选择

  本设计以单片机为主的控制模块,可以很轻易的将计算机技术和测量技术结合使用,这样只需要改变软件程序就可以进行智能化测量,在测量结果的数据处理及功能方面,都有巨大的进展。此设计对于系统没有高标准要求,结合AD转换模块、语音播报模块和数据显示模块的要求,可以使用AT89C51单片机或STC89C52单片机。

  STC89C52可以在线编程也就是有ISP功能,具有6T模式,速度要快些,工

  作电压5.5V~3.3V,用户程序空间从4K到64K不等,可选,并集成了512或1280字节的RAM,具有3个16位定时器。

  AT89C51必须通过编程器烧录,是12T模式,工作电压是5.25V~4.75V,用户程序空间是4K,没有集成,具有2个16位定时器。

  综合考虑,STC89C52单片机功能更加强大,作用更加广泛,使用更加方便。因此,选用STC89C52单片机作为主控制。

  3.3压力传感器方案选择

  在本设计中,传感器是一个十分重要的元件,传感器的精度决定电子秤的测量精度,因此对传感器的选择显得特别重要。在选择传感器时不仅要注意其量程和参数,还要充分考虑与其相配置的各种电路的设计难易程度和设计性价比等。

  传感器量程的选择可依据秤的最大称量值、选用传感器的个数、秤体的自重、可能产生的最大偏载及动载等因素综合评价来确定。一般来说,传感器的量程越接近分配到每个传感器的载荷,其称量的准确度就越高。但在实际使用时,由于加在传感器上的载荷除被称物体外,还存在秤体自重、皮重、偏载及振动冲击等载荷,因此选用传感器量程时,要考虑诸多方面的因素,保证传感器的安全和寿命。

  方案一压电传感器

  压电传感器是一种典型的有源传感器,又称自发电式传感器。其工作原理是基于某些材料受力后在其相应的特定表面产生电荷的压电效应。压电效应是压电传感器的主要工作原理,压电传感器不能用于静态测量,因为经过外力作用后的电荷,只有在回路具有无限大的输入阻抗时才得到保存。实际的情况不是这样的,所以这决定了压电传感器只能够测量动态的应力。压电传感器主要应用在加速度、压力和力等的测量中。压电式传感器也可以用来测量发动机内部燃烧压力的测量与真空度的测量。它既可以用来测量大的压力,也可以用来测量微小的压力。

  压电传感器体积小、重量轻、结构简单、工作可靠,适用于动态力学量的测量,不适合测频率太低的被测量,更不能测静态量。目前多用于加速度和动态力或压力的测量。压电器件的弱点:高内阻、小功率。功率小,输出的能量微弱,电缆的分布电容及噪声干扰影响输出特性,这对外接电路要求很高。

  方案二电容式传感器

  电容式传感器是将被测非电量的变化转换为电容变化的一种传感器。它有结构简单、灵敏度高、动态响应好、可实现非接触测量、具有平均效应等优点。电容传感器可用来检测压力、力、位移以及振动学非电参量。电容式压力传感器一般采用圆形金属薄膜或镀金属薄膜作为电容器的一个电极,当薄膜感受压力而变形时,薄膜与固定电极之间形成的电容量发生变化,通过测量电路即可输出与电压成一定关系的电信号。电容式压力传感器属于极距变化型电容式传感器,可分为单电容式压力传感器和差动电容式压力传感器。

  电容传感器的基本工作原理可用最普通的平行极板电容器来说明。两块相互平行的金属极板,当不考虑其边缘效应(两个极板边缘处的电力线分布不均匀引起电容量的变化)时,其电容量为:

  (2.1)

  式(2.1)中

  ——两极板间的距离

  ——两平行极板相互覆盖的有效面积

  ——介质的相对介电常数

  ——真空中介电常数

  若被测量的变化式中,、、三个参量中任一个发生变化,都会引起电容量的变化,通过测量电路就可转换为电量输出。

  虽然电容式传感器有结构简单和良好动态特性等诸多优点,但也有不利因素:

  a)小功率、高阻抗。受几何尺寸限制,电容传感器的电容量都很小,一般仅几皮法至几十皮法。因C太小,故容抗很大,为高阻抗元件,负载能力差;又因其视在功率,C很小,则P也很小,故易受外界干扰,信号需经放大,并采取抗干扰措施。

  b)初始电容小,电缆电容、线路的杂散电路所构成的寄生电容影响很大。

  方案三电阻应变式传感器

  电阻应变式传感器是一种利用电阻应变效应,将各种力学量转换为电信号的结构型传感器。电阻应变片式电阻应变式传感器的核心元件,其工作原理是基于材料的电阻应变效应,电阻应变片即可单独作为传感器使用,又能作为敏感元件结合弹性元件构成力学量传感器。

  导体的电阻随着机械变形而发生变化的现象叫做电阻应变效应。电阻应变片把机械应变信号转换为△R/R后,由于应变量及相应电阻变化一般都很微小,难以直接精确测量,且不便处理。因此,要采用转换电路把应变片的△R/R变化转换成电压或电流变化,其转换电路常用测量电桥。

  直流电桥的特点是信号不会受各元件和导线的分布电感及电容的影响,抗干扰能力强,但因机械应变的输出信号小,要求用高增益和高稳定性的放大器放大。

  应变片式传感器有如下特点:

  a)应用和测量范围广,应变片可制成各种机械量传感器。

  b)分辨力和灵敏度高,精度较高。

  c)结构轻小,对试件影响小,对复杂环境适应性强,可在高温、高压、强磁场等特殊环境中使用,频率响应好。

  通过以上对压力传感器的分析与比较,综合考虑本次设计的技术指标,选择方案三。

  3.4AD转换方案选择

  AD转换部分对整个设计都很关键,AD转换部分处理不好,会使得整个设计无法进行。世界上具有多种AD转换芯片,经过综合考虑,选择HX711芯片作为AD转换芯片,HX711是一款专为高精度称重传感器而设计的24位AD转换器芯片。与同类型其它芯片相比,该芯片集成了包括稳压电源、片内时钟振荡器等其它同类型芯片所需要的外围电路,具有集成度高、响应速度快、抗干扰性强等优点。使用这款芯片降低了此次设计的整体成本,提高了整体的性能和可靠性。

  3.5语音播报方案选择

  语音播报功能的实现需要语音芯片,JQ6500是一个提供串口的MP3芯片,完美的集成了MP3、WMV的硬解码,支持24位DAC输出,动态范围支持90dB,信噪比支持85dB,同时,支持多种控制模式,串口模式、AD按键控制模式。同时软件支持TF卡驱动,支持FAT16、FAT32文件系统。可以通过简单的串口指令完成播放指定的音乐,以及如何播放音乐等功能,无需繁琐的操作,使用方便,稳定可靠是此款产品的最大特点。另外该芯片也是深度定制的产品,专为固定语音播放领域开发的低成本芯片。

  3.6数据显示方案选择

  显示器是人机交换的主要部分,显示模块可以将测量电路测得的数据经过微处理器处理后直观的进行显示,数据显示有两种方案:LED数码显示和LCD液晶显示。LCD液晶显示器是一种极低功耗显示器,从电子表到计算器,从袖珍仪表到便携式微型计算机以及一些文字处理机都用到了液晶显示器。LCD液晶显示具有显示质量高,数字式接口,体积小,重量轻,功耗低等优点,近年来在单片机控制的智能仪表和消费电子产品中获得广泛应用。因此,显示模块决定使用LCD1602液晶显示器。

  4系统的总体设计

  4.1单片机控制模块

  4.1.1 STC89C52芯片简介

  单片机的诞生标志着计算机正式形成了通用计算机系统和嵌入式计算机系统两个分支。通用计算机系统主要用于海量高速数值运算,不必兼顾控制功能,其数据总线的宽度不断更新,而且不断提高运算速度和完善通用操作系统。以突出其高速海量数值运算能力,在数据处理、模拟仿真、人工智能、图象处理、多媒体、网络通信中得到了广泛的应用:单片机作为最典型的嵌入式系统,由于其微小的体积和低廉的成本,广泛应用于家用电器、机器人、仪器仪表、工业控制单元、办公自动化设备以及通信产品中,成为现代电子系统中最重要的智能化工具。因此,单片机的出现大大促进了现代计算机技术的飞速发展,成为近代计算机技术发展史上一个重要里程碑。

  单片机的典型代表是Intel公司在20世纪80年代初设计生产的MCS-51单片机。后来Intel公司把MCS-51的核心技术授权给了很多其它的公司,所以有很多公司在做以8051为核心的单片机,当然,功能或多或少有些改变以满足不同的需求,其中的89C52就是这几年在我国非常流行的单片机,这是由美国ATMEL公司开发生产的。

  STC89C52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。STC89C52具有以下标准功能:8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,STC89C52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位。在本系统中用于称量的主要器件是称重传感器,称重传感器在受到压力或拉力时会产生电信号,受到不同压力或拉力是产生的电信号也随着变化,而且力与电信号的关系一般为线性关系。由于称重传感器般的输出范围为0~20mV,对AD转换或单片机的工作参数来说不能使AD转换和单片机正常工作,所以需要对输出的信号进行放大。由于传感器输出的为模拟信号,所以需要对其进行AD转换为数字信号以便单片机接收。单片机根据称重传感器输出的电信号和速度传感器输出的速度信号计算出物体的重量。STC89C52引脚图如图3.1所示。

  图3.1

  4.1.2单片机管脚说明

  VCC(40引脚):电源电压

  VSS(20引脚):接地

  P0口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。

  P1口:P1口是一个具有内部上拉电阻的8位双向I/O口,p1输出缓冲器能驱动4个TTL逻辑电平。对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。

  P2口:P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器,P2口送出高八位地址。在这种应用中,P2口使用很强的内部上拉发送1。在使用8位地址访问外部数据存储器时,P2口输出P2锁存器的内容。在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。

  P3口:P3口是一个具有内部上拉电阻的8位双向I/O口,P3输出缓冲器能驱动4个TTL逻辑电平。对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3口亦作为STC89C52特殊功能(第二功能)使用,如下表所示。在flash编程和校验时,P3口也接收一些控制信号。

  RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。

  ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。

  对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。

  PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当STC89C52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。

  EA/VPP:外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平(接Vcc端),CPU则执行内部程序存储器的指令。FLASH存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。

  4.1.3 STC89C52的最小系统电路构成

  STC89C52单片机的最小系统由时钟电路、复位电路、电源电路及单片机构成。单片机的时钟信号用来提供单片机片内各种操作的时间基准,复位操作则使单片机的片内电路初始化,使单片机从一种确定的初态开始运行。

  单片机的时钟信号通常用两种电路形式得到:内部振荡方式和外部振荡方式。在引脚XTAL1和XTAL2外接晶体振荡器(简称晶振)或陶瓷谐振器,就构成了内部振荡方式。由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自激振荡器并产生振荡时钟脉冲。

  当单片机的复位引脚RST出现2个机器周期以上的高电平时,单片机就执行复位操作。如果RST持续为高电平,单片机就处于循环复位状态。根据应用的要求,复位操作通常有两种基本形式:上电复位和上电或开关复位。上电复位要求接通电源后,自动实现复位操作。

  上电或开关复位要求电源接通后,单片机自动复位,并且在单片机运行期间,用开关操作也能使单片机复位。单片机的复位操作使单片机进入初始化状态,其中包括使程序计数器PC=0000H,这表明程序从0000H地址单元开始执行。

  系统复位是系统执行的第一步,使整个控制芯片回到默认的硬件状态下。51单片机的复位是由RESET引脚来控制的,此引脚与高电平相接超过24个振荡周期后,51单片机即进入芯片内部复位状态,而且一直在此状态下等待,直到RESET引脚转为低电平后,才检查EA引脚是高电平或低电平,若为高电平则执行芯片内部的程序代码,若为低电平便会执行外部程序。

  4.2压力传感器模块

  在选择压力传感器的时候我们要考虑他的综合精度,而压力传感器的精度受多方面的影响,其实造成传感器误差的因素有很多,下面我们注意说四个无法避免的误差,这是传感器的初始误差。首先的偏移量误差:由于压力传感器在整个压力范围内垂直偏移保持恒定,因此变换器扩散和激光调节修正的变化将产生偏移量误差。其次是灵敏度误差:产生误差大小与压力成正比。一般电子秤、体重秤等选用双孔悬臂平行梁应变式称重传感器。电阻应变式传感器是利用电阻应变片将应变转换为电阻变化的传感器,传感器由在弹性元件上粘贴电阻应变敏感元件构成。当被测物理量作用在弹性元件上时,弹性元件的变形引起应变敏感元件的阻值变化,通过转换电路将其转变成电量输出,电量变化的大小反映了被测物理量的大小。它的特点是:精度高、易加工、结构简单紧凑、抗偏载能力强、固有频率高,其外形结构如图3.2所示。

  图3.2

  其应变式力传感器的受力工作原理如图3.3所示。

  图3.3

  将应变片粘贴到受力的力敏型弹性元件上,当弹性元件受力产生变形时,应变片产生相应的应变,转化成电阻变化。将应变片接成如图3.4所示的电桥,力引起的电阻变化将转换为测量电路的电压变化,通过测量输出电压的数值,再通过换算即可得到所测量物体的重量。

  图3.4

  电桥的四个臂上接工作应变片,都参与机械变形,同处一个温度场,温度影响相互抵消,电压输出灵敏度高。平行梁式称重传感器使用时要按悬臂梁方式安装,传感器的变形量是很微小的,在安装、使用过程中要特别注意,不要超载。如果在外力撤除后不能恢复原形状,发生塑性变形,则传感器就损坏了。传感器有四根线连接外电路,红线为电源正极输入,黑线为电源负极输入,白线为信号输出1,蓝(或绿)线为信号输出2。为保证精度准确,一般不要随意调整线长。

  4.3AD转换模块

  AD转换芯片使用HX711专业称重芯片,该芯片与后端MCU芯片的接口和编程非常简单,所有控制信号由管脚驱动,无需对芯片内部的寄存器编程。输入选择开关可任意选取通道A或通道B,与其内部的低噪声可编程放大器相连。通道A的可编程增益为128或64,对应的满额度差分输入信号幅值分别为+20mV或+40mV。通道B则为固定的32增益,用于系统参数检测。芯片内提供的稳压电源可以直接向外部传感器和芯片内的A/D转换器提供电源,系统板上无需另外的模拟电源。芯片内的时钟振荡器不需要任何外接器件,上电自动复位功能简化了开机的初始化过程。

  HX711的芯片功能介绍,该芯片有两路可选择差分输入,片内低噪声可编程放大器,可选增益为128。同时稳压电路可直接向外部传感器和芯片内AD转换器提供电源片内时钟振荡器无需任何外接器件,必要时也可使用外接晶振或时钟。选用上电自动复位电路简单的数字控制和串口通讯。所有控制由管脚输入,芯片内寄存器无需编程可选择10Hz或80Hz的输出数据速率,同步抑制50Hz和60Hz的电源干扰耗电量。

  其芯片管脚图如图3.5所示。

  图3.5

  各引脚功能如下:

  1、VSUP:电源稳压电路供电电源:2.6~5.5V(不用稳压电路时AVDD)。

  2、BASB:模拟输出稳压电路控制输出(不用稳压电路时为无连接)。

  3、AVDD:电源模拟电源:2.6~5.5V

  4、VFB:模拟输入稳压电路控制输入(不用稳压电路时应接地)。

  5、AGND:地模拟地。

  6、VBG:模拟输出参考电源输出。

  7、INA-:模拟输入通道A负输入端。

  8、INA+:模拟输入通道A正输入端。

  9、INB-:模拟输入通道B负输入端。

  10、INB+:模拟输入通道B正输入端。

  11、PDSCK:数字输入断电控制(高电平有效)和串口时钟输入。

  12、DOUT:数字输出串口数据输出。

  13、X0:数字输入输出晶振输入(不用晶振时为无连接)。

  14、XI:数字输入外部时钟或品振输入,O:使用片内振荡器。

  15、RATE:数字输入输出数据速添控制,0:10Hz;1:80Hz

  16、DVDD:电源数字电源:2.6~5.5V

  HX711仿真图如3.6所示。

  图3.6

  4.4语音播报模块

  本设计采用JQ6500语音芯片,JQ6500是专门为语音功能所设计的芯片,具有低成本,使用稳定,功能强大等优点,支持所有比特率11172-3和ISO13813-3 layer3的音频解码,支持Normal、Jazz、Classic、Pop、Rock等音效。

  JQ6500的功能介绍,具有24位DAC输出,动态范围支持90dB,信噪比支持85dB,完全支持FAT16、FAT32文件系统,最大支持32G的TF卡,支持32G的U盘、64M字节的NORFLASH;有多种控制模式,串口模式、AD按键控制模式,具有广播语音插播功能,可以暂停正在播放的背景音乐,可以将音频数据按文件夹排序,最多支持100个文件夹,每个文件夹最多可以分配1000首歌曲,30级音量可调,10级EQ可调;可以通过单片机串口进行控制播放指定的音乐。

  其管脚图如图3.7所示:

  图3.7

  各引脚功能如下:

  1、K1:对地触发播放第1段音频。

  2、K2:对地触发播放第2段音频。

  3、K3:对地触发播放第3段音频。

  4、K4:对地触发播放第4段音频。

  5、K5:对地触发播放第5段音频。

  6、SGND:电源地。

  7、ADKEY:AD口。

  8、BUSY:播放指示灯,有音频输出时高,无音频输出高。

  9、RX:UART串行数据输入。

  10、TX:UART串行数据输出。

  11、GND:电源地。

  12、DC-5V:模块电源输入,不可以超过5.2V。

  13、ADC_R:音频输出右声道,驱动耳机、功放。

  14、ADC_l:音频输出左声道,驱动耳机、功放。

  15、SPK+:喇叭+

  16、SPK-:喇叭-

  4.5数据显示模块

  数据显示模块使用LCD1602液晶显示器,LCD1602是一种专门用来显示字母、数字、符号等的点阵型液晶模块。显示质量高,数字式接口,体积小、重量轻,功耗低,容易开发和使用。

  其LCD1602管脚图如3.8所示。

  图3.8

  各引脚接口说明如下表所示:

  编号符号引脚说明编号符号引脚说明

  1 VSS电源地9 D2数据

  2 VDD电源正极10 D3数据

  3 VL液晶显示偏压11 D4数据

  4 RS数据/命令选择12 D5数据

  5 R/W读/写选择13 D6数据

  6 E使能信号14 D7数据

  7 D0数据15 BLA背光源正极

  8 D1数据16 BLK背光源负极

  第1脚:接地

  第2脚:接5V。

  第3脚:VL为液晶显示器对比度调整端

  第4脚:RS为寄存器选择

  第5脚:R/W为读写信号线

  第6脚:E端为使能端

  第7~14脚:D0~D7数据线。

  第15脚:背光源的正极。

  第16脚:背光源的负极。

  1602LCD的指令说明及时序如下表所示:

  序号指令RS R/W D7 D6 D5 D4 D3 D2 D1 D0

  1清显示0 0 0 0 0 0 0 0 0 1

  2光标返回0 0 0 0 0 0 0 0 1*

  3输入模式0 0 0 0 0 0 0 1 I/D S

  4显示开/关控制0 0 0 0 0 0 1 D C B

  5字符移位0 0 0 0 0 1 S/C R/L**

  6置功能0 0 0 0 1 DL N F**

  7置字符发生存贮器的地址0 0 0 1字符发生存贮器地址

  8置数据存贮器的地址0 0 1显示数据存贮器地址

  9读忙标志或地址0 1 BF计数器地址

  10写数据到CGRAM或DDRAM)1 0要写的数据内容

  11从CGRAM或DDRAM读数1 1读出的数据内容

  5软件设计

  在单片机设计中,可以使用C语言和汇编语言。由于C语言通俗易懂,移植性好,所以本次设计使用C语言来设计程序。

  5.1系统的总体软件流程

  系统的软件部分采用C语言编程,总体软件框图如图4.1所示。系统上电开始工作后,首先进行一些变量定义、程序初始化等操作,之后程序将配置单片机内部的A/D转换器,并调用A/D转换子程序,启动转换。A/D转换启动后,程序将等待A/D转换结束,A/D转换结束后,程序将读入A/D转换结果。然后系统将扫描键盘,判断确认称重键是否按下,若此按键不按下,系统将一直循环启动A/D转换,等待A/D转换结束并读取转换结果。不断更新称重数据,直到使用者按下称重确认键为止。计算结束后,软件将称得的重量值送到LCD1602,将以上数值显示出来。之后程序将对P3.7口的电平高低状态,根据P3.7口的电平高低状态不同分为两种情况执行。

  当P3.7口为高电平时,表示系统进入的是称重工作模式。此时,按下报数按键,表示确认此次称重,这时系统将启动HX711,并根据显示的重量,读出各位数据对应地址存储的语音。组合成重量的语音,通过扬声器向外播放。之后,系统将判断此次称重有没有变化,若这些数值发生变化,将再次读出新的称重值。本次称重过程结束后,软件返回重新启动A/D转换,重复上述过程。开始下一称重计算过程。

  当P3.7口为低电平时,表示系统进入语音工作模式。系统等待语音录入键按下,当语音录入键按下时,HX711将上电、启动。通过按键键值的不同,系统将录入各段语音,包括0、1、2……9,等。录音完成按键按下后,HX711将掉电、停止工作。随后程序将根据音量增减按键的调整修改HX711录音、放音音量的强度。

  图4.1

  5.2系统子程序设计

  系统子程序主要包括AD转换启动及数据读取程序设计、液晶显示程序设

  计。

  5.2.1 A/D转换程序设计

  AD转换子程序主要是指在系统开始运行时,把称重传感器传递过来的模拟

  信号转换成数字信号并传递到单片机所涉及到的程序设计,如图4.2所示。

  图4.2

  5.2.2液晶显示模块

  液晶显示模块的主要作用是进行人机交互,可以将称重数值统一显示出来,方便人们进行观察判断。液晶显示模块是体重测量系统中不可或缺的一部分。如图4.3为液晶显示的流程图:

  图4.3

  6仿真调试

  6.1调试过程

  软件模块本文主要应用Keil软件进行编程,编程采用模块化结构,先易后

  难,逐步实现相应的功能。软件程序的调试,我们主要结合硬件仿真图来进行。

  具体调试步骤有:

  (1)AD转换程序的调试,双精度的电子称设计主要基于两款不同的AD转

  换芯片,一个是8位的AD,一个是十二位的AD,因此在进行AD转换采集程序调

  试时,不仅要能够实现参数的采集,还需要考虑相应的压力测量范围,使两种精

  度范围不会产生冲突,程序调试时也主要围绕这样的思路进行,结合硬件仿真图,

  先调试8位AD的采集转换,能够正常工作后再进行12位的AD转换,最后进行

  两个程序的整合,实现不同压力段的测量。

  (2)显示程序的调试,基于1602液晶的显示程序是软件程序的另一个大模

  块,128*64的液晶模块能够支持4*8的汉字显示,能够十分方便的显示电子称

  的输入输出参数,但1602仿真模块并没有相应的汉字库和字符库,因此在编程

  时不得不自己编写字库,然后进行调用,这块是比较难的,本文在调试时,完成

  的思路也是从小到大,先实现液晶的初步显示,然后结合采集程序,逐步加入显

  示的汉字和字符,最终完成设计功能。

  6.2故障分析

  (1)硬件仿真图完成后,无法进行运作;

  (2)软件程序显示有错误,无法完成编译。

  6.3解决方案

  (1)由于硬件仿真中没有语音仿真元件和压力传感器元件,因此在制作过程

  中,语音模块用代表有控制命令发出的元件代替,用电压的变化代替压力传感器。在硬件仿真图完成后,出现了无法进行运作的故障,在经过仔细的排查后,发现是由于线路连接发生错误导致的,在经过修改线路之后,仿真进行运作,成功完成仿真。

  (2)软件编写完成之后,出现了程序无法正常编译,在经过仔仔细细的检查,

  并根据系统提示,逐步完善错误,最后完成编译,完成了运行。