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

上传人:b****1 文档编号:2101411 上传时间:2023-05-02 格式:DOCX 页数:29 大小:256.72KB
下载 相关 举报
基于单片机的电子秤设计.docx_第1页
第1页 / 共29页
基于单片机的电子秤设计.docx_第2页
第2页 / 共29页
基于单片机的电子秤设计.docx_第3页
第3页 / 共29页
基于单片机的电子秤设计.docx_第4页
第4页 / 共29页
基于单片机的电子秤设计.docx_第5页
第5页 / 共29页
基于单片机的电子秤设计.docx_第6页
第6页 / 共29页
基于单片机的电子秤设计.docx_第7页
第7页 / 共29页
基于单片机的电子秤设计.docx_第8页
第8页 / 共29页
基于单片机的电子秤设计.docx_第9页
第9页 / 共29页
基于单片机的电子秤设计.docx_第10页
第10页 / 共29页
基于单片机的电子秤设计.docx_第11页
第11页 / 共29页
基于单片机的电子秤设计.docx_第12页
第12页 / 共29页
基于单片机的电子秤设计.docx_第13页
第13页 / 共29页
基于单片机的电子秤设计.docx_第14页
第14页 / 共29页
基于单片机的电子秤设计.docx_第15页
第15页 / 共29页
基于单片机的电子秤设计.docx_第16页
第16页 / 共29页
基于单片机的电子秤设计.docx_第17页
第17页 / 共29页
基于单片机的电子秤设计.docx_第18页
第18页 / 共29页
基于单片机的电子秤设计.docx_第19页
第19页 / 共29页
基于单片机的电子秤设计.docx_第20页
第20页 / 共29页
亲,该文档总共29页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

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

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

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

基于单片机的电子秤设计

基于单片机的电子秤设计

摘要

本系统针对电子称的自动称重、数据处理等进行了设计和制作。

为了阐明用单片机是如何对采样数据进行处理,对数据的采集和转换、计算问题进行了研究,讨论了单片机控制系统中关键的计算问题。

本文在给出智能电子称硬件设计的基础上,详细分析了电子称的软件控制方法。

单片机控制的电子称结构简单,成本低廉,深受人们的喜爱,本文将对此进行详细讨论。

关键词:

电子称,AT89S52单片机,称重传感器

 

 

 

1绪论

1.1选题背景与意义

电子秤是日常生活中常用的电子衡器,广泛应用于超市、大中型商场、物流配送中心。

电子秤在结构和原理上取代了以杠杆平衡为原理的传统机械式称量工具。

相比传统的机械式称量工具,电子秤具有称量精度高、装机体积小、应用范围广、易于操作使用等优点,在外形布局、工作原理、结构和材料上都是全新的计量衡器。

电子秤的设计首先是通过称重传感器采集到被测物体的重量并将其转换成电压信号。

输出电压信号通常很小,需要通过高精度高增益AD芯片HX711的信号放大与AD转换,转换成数字量被送入到主控电路的单片机中处理,再经过单片机控制显示器,从而显示出被测物体的重量。

1.2基本工作原理及框图

电子秤的工作原理如下:

利用压力传感器采集因压力变化产生的电压信号,经过电压放大电路放大,然后再经过模数转换器转换为数字信号,最后把数字信号送入单片机。

单片机经过相应的处理后,得出当前所称物品的重量及总额,然后再显示出来。

此外,还可通过键盘设定所称物品的价格。

主要技术指标为:

称量范围0~5kg;分度值0.01kg;精度等级Ⅲ级;电源DC1.5V(一节5号电池供电)。

图1系统工作原理框图

2系统方案论证与选型

2.1控制器部分

本设计由于要求必须使用单片机作为系统的主控制器,在这里选用ATMENL生产的AT89SXX系列单片机。

AT89SXX系列与MCS-51相比有两大优势:

第一,片内存储器采用闪速存储器,使程序写入更加方便;第二,提供了更小尺寸的芯片,使整个硬件电路体积更小。

