基于单片机的电子秤设计HX711.docx

上传人:夺命阿水 文档编号:845517 上传时间:2023-12-24 格式:DOCX 页数:29 大小:149KB
返回 下载 相关 举报
基于单片机的电子秤设计HX711.docx_第1页
第1页 / 共29页
基于单片机的电子秤设计HX711.docx_第2页
第2页 / 共29页
基于单片机的电子秤设计HX711.docx_第3页
第3页 / 共29页
基于单片机的电子秤设计HX711.docx_第4页
第4页 / 共29页
基于单片机的电子秤设计HX711.docx_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《基于单片机的电子秤设计HX711.docx》由会员分享,可在线阅读,更多相关《基于单片机的电子秤设计HX711.docx(29页珍藏版)》请在课桌文档上搜索。

1、目录引言-1-第一章系统的组成及工作原理-11. 1系统的组成-1-1.2系统的工作原理-2-第二章系统硬件设计2-2. 1主控芯片STC89C52单片机根本系统-2-2. 1.1STC89C52单片机性能介绍-2-2. 1.2STC89C52单片机引脚功能-2-2. 1.3复位电路-3-2. 1.4晶振电路-4-2.2A/D转换芯片HX711接口电路的设计-4-2.2 .1HX711引脚功能-5-2.3 .2取711管脚说明-6-2.3压电传感器的设计-8-2. 3.1应变式电阻传感器-8-3. 3.2应变片式电阻传感器的结构和原理-9-4. 3.3全桥测量电路-10-2.4显示电路设计-1

2、0-2. 4.1LCD1602命令及时序-13-3. 5键盘输入-14-第三章系统软件设计15-4. 1C语言在单片机中的应用-15-3. 2系统主程序流程图-16-3. 3子程序设计-16-3. 3.1A/D数据采集子程序-16-3. 3.2显示子程序-16-3. 3.3键盘打描子程序-16-第四章系统的调试174. 1AD值反向转换重力值的参数计算-17-5. 2误差分析-17-总结18致谢19-参考文献-19-附录1系统原理图错误!未定义书签。附录2系统程序清单20-附录3实物图28-基于单片机的电子秤设计电子与信息工程学院电子信息工程专业2023级1班唐杰指导教师吕虹引言随着人们生活水

3、平的不断提高,商业水平越来越现代化,人们对商品的度量速度和精度也提出了新的要求。目前,商用电子计价秤的使用非常普及,逐渐会取代传统的杆秤和机械案秤。电子计价秤在秤台结构上有一个显著的特点:一个相当大的秤台,只在中间装置一个专门设计的传感器来承担物料的全部重量。为了满足电子秤的设计要求,本设计针对普通商业度量需要分析和设计。论述了系统的设计思想、方法及设计实施过程,详细分析了各个模块的选用、功能及实现方法,包括系统的硬件构成,传感器的选择,系统的运作流程图等,以及所用到的一些工具,工作环境。我们进行了各单元电路方案的比拟论证及确定,最终选取以STC89C52单片机为控制核心,传感器选用HL-8型

4、悬臂梁式电阻应变式传感器。该芯片集成了包括稳压电源、片内时钟振荡器等其它同类型芯片所需要的外围电路,具有集成度高、响应速度快、抗干扰性强等优点。降低了电子秤的整机本钱,提高了整机的性能和可靠性。该芯片与后端MClJ芯片的接口和编程非常简单,所有控制信号由管脚驱动,无需对芯片内部的存放器进行编程。第一章系统的组成及工作原理1.1 系统的组成本数字电子秤系统可分为单片机控制电路、A/D转换电路、传感器、LCD显示、矩阵键盘、蜂鸣器模块等几局部,其系统组成如图1-1所示。12系统的工作原理系统原理如图IT所示,系统通过传感器将压力这种物理量转化为电信号,即传感器内部的电阻应变片感应到压力后,电阻发生

5、微小变化,通过全桥测量电路将电阻的微小变化转化成电压的微小变化,HX711将信号调整到A/D能采集的范围,然后由A/D进行采集,接着把采集到的24位上下电平通过DOUT送到单片机进行处理,单片机处理后,把数字信号输送到显示电路中,由显示电路输出测量结果。整个系统实现了用单片机来控制输出,在线性度确实定过程中,需要对程序进行反复的修改,最终实现设计的要求。第二章系统硬件设计2.1主控芯片STC89C52单片机根本系统STC89C52单片机性能介绍STC89C52是一种低功耗、高性能CMOS8位微控制器,具有8K的在系统可编程闪烁存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C

