电子秤的设计.pdf
张家界航空工业职业技术学院毕业设计说明书2摘摘要要随着科学技术的不断发展带动着电子行业的地位越来越重,现在电子产品几乎在社会的各个领域都可以见到。这些技术的发展有效的带动着社会生产力的发展和信息化的提高,同时电子产品也越来越智能。电子秤作为将检测与转换技术、计算机技术、信息处理、数据处理等技术综合一体的现代新型称重仪器。它与我们日常生活紧密结合息息相关,才能满足并解决现实生活中提出的快速、准确、连续、自动称量要求,同时有效地消除人为误差,使之更符合法制计量管理和工业生产过程控制的应用要求。电子称主要以单片机作为中心控制单元,通过称重传感器由模数转换器将重量模拟信号转换成数字信号,在配以键盘、显示电路及强大软件来组成。电子称不但计量准确、快速方便,更重要的自动称重并将重量信息直观的显示,对人们生活的影响越来越大,广受欢迎。本系统的设计主要从硬件电路设计,软件编程调试进行详细阐述。硬件电路主要是基于单片机 STC89C52 为核心的控制单元实现数据的处理,采用 10KG 应变式压力传感器采集重量这个模拟量然后输出到 AD 转换芯片 HX711 进行转换成数字量,转换后的数据送到单片机进行处理显示,数据显示由 LCD12864 液晶实现,液晶显示效果稳定无闪烁。系统并备有矩阵键盘,用户可以通过矩阵键盘输入物品的价格,系统可实时根际重量和单价计算出总价并实时显示。为了防止出现应变式压力传感器长时间过载负重系统添加了超重提示机制,当系统称重重量超过量程 10KG 时系统会发出提示用户超重,需减轻重量在称重。关键词:应变式压力传感器;HX711 模数转换;STC89C52 单片机张家界航空工业职业技术学院毕业设计说明书3目目录录摘要.2第 1 章 引言.51.1 设计概述.51.2 设计目标与意义.51.3 章节安排.6第 2 章 第二章方案论证与选型.72.1 设计任务分析.72.2 方案论证与选择.72.2.1 主控芯片的选择.72.2.2 显示器件的选择.82.2.3 称重传感器的选择.82.2.4 AD 转换芯片选择.92.2.5 人机交互输入器件的选择.92.3 方案确定.10第 3 章 硬件电路设计.113.1 原理分析.113.2 子电路.113.3 STC89C52 单片机系统设计.113.4 STC89C52 单片机的最小系统.123.5 LCD12864 液晶显示电路.143.6 LCD12864 的工作原理.153.7 AD 转换芯片介绍.163.8 矩阵键盘.183.9 原理图.193.10 布局布线.20第 4 章 软件设计.214.1 软件总体设计.214.2 软件模块说明LCD12864 显示函数的设计.214.3 LCD12864 子程序.234.4 HX711 数据采集函数的设计.244.5 HX711 子程序.264.6 阵键盘检测函数的说明.264.7 矩阵键盘检测子程序.284.8 小结.29张家界航空工业职业技术学院毕业设计说明书4第 5 章 产品调试.305.1 调试的设备.305.2 元件的安装焊接要求与系统调试.305.3 焊接注意事项.315.4 调试步骤.315.5 故障分析.325.5.1 LCD12864 显示出现花屏.325.5.2 矩阵单个键盘的按键失灵.32第 6 章 产品使用说明.336.1 功能描述.336.2 使用说明.33第 7 章 心得体会.34致谢.35参 考 文 献.36附 录.37附件一:总原理图.37附件二:元件清单.38附件三:安装接线图.39附件四:主程序框图.40附件五:主程序清单.41附件六:装配图.53张家界航空工业职业技术学院毕业设计说明书5第第 1 1 章章引言引言1.11.1设计概述设计概述在我们生活中经常都需要测量物体的重量,我们对其要求操作方在我们生活中经常都需要测量物体的重量,于是就用到秤,但是随着社会的进步、科学的发展,我们对其要求操作方便、易于识别。随着计量技术和电子技术的发展,传统纯机械结构的杆秤、台秤、磅秤等称量装置逐步被淘汰,电子称量装置电子秤、电子天平等以其准确、快速、方便、显示直观等诸多优点而受到人们的青睐。电子秤向提高精度和降低成本方向发展的趋势引起了对低成本、高性能模拟信号处理器件需求的增加。通过分析近年来电子衡器产品的发展情况及国内外市场的需求,电子衡器总的发展趋势是小型化、模块化、集成化、智能化;其技术性能趋向是速率高、准确度高、稳定性高、可靠性高;其功能趋向是称重计量的控制信息和非控制信息并重的“智能化”功能;其应用性能趋向于综合性和组合性。1.21.2设计目标与意义设计目标与意义称重技术自古以来就被人们所重视,作为一种计量手段,广泛应用于工农业、科研、交通、内外贸易等各个领域,与人民的生活紧密相连。电子秤是电子衡器中的一种,衡器是国家法定计量器具,是国计民生、国防建设、科学研究、内外贸易不可缺少的计量设备,衡器产品技术水平的高低,将直接影响各行各业的现代化水平和社会经济效益的提高。称重装置不仅是提供重量数据的单体仪表,而且作为工业控制系统和商业管理系统的一个组成部分,推进了工业生产的自动化和管理的现代化,它起到了缩短作业时间、改善操作条件、降低能源和材料的消耗、提高产品质量以及加强企业管理、改善经营管理等多方面的作用。称重装置的应用已遍及到国民经济各领域,取得了显著的经济效益。电子秤是称重技术中的一种新型仪表,广泛应用于各种场合。电子秤与机械秤比较有体积小、重量轻、结构简单、价格低、实用价值强、维护方便等特点,可在各种环境工作,重量信号可远传,易于实现重量显示数字化,易于与计算机联网,实现生产过程自动化,提高劳动生产率。例如标签秤在超市中的应用已经是耳闻目睹的了。一张小小的标签包含着:品名、价格、重量等,一一列表在这小小的电子标签上。标签机的使用大大加快了销售速度,也方便了顾客。顶尖条码标签称有着许多卓越的特点,以太网功能使管理更加方便。因此,称重技术的研究和衡器工业的发展各国都非常重视。50 年代中期电子技术的渗入推动了衡器制造业的发展。60 年代初期出张家界航空工业职业技术学院毕业设计说明书6现机电结合式电子衡器以来,随着时代科技的迅猛发展,微电子学和计算机等现代电子技术的成就给传统的电子测量与仪器带来了巨大的冲击和革命性的影响。经过 40 多年的不断改进与完善,衡器技术也在不断进步和提高。从世界水平看,衡器技术已经经历了四个阶段,从传统的全部由机械元器件组成的机械称到用电子线路代替部分机械元器件的机电结合秤,再从集成电路式到目前的单片机系统设计的电子计价秤。我国电子衡器从最初的机电结合型发展到现在的全电子型和数字智能型。现今电子衡器制造技术及应用得到了新发展:电子称重技术从静态称重向动态称重发展;计量方法从模拟测量向数字测量发展;测量特点从单参数测量向多参数测量发展。常规的测试仪器仪表和控制装置被更先进的智能仪器所取代,使得传统的电子测量仪器在远离、功能、精度及自动化水平定方面发生了巨大变化,并相应的出现了各种各样的智能仪器控制系统,使得科学实验和应用工程的自动化程度得以显著提高。1.31.3章节安排章节安排第 1 章:简单介绍了本课题电子称的研究背景、研究目的、意义及国内的研究状况。第 2 章:系统方案设计,本章主要内容是电子称的方案设计,首先是对整体的方案进行选择与设计,再针对各个模块(传感器、放大模块、信号转换模块、人机交界模块)进行具体的方案论证及设计。第 3 章:系统硬件设计,在选定各个模块的方案中,对各方案的用到的主要芯片进行简单功能介绍及应用,并且给出了本次电路设计的具体电路图。第 4 章:系统软件设计,本章主要是介绍电子称的软件设计,给出了本次设计的主程序流程图及一些模块的子程序。最后,对本次的研究课题的主要工作及结果做出了总结与讨论。张家界航空工业职业技术学院毕业设计说明书7第第 2 2 章章第二章方案论证与选型第二章方案论证与选型2.12.1设计任务分析设计任务分析本文研究的主要内容首先是通过压力传感器采集到被测物体的重量并将其转换成电压信号。输出电压信号通常很小,需要通过前端信号处理电路进行准确的线性放大。放大后的模拟电压信号经 A/D 转换电路转换成数字量被送入到主控电路的单片机中,再经过单片机控制译码显示器,从而显示出被测物体的重量。按照设计的基本要求,系统可分为三大模块,数据采集模块、控制器模块、人机交互界面模块。其中数据采集模块由压力传感器、信号的前级处理和 A/D 转换部分组成。转换后的数字信号送给控制器处理,由控制器完成对该数字量的处理,驱动显示模块完成人机间的信息交换。用户可以通过键盘进行输入单价系统会根据单价和重量自动计算出总价,还可以进行去皮的功能。如果称重的重量超过量程 10Kg 显示器会显示“超重”字样,并且板子上指示灯会亮起进行提示。2.22.2方案论证与选择方案论证与选择本章节主要介绍系统所用到的器件的选择与对比,进行综合的对比考虑选择出最适合本设计的一组方案。在硬件电路的搭建之前必须明确设计的方案,通过各个模块之间进行比较选择出最适合本设计的硬件,以发挥器件的最大功效。2.2.1 主控芯片的选择方案一:采用 STC89C52 单片机作为主控芯片。STC89C52 是宏晶科技公司生产的一款低功耗、高性能的八位 CMOS 微处理器,片内具有 8k 在线编程 Flash存储器。STC89C52 单片机的内核采用的是 MCS-51 内核,指令完全兼容 MCS-51,但是该单片机越做了升级使得芯片具有很多传统的 51 单片机不具备的功能,例如该芯片还有 4K 的 EEPROM 存储,在需要使用到掉电存储数据的时候就可以直接使用单片机内部的存储,不在需要在外接存储芯片进行存储。STC89C52 单片机具有的开发简单、可在线编程下载、成本低是非常不错的选择。方案二:采用 MSP430 单片机作为主控芯片。MSP430 单片机称之为混合信号处理器,它可以将多个不同功能的模拟电路、数字电路模块和微处理器集成在一个芯片上,MSP430 系列单片机是美国德州仪器(TI)1996 年开始推向市场的一种16 位超低功耗、具有精简指令集(RISC)的混合信号处理器(Mixed Signal张家界航空工业职业技术学院毕业设计说明书8Processor)。该系列单片机多应用于需要电池供电的便携式仪器仪表中。而却开发难度相对比较大、价格昂贵。所以在一些简单的设计中不宜采用。方案三:采用 PIC16F877A 单片机作为主控芯片。PIC16F877A 是由 Microchip公司所生产开发的新产品,属于 PICmicro 系统 8 位单片机微机,具有 Flash 程序内存功能,可反复擦写程序。但是开发成本高,难度相对大。2.2.2 显示器件的选择方案一:采用 LED 数码管动态扫描显示。LED 数码管的价格适中,对于显示数字或者简单的字母会比较合适。但是采用动态扫描法与单片机连接时占用 CPU的 I/O 口较多,并且由于单片机的 IO 口输出电流不够,所以需要一个驱动电路,通过驱动电路放大电流后控制数码管,还有就是采用数码管进行显示的话显示的内容多了对于电路的焊接机会增大难得容易焊接错误。方案二:采用 LCD1602 液晶显示屏。LCD1602 液晶又叫 LCD1602 字符型液晶。液晶显示功能强大,可以同时显示出 16*2 即 32 个字符,可包括数字、字母、符号、或者自定义字符。LCD1602 液晶显示器中的每一个字符都是由 5*7 的点阵组成。LCD1602 采用并行数据传输也可以采用串行数据传输,控制简单,和市面上的大多基于 HD44780 液晶的控制原理完全相同。方案三:采用 LCD12864 液晶显示屏。带中文字库的 128X64 是一种具有 4位/8 位并行、2 线或 3 线串行多种接口方式,其显示分辨率为 12864,内置 8192个 16*16 点汉字,和 128 个 16*8 点 ASCII 字符集。利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示 84 行1616 点阵的汉字,也可完成图形显示,低电压低功耗是其又一显著特点。虽然 LCD12864 液晶显示的功能强大,但是显示的内容偏大造成了,显示空间的浪费,再来该液晶的成本高。2.2.3 称重传感器的选择方案一:压电传感器是一种典型的有源传感器,又称自发电式传感器。其工作原理是基于某些材料受力后在其相应的特定表面产生电荷的压电效应。压电传感器体积小、重量轻、结构简单、工作可靠,适用于动态力学量的测量,不适合测频率太低的被测量,更不能测静态量。目前多用于加速度和动态力或压力的测量。压电器件的弱点:高内阻、小功率。功率小,输出的能量微弱,电缆的分布电容及噪声干扰影响输出特性,这对外接电路要求很高。方案二:电阻应变式传感器是一种利用电阻应变效应,将各种力学量转换为电信号的结构型传感器。电阻应变片式电阻应变式传感器的核心元件,其工作原张家界航空工业职业技术学院毕业设计说明书9理是基于材料的电阻应变效应,电阻应变片即可单独作为传感器使用,又能作为敏感元件结合弹性元件构成力学量传感器。导体的电阻随着机械变形而发生变化的现象叫做电阻应变效应。电阻应变片把机械应变信号转换为R/R 后,由于应变量及相应电阻变化一般都很微小,难以直接精确测量,且不便处理。因此,要采用转换电路把应变片的R/R 变化转换成电压或电流变化。其转换电路常用测量电桥。直流电桥的特点是信号不会受各元件和导线的分布电感及电容的影响,抗干扰能力强,但因机械应变的输出信号小,要求用高增益和高稳定性的放大器放大。应变片式传感器有如下特点:1.应用和测量范围广,应变片可制成各种机械量传感器。2.分辨力和灵敏度高,精度较高。3.结构轻小,对试件影响小,对复杂环境适应性强,可在高温、高压、强磁场等特殊环境中使用,频率响应好。4.商品化,使用方便,便于实现远距离、自动化测量。通过对压力传感器与电阻应变式传感器比较分析,最终选择了第二种方案。题目要求称重范围 010Kg,考虑到秤台自重、振动和冲击分量,还要避免超重损坏传感器,所以传感器量程必须大于额定称重 10Kg。我们选择的是电阻应变片压力传感器,量程为 10Kg。2.2.4 AD 转换芯片选择方案一:选择 ADC0832 作为 AD 转换器件。ADC0832 是一种八位的 AD 转换芯片,具有两个 AD 转换通道,转换时间 32us,使用简单。但是该 AD 芯片分辨率只有 8 位,对于该设计要求不能满足。方案二:HX711 是一款专为高精度电子秤而设计的 24 位 A/D 转换器芯片。与同类型其它芯片相比,该芯片集成了包括稳压电源、片内时钟振荡器等其它同类型芯片所需要的外围电路,具有集成度高、响应速度快、抗干扰性强等优点。降低了电子秤的整机成本,提高了整机的性能和可靠性。该芯片与后端 MCU 芯片的接口和编程非常简单,所有控制信号由管脚驱动,无需对芯片内部的寄存器编程。输入选择开关可任意选取通道 A 或通道 B,与其内部的低噪声可编程放大器相连。2.2.5 人机交互输入器件的选择方案一:采用独立的按键作为输入设备。独立按键每一个按键对应于一个功能,并且每一个按键都需要占用一个 I/O 口,这样有多少个按键单片机每次都需张家界航空工业职业技术学院毕业设计说明书10要检测多少次。这样如果需要的按键数目比较大的时候就会占用很多的单片机I/O,导致别的器件都没办法连接,并且按键的反应速度也会降低。方案二:采用矩阵键盘作为输入设备。矩阵键盘通过将按键的两端分别接到行线和列线上,然后将每一条行线和列线连接到单片机上,通过程序算法进行读取按下的是哪一个按键按下。这样做虽然增加了程序算法的难度,但是节约了单片机 I/O 口的使用。2.32.3方案确定方案确定通过上述对各个模块介绍,我们最终选择了 STC89C52 作为本设计的主控芯片因为考虑到资源的合理利用和成本以及开发的难易程度最终决定,采用应变式压力传感器因通过对压力传感器与电阻应变式传感器比较分析,题目要求称重范围 010Kg,考虑到秤台自重、振动和冲击分量,还要避免超重损坏传感器,所以传感器量程必须大于额定称重 10Kg。我们选择的是电阻应变片压力传感器,量程为 10Kg。选择 HX711 模块进行采集重量信息该芯片集成了包括稳压电源、片内时钟振荡器等其它同类型芯片所需要的外围电路,具有集成度高、响应速度快、抗干扰性强等优点。降低了电子秤的整机成本,提高了整机的性能和可靠性。该芯片与后端 MCU 芯片的接口和编程非常简单,所有控制信号由管脚驱动,无需对芯片内部的寄存器编程。通过转换成实际重量后由 LCD12864 实时显示综合上述的描述,最终根据本设计显示内容比较大,所以选用 LCD12864 显示。还添加了 4*4矩阵键盘方便使用操作。张家界航空工业职业技术学院毕业设计说明书11第第 3 3 章章硬件电路设计硬件电路设计3.13.1原理分析原理分析本设计的具体的系统方案如图 3.1.1 所示。图 3.1.1 系统方案3.23.2子电路子电路本章节主要介绍本设计中各个部分电路的设计原理。通过各个模块的功能描述了解其工作原理以及在设计的中作用。3.33.3STC89C52STC89C52 单片机系统设计单片机系统设计STC89C52 是 STC 公司生产的一种低功耗、高性能 CMOS8 位微控制器,具有 8K在系统可编程 Flash 存储器。STC89C52 使用经典的 MCS-51 内核,但做了很多的改进使得芯片具有传统 51 单片机不具备的功能。在单芯片上,拥有灵巧的 8 位CPU 和在系统可编程 Flash,使得 STC89C52 为众多嵌入式控制应用系统提供高灵复位电路晶振电路电源电路4*4 矩 阵 键盘HX711 转换芯片超重 LED 提示灯LED12864显示电路10Kg电子应变式压力传感器STC89C52 主控芯片蜂鸣器超重报警电路张家界航空工业职业技术学院毕业设计说明书12活、非常有效的解决方案。具有以下标准功能:8k 字节 Flash,512 字节 RAM,32 位 I/O 口线,看门狗定时器,内置 4KB EEPROM,MAX810 复位电路,3 个 16位定时器/计数器,4 个外部中断,一个 7 向量 4 级中断结构(兼容传统 51 的 5向量 2 级中断结构),全双工串行口。另外 STC89X52 可降至 0Hz 静态逻辑操作,支持 2 种软件可选择节电模式。空闲模式下,CPU 停止工作,允许 RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM 内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35MHz,6T/12T 可选。3.43.4STC89C52STC89C52 单片机的最小系统单片机的最小系统单片机最小系统说的通熟易懂的话就是以最少的元器件组成能让单片机工作起来的系统,接下来开始介绍 51 单片机最小系统必备的器件及其作用。首先电源这对于一个电子产品的话是必不可少,它提供能源给系统运作,在本设计中由于51单片机的工作电压在4.55.5V之间都可以正常工作所以我们采用了 USB 电源线连接手机充电器插头或者 5V 的移动电源给系统进行供电。其次晶振电路,XTAL1 和 XTAL2 是独立的输入和输出反相放大器,它们可以被配置为使用石英晶振的片内振荡器,或者是器件直接由外部时钟驱动。图3.4.1 中采用的是内时钟模式,即采用利用芯片内部的振荡电路,在 XTAL1、XTAL2的引脚上外接定时元件(一个石英晶体和两个电容),内部振荡器便能产生自激振荡。一般来说晶振可以在 1.212MHz 之间任选,甚至可以达到 24MHz 或者更高,但是频率越高功耗也就越大。在本实验套件中采用的 12M 的石英晶振。和晶振并联的两个电容的大小对振荡频率有微小影响,可以起到频率微调作用。当采用石英晶振时,电容可以在 20 40pF 之间选择(本设计使用 30pF);当采用陶瓷谐振器件时,电容要适当地增大一些,在 3050pF 之间。通常选取 30pF 的陶瓷电容就可以了。张家界航空工业职业技术学院毕业设计说明书13图 3.4.1 晶振电路原理再来就是复位电路,复位电路分为:上电自动复位和开关复位。图 3.4.2中所示的复位电路就包括了这两种复位方式。上电瞬间,电容两端电压不能突变,此时电容的负极和 RESET相连,电压全部加在了电阻上,RESET的输入为高,芯片被复位。随之+5V 电源给电容充电,电阻上的电压逐渐减小,最后约等于 0,芯片正常工作。并联在电容的两端为复位按键,当复位按键没有被按下的时候电路实现上电复位,在芯片正常工作后,通过按下按键使 RST 管脚出现高电平达到手动复位的效果。一般来说,只要 RST管脚上保持 10ms以上的高电平,就能使单片机有效的复位。图 3.4.3 中所示的复位电阻和电容为经典值,实际制作是可以用同一数量级的电阻和电容代替,读者也可自行计算 RC充电时间或在工作环境实际测量,以确保单片机的复位电路可靠。图 3.4.2 复位电路张家界航空工业职业技术学院毕业设计说明书14图 3.4.3 STC89C52 单片机最小系统3.53.5LCD12864LCD12864 液晶显示电路液晶显示电路带中文字库的 128X64 是一种具有 4 位/8 位并行、2 线或 3 线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为 12864,内置 8192 个 16*16 点汉字,和 128 个 16*8 点 ASCII 字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示 84 行 1616 点阵的汉字,也可完成图形显示。低电压低功耗是其又一显著特点。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。LCD12864 原理图如图 3.5 所示。张家界航空工业职业技术学院毕业设计说明书15图 3.5LCD12864 原理图3.63.6LCD12864LCD12864 的工作原理的工作原理通常所说的 LCD12864 显示块是所说的点阵液晶显示模块,就是由 128*64个液晶显示点组成的一个 128 列*64 行的阵列,所以也就叫成了 12864。每个显示点都对应着有一位二进制数,0 表示灭,1 表示亮。存储这些点阵信息的 RAM被称为显示数据存储器。如果要显示某个图形或汉字就是将相应的点阵信息写入到对应的存储单元中。图形或汉字的点阵信息是由自己设计,这时候问题的关键是显示点在液晶屏上的位置与其在存储器中的地址之间的关系。显示点在 64*64 液晶屏上的位置由列号(line,063)与行号(line,063)确定。512*8 bits RAM 中某个存储单元的地址由页地址(Xpage,07)和列地址(Yaddress,063)确定。每个存储单元存储 8 个液晶点的显示信息。由于多数液晶显示模块的驱动电路是由一片行驱动器和两片列驱动器构成,所以12864 液晶屏实际上是由左右两块独立的 64*64 液晶屏拼接而成,每半屏有一个512*8 bits 显示数据 RAM。左右半屏驱动电路及存储器分别由片选信号 CS1 和CS2 选择。(少数厂商为了简化用户设计,在模块中增加译码电路,使得 128*64液晶屏就是一个整屏,只需一个片选信号。)如如果点亮 12864 的屏中(20,30)位置上的液晶点,因列地址 30 小于 64,张家界航空工业职业技术学院毕业设计说明书16该点在左半屏第 29 列,所以 CS1 有效;行地址 20 除以 8 取整得 2,取余得 4,该点在 RAM 中页地址为 2,在字节中的序号为 4;所以将二进制数据 00010000(也可能是 00001000,高低顺序取决于制造商)写入 Xpage=2,Yaddress=29 的存储单元中即点亮(20,30)上的液晶点。这是为了为了使液晶点位置信息与存储地址的对应关系更直观关,将 64*64液晶屏从上至下 8 等分为 8 个显示块,每块包括 8 行*64 列个点阵。每列中的 8行点阵信息构成一个 8bits 二进制数,存储在一个存储单元中。(需要注意:二进制的高低有效位顺序与行号对应关系因不同商家而不同)存放一个显示块的RAM 区称为存储页。即 64*64 液晶屏的点阵信息存储在 8 个存储页中,每页 64个字节,每个字节存储一列(8 行)点阵信息。因此存储单元地址包括列地址(Yaddress,063)和页地址(Xpage,07)。LCD12864 操作时序图如图 3.6所示。图 3.6.1 lcd12864 时序图3.73.7ADAD 转换芯片介绍转换芯片介绍HX711 是一款专为高精度电子秤而设计的 24 位 A/D 转换器芯片。与同类型其它芯片相比,该芯片集成了包括稳压电源、片内时钟振荡器等其它同类型芯片所需要的外围电路,具有集成度高、响应速度快、抗干扰性强等优点。降低了电子秤的整机成本,提高了整机的性能和可靠性。该芯片与后端 MCU 芯片的接口和编程非常简单,所有控制信号由管脚驱动,无需对芯片内部的寄存器编程。输张家界航空工业职业技术学院毕业设计说明书17入选择开关可任意选取通道 A 或通道 B,与其内部的低噪声可编程放大器相连。通道 A 的可编程增益为 128 或 64,对应的满额度差分输入信号幅值分别为20mV 或40mV。通道 B 则为固定的 64 增益,用于系统参数检测。芯片内提供的稳压电源可以直接向外部传感器和芯片内的 A/D 转换器提供电源,系统板上无需另外的模拟电源。芯片内的时钟振荡器不需要任何外接器件。上电自动复位功能简化了开机的初始化过程。芯片管脚图如图 3.7.1 所示。图 3.7.1 HX711 管脚定义电阻应变式压力传感器静态全桥如图 3.7.2 所示。张家界航空工业职业技术学院毕业设计说明书18图 3.7.2 电阻应变式压力传感器静态全桥3.83.8矩阵键盘矩阵键盘在操作中需要使用到比较多的按键的时候,为了减少单片机的 I/O 口占用,通常将按键排列成矩阵形式,这就是矩阵键盘。在矩阵键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。这样,一个端口(如 P3口)就可以构成 4*4=16 个按键,比之直接将端口线用于键盘多出了一倍,而且线数越多,区别越明显,比如再多加一条线就可以构成 20 键的键盘,而直接用端口线则只能多出一键(9 键)。由此可见,在需要的按键数目比较多时,采用矩阵法来作键盘是合理的。矩阵键盘电路图如图 3.8.1 所示。图 3.8.1 矩阵键盘电路图4*4 矩阵键盘的 16 个按键对应的功能表如 3.8.2 所示。78输入单价45去皮12合计.0确定图 3.8.2矩阵键盘对应功能表张家界航空工业职业技术学院毕业设计说明书19图 3.7 矩阵键盘电路图3.93.9原理图原理图答案见附件一张家界航空工业职业技术学院毕业设计说明书203.103.10布局布线布局布线PCB 板为单面板安全间距为 10mil;要求布线宽度 VCC 为 25-35mil,典型值 30mil;GND 为 35-45mil,典型值 40mil;其他为 15-25mil,典型值 20mil张家界航空工业职业技术学院毕业设计说明书21第第 4 4 章章软件设计软件设计4.14.1软件总体设计软件总体设计主函数 void main()是程序的入口函数,一个完整的程序必须要包含该函数。在该函数的开头一般都是先对单片机和一些外围器件需要进行初始化才能正常使用的器件进行初始化和重新赋值一些变量,初始化完后进去死循环,如果不进入死循环程序运行一次就会退出,如果加入死循环程序就会不断地进行循环达到实时检测执行的目的。在主程序的设计中需要注意的是主函数中不宜放过多的代码,具体的代码一般都是采用函数进行封装然后在主函数进行调用,这样也可以方便阅读修改。具体流程图见附录 4 所示。4.24.2软件模块说明软件模块说明LCD12864LCD12864 显示函数的设计显示函数的设计LCD12864 的显示需要严格的按照厂家的时序要求进行编程就可以完成显示。LCD12864 的液晶显示首先需要将需要显示地方的地址通过命令写入,然后将数据按顺序的进行写入即可。在写入地址后显示第一个内容后地址会自动加一。函数名 LCD12864_display_string(uchar x,uchar y,uchar*s),参数为x,y,*s,其中的 x,y 表示在液晶显示屏上的位置坐标,*s 是需要显示的字符数组。软件根据输入需要显示的位置坐标计算出地址。显示函数流程图 4.2.1所示。张家界航空工业职业技术学院毕业设计说明书22图 4.2.1 显示函数流程图开始判断是否第一行显示y=1?判断是否第三行显示y=3?判断是否第二行显示y=2?Add=0 x80+x;Add=0 x90+x;Add=0 x88+x;Add=0 x98+x;写出地址 add判断数据是否显示完成*S!=/0?写入*S 数据地址 S+返回yesyesyesNONONO是NO张家界航空工业职业技术学院毕业设计说明书234.34.3LCD12864LCD12864 子程序子程序void LCD12864_display_string(uchar x,uchar y,uchar*s)uchar add;if(y=1)add=0 x80+x;elseif(y=2)add=0 x90+x;elseif(y=3)add=0 x88+x;elseif(y=4)add=0 x98+x;write_com(add);while(*s!=0)write_data(*s);s+;LCD12864_delay(1);/void LCD12864_image3216(uchar x,uchar y,uchar code*pPicture)uchar add,i,j;if(y%2=1)add=0 x80;elseif(y%2=0)add=0 x90;张家界航空工业职业技术学院毕业设计说明书24write_com(0 x34);write_com(0 x36);for(i=0;i2)write_com(0 x88+x);elsewrite_com(0 x80+x);for(j=0;j2;j+)write_data(pPicturei*4+j*2);write_data(pPicturei*4+j*2+1);write_com(0 x30);4.44.4HX711HX711 数据采集函数的设计数据采集函数的设计HX711 的数据采集的准确性直接关系到本作品的精度,所以我们才用了进行多次的采集然后进行排序选择出中间的数值。采集开始先让 AD 使能将 SCK 拉低,然后等到数据口变为低电平表示转换成功,然后进行将数据读出,一个 24 位需要进行读取 24 次。读完后发送第 25 个脉冲,让下一次读取工作在 A 通道 128增益。具体流程图 4.2.2 所示。张家界航空工业职业技术学院毕业设计说明书25图 4.2.2HX711 采集数据程序开始拉低 SCK将数据口置高发送第 25 个脉 冲 使下 次为128的增益读取数据i+;发送账号判断是否转换完成 ADDO?判断数据是否未读完 i24返回数据YESYESNO张家界航空工业职业技术学院毕业设计说明书264.54.5HX711HX711 子程序子程序ulong ReadCount(void)unsigned long Count;unsigned char i;ii=0;ADSK=0;ADDO=1;Count=0;while(ADDO&ii10000)ii+;for(i=0;i24;i+)ADSK=1;Count=Count1;ADSK=0;if(ADDO)Count+;ADSK=1;Count=Count0 x800000;ADSK=0;return(Count);4.64.6阵键盘检测函数的阵键盘检测函数的说明说明具体的矩阵键盘在程序上的检测方法如图 4.2.3 所示(流程图中 Key 代表P3 口)。(1)先将键盘中的全部行线 P3.0P3.3 置低,然后通过检测列线 P3.5P3.7中是否有出现低电平的现象,如果有一列出现低电平,那么就证明那一列中的四个按键中有一个是被按下的。若没有列线中都没有出现低电平的现象,则没有按键按下。张家界航空工业职业技术学院毕业设计说明书27(2)在确定有按键被按键的时候,将进一步的确定具体为那一个按键按下。方法是:依次将四个行线 P3.0P3.3 置低电平,即在某一根行线为低电平时,其它行线仍然保持高电平状态。然后通过确认在某一根行线为低电平的时候如果在第一步中得出的列为低电平就能够判断该行线与第一步得出的列线相交的按键就是所按下的那个按键图 4.2.3 矩阵键盘检测流程图开始输出行线全为低电平 key=0 xf0:检测是否有按键按下 key&0 xf0!=0 xF0?延时消抖检测是否有按键按下key&0 xf0!=0 xF0?赋 行 扫 描 初 始 值rcode=0 xFE;判断是否还没检测完(rcode&0 x10)!=0?返回 0输 出 行 扫 描 码key-rcode;判断该行是否有按键按下(key&0 xF0)!=0 xF0行 扫 描 码 左 移 一 位rcode-(rcode1)|0 x01;等待按键释放返回按键值YESNONONOYESNOYES张家界航空工业职业技术学院毕业设计说明书284.74.7矩阵键盘检测子程序矩阵键盘检测子程序uchar keyscan(void)unsigned char rcode,ccode;Key=0 xF0;if(Key&0 xF0)!=0 xF0)delay();if(Key&0 xF0)!=0 xF0)rcode=0 xFE;while(rcode&0 x10)!=0)Key=rcode;if(Key&0 xF0)!=0 xF0)ccode=(Key&0 xF0)|0 x0F;do;while(Key&0 xF0)!=0 xF0);return jiema(rcode)+(ccode);elsercode=(rcode1)|0 x01;return 0 xff;#endif张家界航空工业职业技术学院毕业设计说明书294.84.8小结小结经过制作设计的这段时间的努力终于将本设计方案要求基本实现。由于时间、水平和经验有限,设计的作品还存在着一些的不足之处。对于这次设计来说既是一次机遇,又是一次挑战。在这次的设计过程中,本人学到了很多东西,通过自己的实践,增强了动手能力。通过实际工程的设计也使我了解到书本知识和实际应用的差别。在实际应用中遇到很多的问题,这都需要我对问题进行具体的分析,并一步一步地去解决它,在设计过程中有很多帮助我的同学,和老师我特别感谢他们没有他们的帮忙,我是没有那么轻易的完成。并且对以后的工作生活起到了很大的感悟,对以后面对困难和挑战有了很好的应对,会很好的完成任务,并且学习每一次学习的机会,动手的机会,来提高自己的水平和经验。张家界航空工业职业技术学院毕业设计说明书30第第 5 5 章章产品调试产品调试5.15.1调试的设备调试的设备调试安装设备使用的设备图 5.1.1图:5.1.1 调试设备5.25.2元件的安装元件的安装焊接焊接要求与要求与系统调试系统调试1.任何电子设备都离不开电子元器件的安装,在安装电子元器件的过程中,应根据相关的要求及注意事项对其进行操作。2.清洁引脚电子元器件在安装前,应先将引脚擦除干净,最好选用细砂布擦拭,这样就可以去除引脚表面的氧化层,以便在焊接时容易上锡。若是元器件的引脚已有镀层,可以根据使用情况不再进行清洁。固定元器件的机械器件在插装元器件前,应先将插装那些需要机械固定的元器件,如功率器件的散热片、支架、卡子等,然后再插装需要固定的元器件,在安装电子元器件时,不可以用手直接碰元器件引脚或印制板上的铜箔,按次序