此外价格低廉、性能比较稳定的MCPU,具有8K×8ROM、256×8RAM、2个16位定时计数器、4个8位I/O接口。

这些配置能够很好地实现本仪器的测量和控制要求。

最后我们最终选择了AT89S52这个比较常用的单片机来实现系统的功能要求。

AT89S52内部带有8KB的程序存储器,基本上已经能够满足我们的需要。

2.2数据采集部分

电子秤的数据采集部分主要包括称重传感器、信号放大电路和A/D转换电路,因此对于这部分的论证主要分三方面。

2.2.1传感器的选择

在本设计中,传感器是个十分重要的元件,因此对传感器的选择也显得十分重要。

不仅要注意其量程和参数,还要考虑与其相配置的各种电路的设计的难易程度和设计性价比等等。

综合考虑,本设计采用SP20C-G501电阻应变式传感器,其最大量程为7.5Kg.称重传感器由组合式S型梁结构及金属箔式应变计构成,具有过载保护装置。

其工作原理如图2所示。

图2传感器工作原理图

其工作原理:

用应变片测量时,将其粘贴在弹性体上。

当弹性体受力变形时,应变片的的敏感栅也随之变形,其阻值发生相应的变化,通过转换电路转换为电压或电流的变化。

由于内部线路采用惠更斯电桥,当弹性体承受载荷产生变形时,输出信号电压可由下式2-2给出。

2.2.2放大电路的选择方案

称重传感器输出电压振幅范围0~2mV。

而A/D转换的输入电压要求为0~2V,因此放大环节要有1000倍左右的增益。

对放大环节的要求是增益可调的(700~1500倍),根据本设计的实际情况增益设为1000倍即可,零点和增益的温度漂移和时间漂移极小。

按照输入电压2mV,分辨率20000码的情况,漂移要小于1µV。

由于其具有极低的失调电压的温漂和时漂(±1µV),从而保证了放大环节对零点漂移的要求。

残余的一点漂移依靠软件的自动零点跟踪来彻底解决。

稳定的增益量可以保证其负反馈回路的稳定性,并且最好选用高阻值的电阻和多圈电位器。

主要由高精度低漂移运算放大器构成差动放大器,而构成的前级处理电路差动放大器具有高输入阻抗,增益高的特点,可以利用普通运放做成一个差动放大器。

其设计电路如图3所示。

图3利用普通运放设计的差动放大器电路图

2.2.3A/D转换器的选择

A/D转换部分是整个设计的关键,这一部分处理不好,会使得整个设计毫无意义。

目前,世界上有多种类型的ADC,有传统的并行、逐次逼近型、积分型ADC,也有近年来新发展起来的∑-Δ型和流水线型ADC,多种类型的ADC各有其优缺点并能满足不同的具体应用要求。

目前,ADC集成电路主要有以下几种类型。

1、并行比较A/D转换器:

如ADC0808、ADC0809等。

并行比较ADC是现今速度最快的模/数转换器,采样速率在1GSPS以上,通常称为“闪烁式”ADC。

它由电阻分压器、比较器、缓冲器及编码器四种分组成。

这种结构的ADC所有位的转换同时完成,其转换时间主取决于比较器的开关速度、编码器的传输时间延迟等。

缺点是:

并行比较式A/D转换的抗干扰能力差,由于工艺限制,其分辨率一般不高于8位,因此并行比较式A/D只适合于数字示波器等转换速度较快的仪器中,不适合本系统。

2、逐次逼近型A/D转换器:

如:

ADS7805、ADS7804等。

逐次逼近型ADC是应用非常广泛的模/数转换方法,这一类型ADC的优点:

高速,采样速率可达1MSPS;与其它ADC相比,功耗相当低;在分辨率低于12位时,价格较低。

缺点:

在高于14位分辨率情况下,价格较高;传感器产生的信号在进行模/数转换之前需要进行调理,包括增益级和滤波,这样会明显增加成本。