6、51产品指令和引脚完全兼容。片上flash允许程序存储器在线可编程,也适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统上可编程闪烁存储单元,使得STC89C52为众多嵌入式控制应用系统提供灵活、有效的解决方案。STC89C52具有以下标准功能:8K字节闪烁存储器,256字节读写存储器,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,STC89C52可降至OHZ静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许读写存储器、定时器/计数器、串口、中断继续工作。掉电保护方式下,读写

7、存储器内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止.STC89C52单片机引脚功能VCC:电源。GND:地。PO口:PO口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个HL逻辑电平。对PO端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,PO口也被作为低8位地址/数据复用。在这种模式下,PO具有内部上拉电阻。在闪烁编程时,PO口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。Pl口:Pl口是一个具有内部上拉电阻的8位双向I/O口,Pl输出缓冲器能驱动4个HL逻辑电平。对Pl端口写1”时,内部上拉电阻把端口

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

9、有内部上拉电阻的8位双向I/O口,P3输出缓冲器能驱动4个TTL逻辑电平。对P3端口写1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流。RST:复位输入。当晶振工作时,RST引脚持续2个机器周期高电平将使单片机复位。EA/VPP:访问外部程序存储器控制信号。为使能从OooOH到FFFFH的外部程序存储器读取指令,EA必须接GND。为了执行内部程序指令,EA应该接Vcc。在闪烁编程期间,EA也接收12伏VPP电压。XTALh振荡器反相放大器和内部时钟发生电路的输入端。XTAL2:振荡器反相放大器的输出端。复位电路单片机上电时,

10、当振荡器正在运行时,只要持续给出RST引脚两个机器周期的高电平,便可完成系统复位。外部复位电路是为提供两个机器周期以上的高电平而设计的。系统采用上电自动复位,上电瞬间电容器上的电压不能突变,RST上的电压是Vcc上的电压与电容器上的电压之差,因而RST上的电压与Vcc上的电压相同。随着充电的进行,电容器上的电压不断上升,RST上的电压与VCC上的电压相同。随着充电的进行,电容器上的电压不断上升,RST上的电压就随着下降,RST脚上只要保持IonlS以上高电平,系统就会有效复位。电容Cl可取1033UF,R取IokQ,充电时间常数为IOXIOFXK)XloJIOoms。复位电路的实现可以有很多种

11、方法,但是从功能上一般分为两种:一种是电源复位,即外部的复位电路在系统通上电源之后直接使单片机工作,单片机的起停通过电源控制;另一种方法是在复位电路中设计按键开关,通过按键开关触发复位电平,控制单片机的复位。本设计使用了第二种方法,其电路图如图2T所示。图2-1STC89C52单片机复位电路,晶振电路图晶振电路STC89C52单片机有一个用于构成内部振荡器的反相放大器,XTALl和XTAL2分别是放大器的输入、输出端,外接石英晶体或陶瓷振荡器以及补偿电容C2、C3构成并联谐振电路。当外接石英晶体时,电容C2、C3选30pF10pF;当外接陶瓷振荡器时,电容C2、C3选40pF+IOpFoSTC

12、89C52系统中晶振频率一般在1.2、12MHZ选择。外接电容C2、C3的大小会影响振荡器频率的上下、振荡频率的稳定度、起振时间及温度稳定性。在设计电路板时,晶振和电容应靠近单片机,以便减少寄生电容,保证振荡器稳定可靠工作。在本系统中,选择了12MHZ石英晶振,电容Cl、C2为30pF。其电路图如图2-1所示。2. 2A/D转换芯片HX711接口电路的设计根据设计要求,系统要求输出的电流信号为201000mA,步进为ImA,且要求显示数值,因此,给定量的执行元件A/D转换器至少需要12位的转换精度。结合系统的设计要求,并考虑到单片机的1/0接口资源紧张等因素,最终确定选用HX711量化精度能到

13、达l4096l1000,完全能到达设计的精度要求。HX711接口电路如图2-2所示。图2-2HX711接口图11X711是一款专为高精度称重传感器而设计的24位A/D转换器芯片。与同类型其它芯片相比,该芯片集成了包括稳压电源、片内时钟振荡器等其它同类型芯片所需要的外围电路,具有集成度高、响应速度快、抗干扰性强等优点、降低了电子秤的整机本钱,提高了整机的性能和可靠性。该芯片与后端MCU芯片的接口和编程非常简单,所有控制信号由管脚驱动,无需对芯片内部的存放器编程。输入选择开关可任意选取通道A或通道B,与其内部的低噪声可编程放大器相连。通道A的可编程增益为128或64,对应的满额度差分输入信号幅值分