3、积分型A/D转换器:

如:

ICL7135、ICL7109、ICL1549、MC14433等。

积分型ADC又称为双斜率或多斜率ADC,是应用比较广泛的一类转换器。

它的基本原理是通过两次积分将输入的模拟电压转换成与其平均值成正比的时间间隔。

与此同时,在此时间间隔内利用计数器对时钟脉冲进行计数,从而实现A/D转换。

积分型ADC两次积分的时间都是利用同一个时钟发生器和计数器来确定,因此所得到的表达式与时钟频率无关,其转换精度只取决于参考电压VR。

此外,由于输入端采用了积分器,所以对交流噪声的干扰有很强的抑制能力。

若把积分器定时积分的时间取为工频信号的整数倍,可把由工频噪声引起的误差减小到最小,从而有效地抑制电网的工频干扰。

这类ADC主要应用于低速、精密测量等领域,如数字电压表。

其优点是:

分辨率高,可达22位;功耗低、成本低。

缺点是:

转换速率低,转换速率在12位时为100~300SPS。

4、压频变换型ADC:

其优点是:

精度高、价格较低、功耗较低。

缺点是:

类似于积分型ADC,其转换速率受到限制,12位时为100~300SPS。

考虑到本系统中对物体重量的测量和使用的场合,精度要求不是很苛刻,转换速率要求也不高,根据系统的精度要求以及综合的分析,本设计采用了12位逐次逼近型A/D转换器AD574。

2.3键盘处理部分方案论证

由于电子秤需要设置单价(十个数字键),还具有确认、删除等功能,总共需设置17个键(包括一个复位键)。

键盘的扩展有使用以下方案:

采用矩阵式键盘:

矩阵式键盘的特点是把检测线分成两组,一组为行线,一组列线,按键放在行线和列线的交叉点上。

图2-4给出了一个4×4的矩阵键盘结构的键盘接口电路,图中的每一个按键都通过不同的行线和列线与主机相连这。

4×4矩阵式键盘共可以安装16个键,但只需要8条测试线。

当键盘的数量大于8时,一般都采用矩阵式键盘。

结合本设计的实际要求,16个按键使用4×4矩阵式键盘,另外一个复位键使用独立式按键实现。

2.4显示器部分的选择

显示器是人机交换的主要部分,他可以将测量电路测得的数据经过cpu处理后直观的显示出来。

数据显示有两种方案:

LED数码显示和LCD液晶显示。

LCD液晶显示器是一种极低功耗显示器,从电子表到计算器,从袖珍仪表到便携式微型计算机以及一些文字处理机都用到了液晶显示器。

考虑到液晶显示器的直观方便,这次设计选择了LCD液晶显示器。

2.5超量程报警部分选择

智能仪器一般都具有报警和通讯功能,报警主要用于系统运行出错、当测量的数据超过仪表量程或者是超过用户设置的上下限时为提醒用户而设置。

在本系统中,设置报警的目的就是在超出电子秤测量范围时,发出声光报警信号,提示用户,防止损坏仪器。

超限报警电路是由单片机的I/O口来控制的,当称重物体重量超过系统设计所允许的重量时,通过程序使单片机的I/O值为高电平,从而三极管导通,使蜂鸣器SPEAKER发出报警声,同时使报警灯D1发光。

3硬件电路设计

根据设计要求与设计思路,此电路由一块AT89S52单片机、复位电路、时钟电路、12864LCD显示器、蜂鸣器及LED灯报警电路、CZAF-602压力传感电路。

在本系统中,硬件电路的构成主要有以下几部分:

AT89S52的最小系统构成、数据采集、人-机交换电路等。

硬件设计框图如下。

图4硬件电路设计框图

在本系统中用于称量的主要器件是称重传感器(一次变换元件),称重传感器在受到压力或拉力时会产生电信号,受到不同压力或拉力是产生的电信号也随着变化,而且力与电信号的关系一般为线性关系。

由于传感器输出的为模拟信号,所以需要对其进行A/D转换为数字信号以便单片机接收,因此电路中需要用进行A/D转换。

又由于本设计采用的是CZAF-602电阻应变式压力传感器,其输出电压为2mv左右不能够使单片机和AD转换器正常工作,因此需要设计放大电路来使ADC0832的输入电压达到2v左右,放大电路的增益应为1000.单片机根据称重传感器输出的电信号计算出物体的重量。

3.1AT89S52介绍

AT89S52是一种带8K字节FLASH存储器(FPEROM—FlashProgrammableandErasableReadOnlyMemory)的低电压、高性能CMOS8位微处理器,俗称单片机。

单片机的可擦除只读存储器可以反复擦除1000次。

该器件使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。

片上Flash允许程序存储器在系统可编程,亦适于常规编程器。

在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。

AT89S52具有以下标准功能:

8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。

另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。

空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。

掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。

3.1.1单片机管脚说明

图5AT89S52引脚图

VCC:

供电电压。

GND:

接地。

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)。

此外,P1.0和P1.1分别作定时器/计数器2的外部计数输入(P1.0/T2)和定时器/计数器2的触发输入(P1.1/T2EX)。

在flash编程和校验时,P1口接收低8位地址字节。

引脚号第二功能。

P1.0T2(定时器/计数器T2的外部计数输入),时钟输出

P1.1T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)

P1.5MOSI(在系统编程用)

P1.6MISO(在系统编程用)

P1.7SCK(在系统编程用)

P2口:

P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。

对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。

作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。

在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX@DPTR)时,P2口送出高八位地址。

在这种应用中,P2口使用很强的内部上拉发送1。

在使用8位地址(如MOVX@RI)访问外部数据存储器时,P2口输出P2锁存器的内容。

在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。

P3口:

P3口是一个具有内部上拉电阻的8位双向I/O口,p3输出缓冲器能驱动4个TTL逻辑电平。

对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。

作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。

P3口亦作为AT89S52特殊功能(第二功能)使用,如下表所示。

在flash编程和校验时,P3口也接收一些控制信号。

P3口同时为闪烁编程和编程校验接收一些控制信号。

RST:

复位输入。

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

ALE/PROG:

当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。

在FLASH编程期间,此引脚用于输入编程脉冲。

在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。

因此它可用作对外部输出的脉冲或用于定时目的。

然而要注意的是:

每当用作外部数据存储器时,将跳过一个ALE脉冲。

如想禁止ALE的输出可在SFR8EH地址上置0。

此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。

另外,该引脚被略微拉高。

如果微处理器在外部执行状态ALE禁止,置位无效。

PSEN:

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

EA/VPP:

外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。

需注意的是:

如果加密位LB1被编程,复位时内部会锁存EA端状态。

如EA端为高电平(接Vcc端),CPU则执行内部程序存储器的指令。

FLASH存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。

XTAL1:

振荡器反相放大器和内部时钟发生电路的输入端。

XTAL2:

振荡器反相放大器的输出端。

3.1.2AT89S52的最小系统电路构成

AT89S52单片机的最小系统由时钟电路、复位电路、电源电路及单片机构成。

单片机的时钟信号用来提供单片机片内各种操作的时间基准,复位操作则使单片机的片内电路初始化,使单片机从一种确定的初态开始运行。

单片机的时钟信号通常用两种电路形式得到:

内部振荡方式和外部振荡方式。

在引脚XTAL1和XTAL2外接晶体振荡器(简称晶振)或陶瓷谐振器,就构成了内部振荡方式。

由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自激振荡器并产生振荡时钟脉冲。

当MCS-5l系列单片机的复位引脚RST(全称RESET)出现2个机器周期以上的高电平时,单片机就执行复位操作。

如果RST持续为高电平,单片机就处于循环复位状态。

根据应用的要求,复位操作通常有两种基本形式:

上电复位和上电或开关复位。

上电复位要求接通电源后,自动实现复位操作。