14、别为20mV或40mV。通道B那么为固定的64增益,用于系统参数检测。芯片内提供的稳压电源可以直接向外部传感器和芯片内的A/D转换器提供电源,系统板上无需另外的模拟电源。芯片内的时钟振荡器不需要任何外接部件。上电自动复位功能简化了开机的初始化过程。3. 2.1HX711引脚功能表2-lHX7U引脚功能管脚号名称性能描述1VSUP电源稳压电路供电电源:(不用稳压电路时接AVDD)2BASE模拟输出稳压电路控制输出(不用稳压电路时为无连接)3AVDD电源模拟电源:4VFB模拟输入稳压电路控制输入(不用稳压电路时应接地)5AGND地模拟地6VBG模拟输出参考电源输入7INA模拟输入通道A负输入端8I

15、NA+模拟输入通道A正输入端9INB模拟输入通道B负输入端10INB+模拟输入通道B正输入端11PD-SCK数字输入断电控制(高电平有效)和串口时钟输入12DOUT数字输出串口数据输出13XO数字输入输晶振输入(不用晶振时为无连接)出14Xl数字输入外部时钟或晶振输入,0:使用片内振荡器15RATE数字输入输出数据速率控制,0:10Hz:1:80Hz16DVDD电源数字电源:HX711管脚说明模拟输入通道A模拟差分输入可直接与桥式传感器的差分输出相接。由于桥式传感器输出的信号较小,为了充分利用A/D转换器的输入动态范围,该通道的可编程增益较大,为128或64。这些增益所对应的满量程差分输入电压

16、分别20mV或土40mV。通道B为固定的增益,所对应的满量程差分输入电压为40V。通道B应用于包括电池在内的系统参数检测。供电电源数字电源DVDD)应使用与MCU芯片相同的数字供电电源。HX711芯片内额稳压电路可同时向A/D转换器和外部传感器提供模拟电源。稳压电源的供电电压(VSUP)可与数字电源(DVDD)相同。稳压电源的输出电压值(VAVDD)由外局部压电阻RI、R2和芯片的输出参考电压VBG决定(图1),VAVDD=VBg(R1+R2)/R2o应选择该输出电压比稳压电源的输入电压(VSUP)低至少IoomVo如果不使用芯片内的稳压电路,管脚VSUP和管脚AVDD应相连,并接到电压为2.

17、65.5V的低噪声模拟电源。管脚VBG上不需要外接电容,管脚VFB应接地,管脚BASE为无连接。时钟选择如果将管脚XI接地,HX711将自动选择使用内部时钟振荡器,并自动关闭外部时钟输入和晶振的相关电路。这种情况下,典型输出数据速率为IOHz或80Hzo如果需要准确的输出数据速率,可将外部输入时钟通过一个20pF的隔直电容连接到XI管脚上,或将晶振连接到XI和XO管脚上。这种情况下,芯片内的时钟振荡器电路会自动关闭,晶振时钟或外部输入时钟被采用。此时,假设晶振频率为11.0592MHz,输出数据速率为准确的IoHZ或80Hz。输出数据速率与晶振频率以上述关系按比例增加或减少。使用外部输入时钟,

18、外部时钟信号不一定需要为方波。可将MCU芯片的晶振输出管脚上的时钟信号通过20pF的隔直电容连接到XI管脚上,作为外部时钟输入。外部时钟输入信号的幅值可低至150mV。HX711管脚说明如图2-3所示图2-3HX711管脚说明串口通讯串口通讯线由管脚PD-SCK和DOUT组成,用来输出数据,选择输入通道和增益。当数据输出管脚DOUT为高电平,说明A/D转换器还未准备好输出数据,此时串口时钟输入信号PD-SCK应为低电平。当De)UT从高电平变低电平后,PD-SCK应输入25至27个不等的时钟脉冲(图二)。其中第一个时钟脉冲的上升沿将读出输出24位数据的最高位(MSB),直至第24个时钟脉冲用来