上电或开关复位要求电源接通后,单片机自动复位,并且在单片机运行期间,用开关操作也能使单片机复位。

单片机的复位操作使单片机进入初始化状态,其中包括使程序计数器PC=0000H,这表明程序从0000H地址单元开始执行。

系统复位是任何微机系统执行的第一步,使整个控制芯片回到默认的硬件状态下。

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

3.2A/D转换器与AT89S52单片机接口电路设计

AD574是美国AnalogDevice公司生产的12位单片A/D转换器。

它采用逐次逼近型的A/D转换器,最大转换时间为25us,转换精度为0.05%,所以适合于高精度的快速转换采样系统。

芯片内部包含微处理器借口逻辑(有三态输出缓冲器),故可直接与各种类型的8位或者16位的微处理器连接,而无需附加逻辑接口电路,切能与CMOS及TTL电路兼容。

AD574采用28脚双列直插标准封装。

A/D574有5根控制线,逻辑控制输入信号有。

A0:

字节选择控制信号。

CE:

片启动信号。

/CS:

片选信号。

当/CS=0,CE=1同时满足时,AD574才处于工作状态,否则工作被禁止。

R/-C:

读数据/转换控制信号。

12/-8:

数据输出格式选择控制信号。

当其为高电平时,对应12位并行输出;为低电平时,对应8位输出。

当R/-C=0,启动A/D转换:

当A0=0,启动12位A/D转换方式;当A0=1,启动8位转换方式。

当R/-C=1,数据输出,A0=0时,高8位数据有效;A0=1时,低4位数据有效,中间4位为0,高4位为三态。

输出信号有:

STS:

工作状态信号线。

当启动A/D进行转换时,STS为高电平;当A/D转换结束时为低电平。

则可以利用此线驱动一信号二极管的亮灭,从而表示是否处于A/D转换。

其它管脚功能如下:

10Vin,20Vin:

模拟量输入端,分别为10V和20V量程的输入端,信号的另一端接至AGND。

DB11~DB0:

12位数字量输出端,送单片机进行数据处理。

REFOUT:

10V内部参考电压输出端。

REFIN:

内部解码网络所需参考电压输入端。

BIPOFF:

补偿校正端,接至正负可调的分压网络,0输入时调整数字输出为0;

AGND:

接模拟地。

DGND:

接数字地。

由于对AD5748、10、12引脚的外接电路有不同连接方式,所以AD574与单片机的接口方案有两种,一种是单极性接法,可实现输入信号0~10V或者0~20V的转换;另一种为双极性接法,可实现输入信号-5~+5V或者-10~+10V之间转换。

本次设计采用单极性接法。

图6AD574芯片引脚图

根据芯片管脚的原理,无论启动、转换还是结果输出,都要保证CE端为高电平,所以可以将单片机的/RD引脚和/WR端通过与非门与AD574的CE端连接起来。

转换结果分高8位、低4位与P0口相连,分两次读入,所以12/-8端接地。

同时,为了使CS、A0、R/-C在读取转换结果时保持相应的电平,可以将来自单片机的控制信号经74LS373锁存后再接入。

CPU可采用中断、查询或者程序延时等方式读取AD574的转换结果,本设计采用中断方式,转换结束状态STS端接到P3.2(外部中断/INT0)。

工作过程如下。

1、当单片机执行对外部数据存储器的写指令,并使CE=1,/CS=0,R/-C=0,A0时,

进行12位A/D转换启动。

2、CPU等待STS状态信号送P3.2口,当STS由高电平变为低电平时,就表示转换结束。

转换结束后,单片机通过分两次读外部数据存储器操作,读取12位的转换结果数据。

3、当CE=1,/CS=0,R/-C=1,A0=0时,读取高8位;当CE=1,/CS=0,R/-C=1,A0=1时,读取低4位。

3.3显示电路与AT89S52单片机的接口电路设计

本设计采用是LCD显示。

在LCD驱动时,需在段电极和公共电极上施加交流电压。