19、选择下一个A/D转换的输入通道和增益,输入通道和增益说明如表2-3所示。表2-2主要电气参数参数条件及说明最小值典型值最大值单位满额度差分输入范围V(inp)-V(inn)0.5(AVDDGAIN)V输入共模电压范围AGND+0.6VAVDD-0.6使用片内振荡器,RATE=O10输出数据速率使用片内振荡器,80HZRATe=DVDD外部时钟或晶振,RATE=Ofclk/1,105,920外部时钟或晶振,fclk/138,240RATe=DVDD输出数据编码二进制补码8000007FFFFF(HEX)输出稳定时间(1)RATE=O400mvRATE=DVDD50输入零点漂移增益=1280.2增

20、益=640.8输入噪声增益=I28,RATE=O50nV(rms增益=I28,RATE=DVDD90)温度系数输入零点漂移增益=128)7nV/”C增益漂移增益=128)3PPmzC输入共模信号抑制比增益=128,RATE=O100JB电源干扰抑制比增益=128,RATE=O100dB输出参考电压(VBG)1.25V外部时钟或晶振频率111.059230MHZ电源电压DVDD2.65.5VAVDD,VSUP2.65.5模拟电源电路正常工作1600UA(含稳压电路)断电0.3数字电源电路正常工作100UA断电0.2表2-3输入通道和增益选择PD-SCK脉冲数输入通道25A12826B6427A6

21、4PD-SCK的输入时钟脉冲数不应少于25或多于27,否那么会造成串口通讯错误。当A/D转换器的输入通道或增益改变时,A/D转换器需要4个数据输出周期才能稳定。DOUT在4个数据输出周期后才会从高电平变低电平,输出有效数据。如图2-4所示。图2-4数据输入,输出通道和增益选择时序图表2-4四个周期选择说明符号说明最小值最大值单位TlDOUT下降沿到PD-SCK脉冲上升沿0.IUST2PD-SCK脉冲上升沿到DOUT数据有0.1US数T3PD-SCK正脉冲电平时间0.250UST4PD-SCK负脉冲电平时间0.2US复位和断电当芯片上电时,芯片内的上电自动复位电路会使芯片自动复位。管脚PD-SC

22、K输入来控制HX711的断电。当PD-SCK为低电平时,芯片处于正常工作状态。图2-5断电控制如果PD-SCK从低电平变高电平并保持在高电平超过60us,HX711即进入断电状态。如果使用片内稳压电源电路,断电时,外部传感器和片内A/D转换器会被同时断电。当PD-SCK重新回到低电平时,芯片会自动复位后进入正常工作状态。芯片从复位或断电状态后,通道A和增益128会被自动选择为作为第一次A/D转换的输入通道和增益。随后的输入通道和增益选择由PD-SCK的脉冲数决定,参见串口通讯一节。芯片从复位或断电状态进入正常工作状态后,A/D转换器需要4个数据输出周期才能稳定。DOUT在4个数据输出周期后才会

23、从高电平变为低电平,输出有效数据。4. 3压电传感器的设计5. 3.1应变式电阻传感器应变片式电阻传感器是以应变片为传感器元件的传感器。它具有以下优点:1精度高,测量范围广;2.使用寿命长,性能稳定可靠。3.结构简单、尺寸小、重量轻,因此在测量时,对工件工作状态及应力分布影响小;4.频率响应特性好。应变片响应时间约为IoOns;5.可在上下温、高速、高温、强烈振动、强磁场、核辐射和化学腐蚀等恶劣环境条件下工作;6.应变片种类繁多,价格廉价。电阻应变片的工作原理是基于电阻应变效应,即在导体产生机械形变时,它的电阻值相应发生变化。应变片式电阻传感器应用很广。本设计采用的是梁式力传感器,该传感器结构

24、简单、灵敏度高。适用于小压力测量。2.3.2应变片式电阻传感器的结构和原理电阻应变式传感器是将被测量的力,通过它产生的金属弹性变形转换成电阻变化的原件。由电阻应变片和测量电路两局部组成。常用的电阻应变片有两种:电阻应变片和半导体应变片,本设计采用的是电阻应变片,为获得高电阻值,电阻丝排成网状,并贴在绝缘的基片上,电阻丝两端引出导线,线珊上面有覆盖层,起保护作用。电阻应变片也有误差,产生的因素很多,所以在测量时我们一定要注意。其中的温度的影响最重要,环境温度影响电阻值变化的原因主要是:A:电阻丝温度系数引起的。B:电阻丝与被测原件对桥接零点和输出,灵敏度的影响,即使采用同一批应变也会因应变片之间