若只在电极上施加DC电压时,液晶本身发生劣化。

液晶驱动方式包括静态驱动、动态驱动等驱动方式。

图7AD574与AT89s52的接线图

1、静态驱动

所有的段都有独立的驱动电路,表示段电极与公共电极之间连续施加电压。

它适合于简单控制的LCD。

2、多路驱动方式

构成矩阵电极,公共端数为n,按照1/n的时序分别依次驱动公共端,与该驱动时序相对应,对所有的段信号电极作选择驱动。

这种方式适合于比较复杂控制的LCD。

在多路驱动方式中,像素可分为选择点、半选择点和非选择点。

为了提高显示的对比度和降低串扰,应合理选择占空比(duty)和偏压(bias)。

施加在LCD上所表示的ON和OFF时的电压有效值与占空比和偏压的关系如下。

Vo:

LCD驱动电压

N:

占空比(1/N)

A:

偏压(1/a)

多路驱动方式可分为点反转驱动和帧反转驱动。

点反转驱动适合于低占空比应用,它在各段数据输出时,将数据反转。

帧反转驱动适合于高占空比应用,它在各帧输出时,将数据反转。

对于多灰度和彩色显示的控制方法,通常采用帧频控制(FRC)和脉宽调制(PWM)方法。

帧频控制是通过减少帧输出次数,控制输出信号的有效值,来实现多灰度和彩色控制。

而脉宽调制是通过改变段输出信号脉宽,控制输出信号的有效值,来实现多灰度和彩色控制。

图8单片机与LCD接线图

3.4键盘电路与AT89S52单片机接口电路设计

矩阵式键盘的结构与工作原理:

在键盘中按键数量较多时,为了减少I/O口的占用,通常将按键排列成矩阵形式。

在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。

这样,一个端口(如P1口)就可以构成4*4=16个按键,比直接将端口线用于键盘多出了一倍,而且线数越多,区别越明显,比如再多加一条线就可以构成20键的键盘,而直接用端口线则只能多出一键(9键)。

由此可见,在需要的键数比较多时,采用矩阵法来做键盘是合理的。

矩阵式键盘的按键识别方法:

确定矩阵式键盘上何键被按下介绍一种“行扫描法”。

行扫描法又称为逐行(或列)扫描查询法,是一种最常用的按键识别方法,如图2-4所示键盘,介绍过程如下。

判断键盘中有无键按下将全部行线D0-D3置低电平,然后检测列线的状态。

只要有一列的电平为低,则表示键盘中有键被按下,而且闭合的键位于低电平线与4根行线相交叉的4个按键之中。

若所有列线均为高电平,则键盘中无键按下。

判断闭合键所在的位置在确认有键按下后,即可进入确定具体闭合键的过程。

其方法是:

依次将行线置为低电平,即在置某根行线为低电平时,其它线为高电平。

在确定某根行线位置为低电平后,再逐列检测各列线的电平状态。

若某列为低,则该列线与置为低电平的行线交叉处的按键就是闭合的按键。

在本系统中键盘采用矩阵式键盘并采用中断工作方式。

键盘为4X4键盘,包括0、1、2、3、4、5、6、7、8、9、十个数字及确认、清除键以及小数点键。

采用中断工作方式提高了CPU的利用效率,没键按下时没有中断请求,有键按下时,向CPU提出中断请求,CPU响应后执行中断服务程序,在中断程序中才对键盘进行扫描。

下图就是键盘电路与AT89S52单片机接口电路图。

图9单片机与键盘接口电路

3.5报警电路的设计

当电路检测到称重的物体超过仪器的测量限制时,将产生一个信号给报警电路。

使报警电路报警从而提醒工作人员注意,超限报警电路如图10示。

它是由AT89S52的P3.0口来控制的,当超过设置的重量时,通过程序使P3.0口置为低电平,从而使三极管导通,报警电路接通,使蜂鸣器SPEAKER发出报警声。

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

当前位置:首页 > PPT模板 > 节日庆典

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2