25、稍有温度特性之差而引起误差,所以对要求精度较高的传感器,必须进行温度补偿,解决的方法是在被粘贴的基片上采用适当及温度系数的自动补偿,并从外部对它加以适当的补偿。非线性误差是传感器特性中最重要的一点。产生非线性误差的原因很多,一般来说主要由结构设计决定,通过线性补偿,也可以得到改善。滞后和蠕变是关于应变片及粘合剂的误差。由于粘合剂为高分子材料,其特性随温度变化较大,所以称重传感器必须在规定的温度范围内使用。电阻应变片的工作原理是基于电阻应变效应,即在导体产生机械形变时,它的电阻值相应发生变化。设有一根电阻丝,如下图。它在未受力时的原始电阻值为式中:P电阻丝的电阻率;/一一电阻丝的长度;S一一电阻

26、丝的面积。电阻丝在外力的作用下,将引起电阻变化?,且有令电阻丝的轴向效应为=,由材料力学可知Ar/r=-(/)=-2,为电阻丝材料的泊松系数,经整理可得通常把单位应变所引起的电阻相对变化称作电阻线的灵敏系数,其表达式为从上式可以明显看出,电阻丝灵敏系数勺由两局部组成:(1+2川表示受力后由材料的几何尺寸变化引起的;也上表示由材料电阻变化所引起的。对于金属材料,包色项的阻值要比(1+2/)小得多,可以忽略,故%=1+2。大量实验证明,在电阻丝拉伸比例极限内,电阻的相对变化与应变成正比,即A。=L73.60上式可写成竺R2. 3.3全桥测电路应变式传感器常用的测量电路有单臂电桥、差动半桥和差动全桥

27、,其中差动全桥可提高电桥的灵敏度,消除电桥的非线性误差,并可消除温度误差等共模干扰。一般在测量中都使用4片应变片组成差动全桥,本设计所采用的传感器就是全桥测量电路。其电路图如图3-6所示。桥式测量电路有四个电阻,其中任何一个都可以是电阻应变片电阻,电桥的一个对角线接入工作电压U,另一个对角线位输出电压Uoo其特点是:当四个桥臂电阻到达相应关系时-,电桥输出为零,或那么就有电压输出,可用灵敏检流计来测量,所以电桥能够精确地测量微小的电阻变化。应变电阻作为桥臂电阻接在电桥电路中。无压力时,电桥平衡,输出电压为零:有压力时,电桥的桥臂电阻值发生变化,电桥失去平衡。全桥测量电路中,将受力性质相同的两片

28、应变片接入电桥对边。其输出灵敏度比半桥提高了一倍,非线性误差和温度误差均得到了改善。图2-6全桥测量电路2.4显示电路设计方案一:LED显示1.ED就是Iightemittingdiode,发光二极管的英文缩写,简称LED0它是一种通过控制半导体发光二极管的显示方式,用来显示文字、图形、图像、动画、行情、视频、录像信号等各种信息的显示屏幕。1.ED显示器结构:根本的半导体数码管是由七个条状发光二极管芯片排列而成的。可实现O9的显示。其具体结构有“反射罩式、“条形七段式及“单片集成式多位数字式等1.ED显示器与显示方式:1.ED显示块是由发光二极管显示字段的显示器件。通常使用的是七段LED0这种

29、显示块有共阴极与共阳极两种。共阴极LED显示块的发光二极管阴极共地。当某个发光二极管的阳极为高电平时,发光二极管点亮;共阳极LED显示块的发光二极管阳极并接。在设计中使用LED显示块构成N位LED显示器。N位LED显示器有N根位选线和8*N根段选线。根据显示方式不同,位选线与段选线的连接方法不同。段选线控制字符选择,位选线控制显示位的亮、暗。1.ED显示器有静态显示与动态显示两种方式。我们使用的为动态显示方式。在多位LED显示时,为了简化电路,降低本钱,将所有位的段选线并联在一起,由一个8位I/O口控制,而共阴极点或共阳极点分别由响应的I/O口线控制。其中两片74LS244分别用于段信号和位信

30、号的驱动,74LS273用于段信号的锁存,其锁存地址为7FFFH图2.7LED数码管显示方式方案二:LCD显示1.CD液晶显示器是LiquidCrystalDisplay的简称,LCD的构造是在两片平行的玻璃当中放置液态的晶体,两片玻璃中间有许多垂直和水平的细小电线,透过通电与否来控制杆状水晶分子改变方向,将光线折射出来产生画面。比LED要好的多,但是价钱较其贵。在日常生活中,我们对液晶显示器并不陌生。液晶显示模块已作为很多电子产品的通过器件,如在计算器、万用表、电子表及很多家用电子产品中都可以看到,显示的主要是数字、专用符号和图形。在单片机的人机交流界面中,一般的输出方式有以下几种:发光管、

31、LED数码管、液晶显示器。发光管和LED数码管比拟常用,软硬件都比拟简单,在前面章节已经介绍过,在此不作介绍,本章重点介绍字符型液晶显示器的应用o在单片机系统中应用晶液显示器作为输出器件有以下几个优点:(1)显示质量高:由于液晶显示器每一个点在收到信号后就一直保持那种色彩和亮度,恒定发光,而不像阴极射线管显示器(CRT)那样需要不断刷新新亮点。因此,液晶显示器画质高且不会闪烁。(2)数字式接口:液晶显示器都是数字式的,和单片机系统的接口更加简单可靠,操作更加方便。(3)体积小、重量轻:液晶显示器通过显示屏上的电极控制液晶分子状态来到达显示的目的,在重量上比相同显示面积的传统显示器要轻得多。(4

32、)功耗低:相对而言,液晶显示器的功耗主要消耗在其内部的电极和驱动IC,因而耗电量比其它显示器要少得多。液晶显示的原理是利用液晶的物理特性,通过电压对其显示区域进行控制,有电就有显示,这样即可以显示出图形。液晶显示器具有厚度薄、适用于大规模集成电路直接驱动、易于实现全彩色显示的特点,目前已经被广泛应用在便携式电脑、数字摄像机、PDA移动通信工具等众多领域。液晶显示器各种图形的显示原理(1)线段的显示:点阵图形式液晶由MXN个显示单元组成,假设LCD显示屏有64行,每行有128歹U,每8列对应1字节的8位,即每行由16字节,共168=128个点组成,屏上6416个显示单元与显示RAM区1024字节

33、相对应,每一字节的内容和显示屏上相应位置的亮暗对应。例如屏的第一行的亮暗由RAM区的OOOHOOFH的16字节的内容决定,当(OOOH)=FFH时,那么屏幕的左上角显示一条短亮线,长度为8个点;当(3FFH)=FFH时,那么屏幕的右下角显示一条短亮线;当(OOOH)=FFH,(OOlH)=00H,(002H)=OOH,(OOEH)=OOH,(OoFH)=OOH时,那么在屏幕的顶部显示一条由8段亮线和8条暗线组成的虚线。这就是LCD显示的根本原理。(2)字符的显示:用LCD显示一个字符时比拟复杂,因为一个字符由6X8或8X8点阵组成,既要找到和显示屏幕上某几个位置对应的显示RAM区的8字节,还要

34、使每字节的不同位为1,其它的为0,为1的点亮,为0的不亮。这样一来就组成某个字符。但由于内带字符发生器的控制器来说,显示字符就比拟简单了,可以让控制器工作在文本方式,根据在LCD上开始显示的行列号及每行的列数找出显示RAM对应的地址,设立光标,在此送上该字符对应的代码即可。(3)汉字的显示:汉字的显示一般采用图形的方式,事先从微机中提取要显示的汉字的点阵码(一般用字模提取软件),每个汉字占32B,分左右两半,各占16B,左边为1、3,5右边为2、4、6根据在LCD上开始显示的行列号及每行的列数可找出显示RAM对应的地址,设立光标,送上要显示的汉字的第一字节,光标位置加1,送第二个字节,换行按列

35、对齐,送第三个字节直到32B显示完就可以LCD上得到一个完整汉字。1602字符型LCD简介字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD,目前常用16*1,16*2,20*2和40*2行等的模块。我们以1602LCD字符型液晶显示器为例。1602LCD分为带背光和不带背光两种,基控制器大局部为HD44780,带背光的比不带背光的厚,是否带背光在应用中并无差异,1602LCD主要技术参数:显示容量:16X2个字符,芯片工作电压:4.5-5.5V,工作电流:2.OmA(5.0V),模块最正确工作电压:5.0V,字符尺寸:2.95X4.35(WXH)三1,91o由于本次设计的显示

36、模块需要显示多位数字,如果采用数码管显示的话将会占用多个单片机I/O口,使得电路变得更为复杂。所以选用液晶显示,1602LCD符合根本条件,能够采用。2.4.1LCD1602命令及时序1602液晶模块的引脚连线如图2-8。其中,第1、2脚为液晶的驱动电源;第三脚VL为液晶的比照度调节,通过在VCC和GND之间接一个IOK多圈可调电阻,中间抽头接VL,可实现液晶比照度的调节;液晶的控制线RS、R/W、E分别接单片机的P0.5、PO.6、P0.7;数据口接在单片机的P2口:BL+、BL-为液晶背光电源。图2-81602液晶模块的接线图1602液晶模块的初始化过程:延迟15ms写指令38H(不检测忙

37、信号)延迟5ms写指令38H(不检测忙信号)延迟5ms写指令38H(不检测忙信号)(以后每次写指令、读/写数据操作之前均需检测忙信号)写指令38出显示模式设置写指令08H:显示关闭写指令01H:显示清屏写指令06H:显示光标移动设置写指令OCH:显示开及光标设置1602液晶模块的读操作时序如图2-9所示。图2-91602液晶模块的读操作时序1602液晶模块的写操作时序如图2-10所示。图2-101602液晶模块的写操作时序2.5键盘输入键盘输入是人机交互界面中重要的组成局部,它是系统接受用户指令的直接途径。操作者通过键盘向系统发送各种指令或置入必要的数据信息。因此键盘模块设计的好坏,直接关系到

38、系统的可靠性和稳定性。键盘是由假设干个按键开关组成,键的多少根据单片机应用系统的用途而定。键盘由许多键组成,每一个键相当于一个机械开关触点,当键按下时,触点闭合,当键松开时,触点断开。单片机接收到按键的触点信号后作相应的功能处理。因此,相对于单片机系统来说键盘接口信号是输入信号。方案一:专用芯片式设计专用键盘处理芯片一般功能比拟完善,芯片本身能完成对按键的编码、扫描、消抖和重键等问题的处理,甚至还集成了显示接口功能。列如InteI8279是一种为8位微处理器设计的比拟成熟的通用键盘/显示器接口芯片,其功能有:接收来自键盘的输入数据,并作预处理;数据显示的管理和数据显示器的控制。专用键盘处理芯片

39、的优点很明显,可靠性高,口简单,使用方便,适合处理按键较多的情况。但在很多应用场合,考虑本钱因素,可能并不是最正确选择。方案二:矩阵式键盘设计矩阵式键盘又叫行列式键盘。用I/O口线组成行、列结构,按键设置在行列的交点上。例如,用2X2的行列结构可构成4个键的键盘,4X4行列结构可构成16个键的键盘。因此,在按键数量较多时,可以节省I/O口线。相对于专用芯片式可以节省本钱,且更为灵活。缺点就是需要用软件处理消抖、重键等问题。图2-114x4矩阵键盘考虑到本钱方面,我决定采用矩阵键盘第三章系统软件设计在单片机应用系统的开发中,软件的设计是最复杂和困难的,大局部情况下工作量都较大,特别是对那些控制系

40、统比拟复杂的情况。如果是机电一体化的设计人员,往往需要同时考虑单片机的软硬件资源分配。本系统的软件设计主要分为系统初始化、按键、显示处理及信号频率输入处理。程序设计是一件复杂的工作,为了把夏杂的工作条理化,就要有相应的步骤和方法。其步骤可概括为以下三点:分析系统控制要求,确定算法:对复杂的问题进行具体的分析,找出合理的计算方法及适当的数据结构,从而确定编写程序的步骤。这是能否编制出高质量程序的关键。根据算法画流程图:画程序框图可以把算法和解题步骤逐步具体化,以减少出错的可能性。编写程序:根据程序框图所表示的算法和步骤,选用适当的指令排列起来,构成一个有机的整体,即程序。程序数据的一种理想方法是

41、结构化程序设计方法。结构化程序设计是对利用到的控制结构类程序做适当的限制,特别是限制转向语句(或指令)的使用,从而控制了程序的复杂性,力求程序的上、下文顺序与执行流程保持一致性,使程序易读易理解,减少逻辑错误和易于修改、调试。根据系统的控制任务,本系统的软件设计主要由主程序、初始化程序、显示子程序、数据采集子程序和延时程序等组成。3.1 C语言在单片机中的应用C语言是一种通用的计算机程序设计语言,在国际上非常流行。它既可以用来编写计算机的系统程序,也可以用来编写一般的应用程序。以前计算机的系统软件主要用汇编语言编写,单片机应用系统更是如此。C语言是当前最流行的程序设计语言,它像其它高级语言一样

42、,面向用户,面向解题的过程,编程者不必熟悉具体的计算机内部结构和指令;C语言又像汇编语言一样,可以对机器硬件进行操作。如进行端口I,O操作、位操作、地址操作,并可内嵌汇编指令,将汇编指令当作它的语句一样。我们知道,汇编语言将涉及计算机硬件,所以C语言又像低级语言一样,可以对计算机硬件进行控制,因此人们把它称为介于高级语言与低级语言之间的一种中级语言。正是因为C语言具有这样的特性,所以很适合编写要对硬件进行操作的软件程序。本文采用C语言进行编写.因为此系统软件比拟,其存储量较大,因此必须应用C语言编程了。3.2 系统主程序流程图在系统通电后,主程序首先完成系统初始化,其中包括系统变量定义和给系统

43、变量赋初值等,然后调用A/D采集函数,将A/D采集模块输出的24位二进制串行数据转化为十进制,接着进行调零和定标,最后别离出四位十进制数据的千位、百位、十位和个位,调用液晶显示函数,将对应的数值送到对应的液晶上进行显示。系统主函数流程图如图37所示。图3-1主程序流程图3. 3子程序设计4. 3.1A/D数据采集子程序A/D数据采集子程序主要是采集压电传感器的输出小信号,前24个ADSK脉冲采集24位串行二进制数据,接下来的13个ADSK脉冲选择下次A/D采集的通道和增益,本设计采用1个ADSK脉冲,选择通道A,增益为128。其流程图如图3-2所示。将键盘代表的数值送到相应的存储单元,再进行功

44、能选择或数据处理。设计流程图如图3-4所示。图3-4键盘扫描子程序流程图第四章系统的调试系统硬件调试比拟简单,首先检查电路的焊接是否正确,用万用表检测电路板是否存在短路或者断路。经检测后再接上电源,用万用表测量电源局部的各个输出电压值,经调试正常前方可接到各局部电路。先按下单片机复位键将系统复位,调用液晶显示子函数显示1234,显示无误后,接上传感器和由24位串行A/D转换芯片构成的调理电路和A/D转换电路,将全部的程序烧到芯片中,观察液晶上是否显示0000,如果没有显示,即进行软件调零工作,待调零完成后,用手给传感器慢慢施加压力,看数液晶的数值是否也跟随增大,当放手后,看液晶的数值是否回到O

45、ooO附近。4.1 AD值反向转换重力值的参数计算满量程输出电压=鼓励电压*灵敏度1.0mv/v,例如:供电电压是5v乘以灵敏度2.0mv/v=满量程IOmVo相当于有IOKg重力产生时候产生IOmV的电压。假设重力为AKg,(xGOKg),测量出来的AD值为y,IOKg传感器输出,发送给AD模块儿的电压为AKg*8.6mV/IOKg=0.86AmV经过128倍增益后为128*0.86=110.08mV转换为24bit数字信号为110.08AmV*4.3V=429496.7296A所以y=429496.7296A/100=4294.967296A因此得出A=y/4294.967296Kg七y/

46、4.30g所以得出程序中计算公式Weight_Shiwu=(unsignedint)(float)Weight_Shiwu/4.30+0.05);4.2 误差分析由于所采用的传感器灵敏度很高,如果传感器在水平方向固定的不是很好,会存在一定的误差。另外传感器的引线也很灵敏,稍微触动一下,也会产生误差随着集成电路和计算机技术的迅速开展,使电子仪器的整体水平发生巨大变化,传统的仪器逐步的被智能仪器所取代。智能仪器的核心部件是单片机,因其极高的性价比得到广泛的应用与开展,从而加快了智能仪器的开展。而传感器作为测控系统中对象信息的入口,越来越受到人们的关注。传感器好比人体五官的工程模拟物,它是一种能将特定的被测量信息(物理量、化学量、生物量等按一定规律转换成某种可用信号输出的器件或装置本次设计中的全桥电子称就是在以上仪器的根底上设计而成的。因此,只有充分了解有关智能仪器、单片机、传感器以及各局部之间的关系才能到达要求。经过几个月的努力,终于按照毕业设计进度要求如期完成了实用电子秤控制系统的硬件设计任务。在做毕业设计的过程中,虽然碰到了不少的困难,但是在老师的指导以及自己的努力下,终于取得了一定成果。一、主要工作及结论1、熟悉STC89C52单片机功能及工作特性,掌握其接口

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 在线阅读 > 生活休闲


备案号:宁ICP备20000045号-1

经营许可证:宁B2-20210002

宁公网安备 64010402000986号