




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、i西安邮电大学毕业论文基于单片机的简易电子称作 者:梁忠涛院 系:自动化学院专 业:测控技术与仪器班 级:测控 1103指导老师:周有 英 文 摘 要ii摘要摘要 此次设计主要是以单片机 at89s52 为核心设计的简易电子秤。本设计主要分为传感器部分、单片机中央处理部分、lcd 显示部分、键盘输入部分。利用压力传感器采集信号,ds1602 显示单价和质量。输出信号输入到中央处理部分 at89s52 的芯片,通过信号放大和 ad 转换,编程对信号进行处理传送到 1602 液晶显示屏显示相关数据,按键电路通过按键对单价进行设置。本设计结构简单,具有抗干扰能力强、成本便宜、可扩展性强等特点。关键词
2、关键词:单片机 压力传感器 液晶显示 电子秤英 文 摘 要iitopic: hardware design of electronic scale based on single chip microcomputercai liming2008926068, automation majorabstract this hardware design of electronic scale is mainly based on the 51 series single-chip at89s52 as control core, realizes the basic control functio
3、n of electronic scale. in the design of the system, in order to make better use of the modular design method, the design of each unit step function module, the hardware of the system can be divided into the smallest system, data acquisition, man-machine interface and power supply system four parts.
4、minimum system consists of at89s52 and extension of the external data memory; data acquisition part consists of pressure sensor, signal pre-processing and a / d conversion parts, includes an operational amplifier adc0832; man-machine interface for keyboard input and liquid crystal display, the main
5、use of matrix keyboard and lcd1602 display, can easily input data and intuitive display value. software design of single-chip c programming language, to achieve the design of the whole control function. the electronic scale can realize the basic function of weighing, weighing range for 0.5-10kg.the
6、whole system has the advantages of simple structure, convenient use, complete function, high precision, has the certain development value.keywords:microcontroller pressure sensor liquid crystal display electronic scale目 录iii目 录第 1 章 引言.11.1 选题的目的和意义.11.1.1 目的.11.1.2 意义.11.2 研究现状综述.2第 2 章 系统总体设计 .42.
7、1 系统设计要求.42.2 系统设计思想.42.3 设计要完成的任务.5第 3 章.系统硬件电路设计.63.1 数据采集模块电路的设计 .113.2 控制模块的选型与研究 .63.2.1 选择单片机.63.2.2 at89s52 单片机芯片的学习.73.3 a/d 转换器 adc0832 与 at89s52 单片机的接口电路.133.3.1 adc0832 的介绍.133.3.2 adc0832 与单片机接口电路设计.153.4 显示模块的设计 .163.4.1 显示模块的选择与介绍.163.4.2 lcd1602 与 at89s52 单片机接口电路的设计.173.5 键盘电路与 at89s5
8、2 单片机接口电路的设计.183.5.1 键盘与单片机的连接方式选择.183.5.2 单片机对键盘的扫描.203.5.3 键盘接口和键输入软件中应解决的一个问题.21第 4 章 系统软件程序设计 .234.1 主程序流程图: .234.2 ad 转换流程图.24中 文 摘 要iv4.3 液晶显示流程图 .254.4 单片机对矩阵式键盘接口处理过程如下图所示: .264.5 系统原理电路图 .27第 5 章 结 论.28参考文献.29致 谢 .30附录:软件程序设计.31第 1 章 引 言1第第 1 章章 引引 言言1.1 选题的目的和意义选题的目的和意义如今,电子产品变得越来越丰富,给人们带来
9、了很多很多的方便,其中电子秤成了人们生活中不可缺少的一部分。大大小小的市场电子秤能够完成许多工作,为人们节省了时间,提高了工作效率。电子秤不但能很精确的称出商品的重量,还能去除皮重,累计所称物品重量,输入物品单价可快速的计算出金额,可以说非常的智能化,而且非常的精确。由此,顾客在购物的时候非常的放心,商家的效益也提高了,所以有了电子秤,顾客买的放心,商家也卖的开心了。而目前市场上电子秤产品的整体水平不高,部分小型企业产品质量差且技术力量薄弱,设备不全,缺乏产品的开发能力,产品质量在低水平徘徊。因此,本设计的目的在于有针对性地开发出一套有实用价值的电子秤系统,从技术上克服上述诸多缺点,改善电子秤
10、系统在应用中的不足之处。本设计的控制功能包括基本的称重功能,显示功能,和计算功能。由于系统资源丰富,还可以方便的拓展其他应用。 在本次设计中,涉及到传感器技术,单片机技术,模拟电子技术,数字电子技术等的多种学科知识的综合运用。通过本设计,能提高本专业各个学科综合知识的实际运用能力,提高实际动手能力,提高自身的科学性、系统性、及全面性的综合设计素质。并且,可以通过此次的毕业设计,较好的掌握硬件开发的工作流程及步骤,学会使用汇编语言、c 语言编写程序,我相信通过这次对电子秤控制系统的设计,一定能够学到丰富的知识并对电子产品有更深一层的了解,为将来参加实际工作做好充分的准备。1.2 研究现状综述研究
11、现状综述 1.2.1 国内发展情况50 年代中期电子技术的渗入推动了衡器制造业的发展。60 年代初期出现机电结合式电子衡器以来,经过 40 多年的不断改进与完善,我国电子衡器从最初的机电结合型发展到现在的全电子型和数字智能型。电子衡器制造技术及应第 1 章 引 言2用得到了新发展。电子称重技术从静态称重向动态称重发展:计量方法从模拟测量向数字测量发展;测量特点从单参数测量向多参数测量发展,特别是对快速称重和动态称重的研究与应用。电子称重技术基本达到国际上 20 世纪 90 年代中期的水平,少数产品的技术已处于国际领先水平。国内的电子秤市场中,1009 左右量程的电子秤精度一般为 0.019 即
12、 10mg。在研究方法上,电子称重系统的工作原理一般是将作用在承载器上的质量或力的大小,通过压力传感器转换为电信号,并通过控制电路来处理该电信号。但就总体而言,我国电子衡器产品的数量和质量与工业发达国家相比还有较大差距,其主要差距是技术与工艺不够先进、工艺装备与测试仪表老化、开发能力不足、产品的品种规格较少、功能不全、稳定性和可靠性较差等。1.2.2 发展趋势通过分析近年来电子衡器产品的发展情况及国内外市场的需求,电子衡器总的发展趋势是小型化、模块化、集成化、智能化;其技术性能趋向是速率高、准确度高、稳定性高、可靠性高;其功能趋向是称重计量的控制信息和非控制信息并重的“智能化”功能;其应用性能
13、趋向于综合性和组合性。1.3 论文主要研究内容论文主要研究内容本文主要是设计的内容是简易电子秤,它用单片机作为处理核心,信号由压力传感器感受后经放大器放大和模数转换后输入到单片机处理,同时该电子秤具有 lcd 显示和键盘输入。该电子秤具体实现的功能是能够测量一定质量内物体的质量,能够利用键盘输入价格,具有清零,可以计算总价,并能通过 lcd 直接显示出来,超过所测重量时能够报警。第 2 章 系统总体设计4第第 2 2 章章 系统总体设计系统总体设计2.12.1 系统设计要求系统设计要求设计系统实现的功能如下:1) 要求电子秤可称体重范围 0.5-10kg;2) 具有键盘输入;3) 价格计算功能
14、;2.22.2 系统设计思想系统设计思想本设计采用压力传感器作信号采集部分,at89s52 做中央处理器,液晶屏显示。设计满足市场需求的实用数显电子称。利用单片机,对压力传感器传来的信号进行放大和 a/d 转换,误差修正处理并在液晶上形成质量显示。前端信号处理时,选用放大、a/d 转换等措施,尤其在显示方面采用液晶显示器。这种方案不仅加强了人机交换的能力,而且满足设计要求。可以显示所称量的物体信息相关内容。目前单片机技术比较成熟,功能也比较强大,被测信号经放大整形后送入单片机,由单片机对测量信号进行处理并根据相应的数据关系显示出被测物体的重量。由于系统需要的按键较多,因此要采用 4*4 矩阵键
15、盘。单片机控制适合于功能比较简单的控制系统,而且其具有成本低,功耗低,体积小算术运算功能强,技术成熟等优点。第 2 章 系统总体设计5放大电路传感器a/d 转换器报警电路主控制器lcd 显示键盘输入图 1 系统原理框图2 2.3 设计要完成的任务根据单片机最小系统、外围电路的要求和整体设计思路,本设计要做的具体的工作主要有一下几个方面:1)按照初步方案画出硬件框图、电路图及制板。2)根据系统设计要求及硬件框图确定软件流程图并编写相应软件。3)焊接电路以及功能电路的软硬件调试。4)系统软硬件联调。第 3 章 系统硬件电路设计6第第 3 3 章章. .系统硬件电路设计系统硬件电路设计3.1 数据采
16、集模块电路的设计数据采集模块电路包括:(1)、压力传感器输出信号的放大电路部分,压力传感器将接收到的压力信号转变为电信号输出,放大电路的作用就是将其电信号进行放大处理。(2)、a/d转换器模块,因为单片机只能接收数字信号,而前面输出的是模拟信号,a/d转换器的作用就是将模拟信号转变为数字信号,送入单片机进行处理。此外还包括a/d转换器与单片机的接口电路部分。 采用传感器方案: 电阻应变式传感器 电阻应变式称重传感器是利用电阻应变片变形时其电阻也随之改变的原理工作的, 根据传感器理论可知,设长为 l、截面积为 s、电阻率为 的电阻丝,已知其阻值为: (2-1) lrs当电阻丝两端有机械应力 f
17、时,、l、s 都会发生变化,从而导致电阻发生变化。这种应变片式传感器是基于材料的电阻应变效应,电阻应变片即可单独作为传感器使用,又能作为敏感元件结合弹性元件构成力学量传感器。电阻应变片把机械应变信号转换为r/r 后,由于应变量及相应电阻变化一般都很微小,难以直接精确测量,且不便处理。因此,要采用转换电路把应变片的r/r 变化转换成电压或电流变化。其转换电路常用测量电桥4。如图 2-2 所示为常见的直流供电的平衡差动测量电桥:r1-r1r2+r2r4+r4r3-r3eineout图 2-2 直流供电的平衡差动测量电桥第 3 章 系统硬件电路设计12图中,为供桥电源电压,当初始有时,则电桥输出电压
18、或电流为零,这时电桥处于平衡状态。其测量原理:用应变片测量时,将其粘贴在弹性体上。当弹性体受力变形时,应变片的敏感栅也随同变形,其电阻值发生相应变化,通过转换电路转换为电压或电流的变化。由于内部线路采用惠更斯电桥,当弹性体承受载荷产生变形时,输出信号电压可由下式给出: 24r1r2r3r4eein( 24)r1r2r3r4rroutrr(2-2) 本文的目的是设计一简易电子秤,最大称重约为 5 千克,考虑到与其相配置的各种电路的设计的难易程度和设计性价比,最终选择了 czaf-6058电阻应变式称重传感器,其称重规模为 5kg。 本设计中选用最终方案我们选择的是ns-th1系列压力传感器,额定
19、载荷10kg,该压力传感器均采用全桥式等臂电桥。本设计采用的惠斯登电桥具有很多优点,如可以抑制温度变化的影响,可以抑制侧向力干扰,可以比较方便的解决称重传感器的补偿问题等,又因为全桥式等臂电桥的灵敏度最高,各臂参数一致,各种干扰的影响容易相互抵消。压力传感器实际上是一种将质量信号转变为可测量的电信号输出的装置4。用传压感器首先要考虑传感器所处的实际工作环境,这点对本系统的正确使用传感器至关重要,它关系到整个系统能否正常工作以及它的安全和使用寿命,乃至整个衡器的可靠性和安全性。而传感器检测电路的功能是把电阻应变片的电阻变化转变为电压输出。3.2.控制模块的选型与研究3.2.1 选择单片机选择单片
20、机型号的出发点有以下几个方面:1、市场货源 系统设计者只能在市场上能够提供的单片机中选择,特别是作为产品大批量生产的应用系统,所选的单片机型号必须有稳定、充足的货源。 2、单片机性能 第 3 章 系统硬件电路设计13应根据系统的功能要求和各种单片机的性能,选择最容易实现系统技术指标的型号,而且能达到较高的性能价格比。单片机性能包括片内硬件资源、运行速度、可靠性、指令系统功能、体积和封装形式等方面。影响性能价格比的因素除单片机的性能价格外,还包括硬件和软件设计的容易程度、相应的工作量大小,以及开发工具的性能价格比。 3、研制周期 在研制任务重、时间紧的情况下,还要考虑所选的单片机型号是否熟悉,是
21、否能马上着手进行系统的设计。与研制周期有关的另一个重要因素是开发工具,性能优良的开发工具能加快系统地研制进程。 at89s 系列单片机是继at89c 系列之后推出的功能更强的新产品。at89s 系列与 at89c 系列相比,运算速度有了较大的提高,它的静态工作频率为 033mhz,片内集成有双数据指针dptr、定时监视器(看门狗)、低功耗休闲状态及关电方式、关电方式下的中断恢复等诸多功能,极大地满足了各种不同的应用要求。at89s52 单片机是 at89s系列中的增强型高档机产品,它片内存储器容量是 at89s51 的一倍,即片内8kb 的 flash 序存储器和 256b 的 ram。另外,
22、它还增加了一个功能极强的、具有独特应用的 16 位定时计数器等多种功能。在工程应用中 at89s52 有一显著的优势:不需要烧写器,只借助 pc 机的并口输出和极为简单的下载电路,便可将程序通过串行方式写入单片机。并且下载电路可设计在系统中,可以随时修改单片机的软件而不对硬件做任何改动。 由此,通过对目前主流型号的比较,我们最终选择了 at89s52 通用的普通单片机来实现系统设计。3.2.2 at89s52 单片机芯片的学习功能特征描述at89s52 是一种低功耗、高性能 cmos8 位微控制器,具有 8k 在系统可编程flash 存储器。使用 atmel 公司高密度非易失性存储器技术制造,
23、与工业80c51 产品指令和引脚完全兼容。片上 flash 允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的 8 位 cpu 和在系统可编程flash,使得 at89s52 为众多嵌入式控制应用系统提供高灵活、超有效的解决方第 3 章 系统硬件电路设计14案。at89s52 具有以下标准功能: 8k 字节 flash,256 字节 ram,32 位 i/o 口线,看门狗定时器,2 个数据指针,三个 16 位定时器/计数器,一个 6 向量 2级中断结构,全双工串行口,片内晶振及时钟电路。另外,at89s52 可降至0hz 静态逻辑操作,支持 2 种软件可选择节电模式。空闲模式
24、下,cpu 停止工作,允许 ram、定时器/计数器、串口、中断继续工作。掉电保护方式下,ram内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。引脚功能vccvcc:电源gnd:gnd: 接地p0p0 口口: p0 口是一个 8 位漏极开路的双向 i/o 口。作为输出口,每位能驱动 8 个 ttl 逻辑电平。对 p0 端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,p0 口也被作为低 8 位地址/数据复用。在这种模式下,p0 具有内部上拉电阻。在 flash 编程时,p0 口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻
25、。p1p1 口:口:p1 口是一个具有内部上拉电阻的 8 位双向 i/o 口,p1 输出缓冲器能驱动 4 个 ttl 逻辑电平。对 p1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(iil)。此外,p1.0 和 p1.2 分别作定时器/计数器2 的外部计数输入(p1.0/t2)和时器/计数器 2 的触发输入(p1.1/t2ex),具体如下表所示。在 flash 编程和校验时,p1 口接收低 8 位地址字节。表 1:引脚号引脚号第二功能第二功能p1.0t2(定时器/计数器t2的外部计数输入),时钟输出p1.1t2
26、ex(定时器/计数器t2的捕捉/重载触发信号和方向控制)p1.5mosi(在系统编程用)p1.6miso(在系统编程用)第 3 章 系统硬件电路设计15p1.7sck(在系统编程用)p2p2口:口:p2 口是一个具有内部上拉电阻的8 位双向i/o 口,p2 输出缓冲器能驱动4 个ttl 逻辑电平。对p2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(iil)。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行movx dptr)时,p2 口送出高八位地址。在这种应用中,p2 口使用很强的内部上拉发送1
27、。在使用8位地址(如movx ri)访问外部数据存储器时,p2口输出p2锁存器的内容。在flash编程和校验时,p2口也接收高8位地址字节和一些控制信号。p3p3口:口:p3 口是一个有内部上拉电阻的8 位双向i/o 口,p2 输出缓冲器能驱动4 个ttl 逻辑电平。对p3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(iil)。p3口亦作为at89s52特殊功能(第二功能)使用,如下表所示。在flash编程和校验时,p3口也接收一些控制信号。表2:引脚号引脚号第二功能第二功能p3.0rxd(串行输入)p3.1t
28、xd(串行输出)p3.2 (外部中断0)int0p3.3 (外部中断1)int1p3.4t0(定时器0外部输入)p3.5t1定时器1外部输入)p3.6 (外部数据存储器写选通)wrp3.7 (外部数据存储器写选通)rdrstrst:复位输入。晶振工作时,rst脚持续2 个机器周期高电平将使单片机复位。看门狗计时完成后,rst 脚输出96 个晶振周期的高电平。特殊寄存器auxr(地址8eh)上的disrto位可以使此功能无效。disrto默认状态下,复位高电第 3 章 系统硬件电路设计16平有效。 ale/ale/:地址锁存控制信号(ale)是访问外部程序存储器时,锁存低prog8 位地址的输出
29、脉冲。在flash编程时,此引脚()也用作编程输入脉冲。prog在一般情况下,ale 以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,ale脉冲将会跳过。如果需要,通过将地址为8eh的sfr的第0位置 “1”,ale操作将无效。这一位置 “1”,ale 仅在执行movx 或movc指令时有效。否则,ale 将被微弱拉高。这个ale 使能标志位(地址为8eh的sfr的第0位)的设置对微控制器处于外部执行模式下无效。:外部程序存储器选通信号()是外部程序存储器选通信号。psenpsen当at89s52从外部程序存储器执行外部代码时,在每
30、个机器周期被激活两psen次,而在访问外部数据存储器时,将不被激活。psen/vpp/vpp:访问外部程序存储器控制信号。为使能从0000h 到ffffh的外部ea程序存储器读取指令,必须接gnd。为了执行内部程序指令,应该接eaeavcc。在flash编程期间,也接收12伏vpp电压。eaxtal1xtal1:振荡器反相放大器和内部时钟发生电路的输入端。xtal2xtal2:振荡器反相放大器的输出端。 at89s52的最小系统电路at89s52的最小系统电路 at89s52单片机的最小系统由时钟电路、复位电路等与单片机构成。单片机的时钟信号用来提供单片机片内各种操作的时间基准,复位操作则使单
31、片机的片内电路初始化,使单片机从一种确定的初态开始运行。 本次设计使用at89s52单片机的时钟振荡功能,因为时钟电路为单片机提供时钟周期,如果没有时钟电路,单片机就没有时钟周期,就无法执行程序代码,单片机就无法工作。at89s52中有一个用于构成内部震荡器的高增益反相放大器,引脚xtal1和xtal2分别是该放大器的输入和输出端。这个放大器与作为反馈元第 3 章 系统硬件电路设计17件的片外石英晶体或者陶瓷谐振器一起构成自激振荡器3。如图2所示,外接石英晶体或者陶瓷谐振器以及电容c1,c2接在放大器的反馈电路中构成并联谐振电路。谐振器本身对外接电容c1、c2虽然没有十分严格的要求,但电容容量
32、的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程度以及温度的稳定性,所以本设计使用石英晶体,每个电容大小为30pf。晶振的振荡频率是1.2mhz12mhz之间,本设计选择12mhz,因为晶振的频率越高,则系统的时钟频率也就越高,单片机的运行速度也就越快。 图2 时钟振荡电路因为很多用户设计完单片机系统,并在调试的过程中,可能会出现“死机”或“程序走飞”等现象,所以本设计需要采用复位电路来使单片机复位,来防止这一现象的发生,复位电路设计的好坏,将直接影响系统的可靠性。复位电路通常采用上电自动复位和按钮复位两种方式,复位是单片机的初始化操作,除进入系统的正常初始化之外,当由于程序运
33、行出错或操作错误使系统处于死锁状态时,为摆脱困境,可以按复位键以重新启动,也可以通过监视定时器来强迫复位。只需给单片机的复位引脚rst加上大于2个机器周期的高电平就可使单片机复位3,本设计采用的是上电复位电路,其主要特点是简单,适用于简单的电路,做起来还是比较方便的。本设计采用的上电复位电路如图3所示,上电复位电路是通过外部复位电路的电容充电来实现的。当电源接通时只要vcc的上升时间不超过1ms。就可以实现自动上电复位。本设计采用时钟频率为6mhz,电容取22f,电阻取1k。第 3 章 系统硬件电路设计18 图3 上电复位电路在本设计中,当电源接通后,单片机自动复位,并且在单片机运行期间,用开
34、关操作也能使单片机复位。单片机的复位操作使单片机进入初始化状态。系统复位对于本系统是执行的第一步,使整个控制芯片回到默认的硬件状态下。单片机的复位是由reset引脚来控制的,此引脚与高电平相接超过24个振荡周期后,51单片机即进入芯片内部复位状态,而且一直在此状态下等待,直到reset引脚转为低电平后,再检查ea引脚是高电平或低电平,若为高电平则执行芯片内部的程序代码,若为低电平便会执行外部程序。3.3 a/d 转换器 adc0832 与 at89s52 单片机的接口电路3.3.1 adc0832 的介绍adc0832是美国国家半导体公司生产的一种8位分辨率、双通道a/d转换芯片。由于它体积小
35、,兼容性强,性价比高而深受单片机爱好者及企业欢迎,其目前已经有很高的普及率。adc0832具有以下特点: 8位分辨率; 双通道a/d转换; 输入输出电平与ttl/cmos相兼容; 第 3 章 系统硬件电路设计19 5v电源供电时输入电压在05v之间; 工作频率为250khz,转换时间为32s; 一般功耗仅为15mw; 8p、14pdip(双列直插) 、picc多种封装; 商用级芯片温宽为0c to +70c?,工业级芯片温宽为40 to +85 下面介绍0832的引脚功能:cs 片选使能,低电平芯片使能ch0 模拟输入通道0,或作为in+/-使用ch1 模拟输入通道1,或作为in+/-使用gn
36、d 芯片参考0电位(接地)do 数据信号输出,转换数据输出di 数据信号输入,选择通道控制clk 芯片时钟输入vcc/ref 电源输入及参考电压输入(复用) 图5 adc0832芯片adc0832 为 8 位分辨率 a/d 转换芯片,其最高分辨可达 256 级,可以适应一般的模拟量转换要求。其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在 05v 之间。芯片转换时间仅为 32s,据有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。独立的芯片使能输入,使多器件挂接和处理器控制变的更加方便。通过 di 数据输入端,可以轻易的实现通道功能的选择。这是我选择 adc0832
37、的主要原因。 第 3 章 系统硬件电路设计203.3.2 adc0832 与单片机接口电路设计adc0832 的 cs 作为选通信号,在时序图中可以看到,以 cs 置为低电平开始,一直到置为高电平结束。clk 提供时钟信号,我们要注意看 clk 的信号的箭头指向,向上为上升沿有效,向下为下降沿有效。di、do 作为数据端口。当 adc0832 未工作时其 cs 输入端应为高电平,此时芯片禁用,clk 和 do/di的电平可任意。当要进行 a/d 转换时,须先将 cs 使能端置于低电平并且保持低电平直到转换完全结束。此时芯片开始转换工作,同时由处理器向芯片时钟输入端 clk 输入时钟脉冲,do/
38、di 端则使用 di 端输入通道功能选择的数据信号。在第 1 个时钟脉冲的下沉之前 di 端必须是高电平,表示启始信号。在第 2、3 个脉冲下沉之前 di 端应输入 2 位数据(sgl、odd)用于选择通道功能,当此 2 位数据为“1”、“0”时,只对 ch0 进行单通道转换。当 2 位数据为“1”、“1”时,只对 ch1 进行单通道转换。当 2 位数据为“0”、“0”时,将 ch0 作为正输入端 in+,ch1 作为负输入端 in-进行输入。当 2 位数据为“0”、“1”时,将 ch0 作为负输入端 in-,ch1 作为正输入端 in+进行输入。在完成输入启动位、通道选择之后,就可以开始读出
39、数据,转换得到的数据会被送出二次,一次高位在前传送,一次低位在前传送,连续送出。在程序读取二个数据后,我们可以加上检验来看看数据是否被正确读取。adc0832 与单片机的接口应为 4 条数据线,分别是 cs、clk、do、di。但由于 do 端与 di 端在通信时并未同时有效并与单片机的接口是双向的,所以电路设计时可以将 do 和 di 并联在一根数据线上使用。第 3 章 系统硬件电路设计21图6 adc0832与at89s52的接口电路3.4 显示模块的设计3.4.1 显示模块的选择与介绍本设计所设计的电子秤系统需要显示一些数据,例如商品的重量,单价及其总价等等,所以本设计得采用显示模块达到
40、其功能指标,数据显示部分可以有以下两种方案供选择。的组成有以下两种方案可供选择:一是 led 数码管显示,二是采用可以设置显示重量,单价,金额等的 lcd,它具有低功耗、可视面大及抗干扰能力强等功能,其显示技术已得到广泛应用。所以本设计采用lcd1602,lcd1602 的主要技术参数:显示容量:162 个字符,芯片工作电压:4.55.5v,电流:2.0ma(5.0v),模块最佳工作电压:5.0v,字符尺寸:2.954.35(wh)mm。其引脚图如图 6 所示。第 3 章 系统硬件电路设计22图 7 lcd1602 引脚图lcd 显示器的工作原理:液晶显示器的主要材料是液态晶体。它在特定的温度
41、范围内,既具有液体的流动性,又具有晶体的某些光学特性,其透明度和颜色随电场、磁场、光照度等外界条件变化而变化。因此,用液晶做成显示器件,就可以把上诉外界条件的变化反映出来从而形成现实的效果。液晶显示模块具有体积小、功耗低、显示内容丰富等特点,现在字符型液晶显示模块已经是单片机应用设计中最常用的信息显示器件。3.4.2 lcd1602 与 at89s52 单片机接口电路的设计本设计中的 lcd 液晶显示模块采用 lcd1602 型号,具有很低的功耗,正常工作时电流仅 2.0ma/5.0v。通过编程实现自动关闭屏幕能够更有效的降低功耗。lcd1602 分两行显示,每行可显示多达 16 个字符。lc
42、d1602 液晶模块内部的字符发生存储器(cgrom)已经存储了 160 个不同的点阵字符图形,通过内部指令可实现对其显示多样的控制,并且还能利用空余的空间自定义字符。这些都比较符合本系统的要求。本设计中 at89s52 的 p0.0 p0.7 口分别与lcd1602 的 db0 db7 口相接作为数据线,每个口接上拉电阻后接+5v 电源,要求从电源高电平引出的电阻接到输出。上拉电阻同时也起稳定信号的作用,如果太小那么功耗比较大,太大的话就起不到上拉的作用了,所以本设计选择上第 3 章 系统硬件电路设计23拉电阻阻值为 1k。系统中的 vss 和 e1 接地电源,vdd 和 e2 接+5v 电
43、源,e 端为使能端,当 e 端由高电平跳变成低电平时,液晶模块执行命令,rs 为寄存器选择,rw 为读写信号线,高电平时进行读操作,低电平时进行写操作。当rs 和 rw 共同为低电平时可以写入指令或者显示地址,当 rs 为低电平 rw 为高电平时可以读忙信号,当 rs 为高电平 rw 为低电平时可以写入数据。lcd1602与 at89s52 的接线图如图 7 所示。图 8 lcd1602 与 at89s52 的接线图3.5 键盘电路与 at89s52 单片机接口电路的设计3.5.1 键盘与单片机的连接方式选择通常,键盘有编码和非编码两种。编码键盘通过硬件电路产生被按按键的键码和一个选通脉冲。选
44、通脉冲可作为 cpu 的中断请求信号。这种键盘使用方便,所需程序简单,但硬件电路复杂,常不被单片机采用。非编码键盘按组成结构又可分为独立式键盘和矩阵式键盘。独立式键盘的工作过程与矩阵式键盘类似,无论是硬件结构还是软件设计都比较简单。第 3 章 系统硬件电路设计24s4s4s3s3s2s2 p1.4p1.4 p1.5p1.5 p1.6p1.6 p1.7p1.7 89s5289s52+5v+5v图9 独立式键盘接口 s1s1独立式键盘接口特点:每个按键占用一条 i/o 线,当按键数量较多时,i/o口利用率不高,但程序编制简单。适用于所需按键较少的场合。本设计中需要预置单价,所以需要采用键盘电路模块
45、来预置单价,本设计中键盘电路模块采用键盘专用芯片 74c922 及 16 个按键矩阵组。在本设计的电子秤系统中,带有 16 个按键矩阵组设置,其中 09 数字键用于输入单价,还有确认,点,删除和清零的功能,确认用于确认出入的单价,点是用来输入小数点,删除用于删除错误的输入,当计算完一种物品的价格后清除所有的结果,这是用到清零键,此外还设有 2 个备用键。本设计采用专用键盘管理芯片74c922。74c922 为 cmos 工艺技术制造,工作电压为 315v,“二键锁定”功能,编码输出为三芯输出,可直接与微处理器数据线相连,内部振荡器完成44 矩形键盘扫描。键盘电路模块与 at89s52 单片机得
46、接口电路如图 9 所示。第 3 章 系统硬件电路设计25图 10 矩阵键盘电路模块与 at89s52 单片机接口电路图矩阵键盘的特点:电路连接复杂,但提高了 i/o 口利用率,软件编程较复杂。适用于需使用大量按键的场合。3.5.2 单片机对键盘的扫描在单片机的运行过程中,何时进行键盘扫描和处理,可有下列三种情况:1.查询方式:单片机通过调用键盘扫描子程序,查询有无键按下。2.定时扫描方式:每隔一定时间执行一次键盘扫描子程序。3.中断方式:每当有键闭合时才向 cpu 发出中断请求,中断服务时进行键盘扫描和处理。单片机通过键盘扫描判断有无键按下,当扫描到有键按下时再进行下一步处理,否则退出键盘处理
47、程序。独立式键盘扫描只需读取 io 口状态,而矩阵式键盘描通常有两种实现方法:逐行扫描法和线反转法。逐行扫描法。依次从第一至最末行线上发出低电平信号, 如果该行线所连接的键没有按下的话, 则列线所接的端口得到的是全“1”信号, 如果有键按下的话, 则得到非全“1”信号。 第 3 章 系统硬件电路设计21线反转法。 线反转法也是识别闭合键的一种常用方法, 该法比行扫描速度快, 但在硬件上要求行线与列线外接上拉电阻。先将行线作为输出线, 列线作为输入线, 行线输出全“0”信号, 读入列线的值, 那么在闭合键所在的列线上的值必为0;然后从列线输出全“0”信号,再读取行线的输入值,闭合键所在的行线值必
48、为 0。这样,当一个键被按下时, 必定可读到一对唯一的行列值。再由这一对行列值可以求出闭合键所在的位置。 3.5.3 键盘接口和键输入软件中应解决的一个问题键盘接口和键输入软件中应注意消抖。由于按键按下时的机械动作,在按键被按下或松开的瞬间,其输出电压会产生波动,称为键的抖动。键稳定键按下后沿抖动前沿抖动图11 键合断时的电压抖动为确保每按一次键单片机只进行一次处理,使键盘可靠地工作,必须消除按键抖动。消抖方法有硬件消抖和软件延时两种。硬件消抖法:就是在键盘中附加去抖动电路,从根上消除抖动产生的可能性。 右图所示电路实际上是由 r-s 触发器构成的单脉冲电路。当按钮开关按下时 q 端输出低电平
49、,当开关松开时 q 端恢复高电平,即输出一第 3 章 系统硬件电路设计22个负脉冲,以此消除抖动。q q图12 硬件去抖动电路+5v& & &q q软件消抖法:键按下的时间与操作者的按键动作有关,约为十分之几到几秒不等。而键抖动时间与按键的机械特性有关,一般为 510ms 不等。软件消抖法即是采用延时(一般延时 1020ms)的方法,以避开按键的抖动,即在按键已稳定地闭合或断开时才读出其状态。 3.6 过载报警部分的方案过载报警部分的方案智能仪器一般都具有报警和通讯功能,报警主要用于系统运行出错、当测量的数据超过仪表量程或者是超过用户设置的上下限时为提醒用户而设置。在本系统中,设置报警的目的就
50、是在超出电子秤测量范围时,发出声光报警信号,提示用户,防止损坏仪器。超限报警电路是由单片机的 i/o 口来控制的,当称重物体重量超过系统设计所允许的重量时,通过程序使单片机的 i/o 值为高电平,从而三极管导通,使蜂鸣器 speaker 发出报警声,同时使二极管发光。100ms100ms10ms10ms10ms10ms图 13 软件消抖法延时区间示意图图键抖动时间键抖动时间第 3 章 系统硬件电路设计23第 4 章 系统软件程序设计程序设计是一件复杂的工作,为了把复杂的工作条理化,就要有相应的步骤和方法。其步骤可概括为以下三点:首先需要分析系统控制要求,确定算法:对复杂的问题进行具体的分析,找
51、出合理的计算方法及适当的数据结构,从而确定编写程序的步骤。这是能否编制出高质量程序的关键。其次是根据算法画流程图:画程序框图可以把算法和解题步骤逐步具体化,以减少出错的第 3 章 系统硬件电路设计可能性。最后就是编写程序:根据程序框图所表示的算法和步骤,选用适当的指令排列起来,构成一个有机的整体,即程序。程序数据的一种理想方法是结构化程序设计方法。结构化程序设计是对利用到的控制结构类程序做适当的限制,特别是限制转向语句(或指令)的使用,从而控制了程序的复杂性,力求程序的上、下文顺序与执行流程保持一致性,使程序易读易理解,减少逻辑错误和易于修改、调试。根据系统的控制任务,监控软件采用模块技术设计
52、,根据系统功能,将软件分为若干个功能相对独立的模块,为每一个模块设计程序流程图。该电子秤功能程序模块包括:a/d 转换启动及数据读取程序设计、显示子程序设计、键盘扫描子的程序设计、价格计算子程序设计、以及报警子程序设计等。主程序的设计主程序的设计主程序是系统信息处理的关键,主程序模块主要完成编程芯片的初始化及按需要调用各模块(子程序),在系统初始化过程中,初始化程序将 ram 的 30h 到 5fh 单元清零,rxd 引脚置成低电平,防止误报警,同时将系统设置成 2.5kg 量程,并写 2.5kg 量程标志。设计流程图如图 5-1 所示。主程序主要完成编程芯片的初始化及按需要调用各子程序,上电
53、启动后,系统初始化,单片机读取模数转换器的数据,然后调用显示子程序显示重量,同时扫描键盘子程序,调用价格计算子程序计算价格并显示出来。第 3 章 系统硬件电路设计开开 始始初初始始化化读读取取数数据据调调用用显显示示子子程程序序调调用用键键盘盘子子程程序序价价格格计计算算子子程程序序显显示示价价格格图 4-1 电子秤系统程序设计流程图子程序的设计子程序的设计主程序按需要调用各子程序。系统子程序主要包括 a/d 转换启动及数据读取程序设计、显示子程序设计、键盘扫描子的程序设计、价格计算子程序设计、以及报警子程序设计等。模数转换子程序的设计模数转换子程序的设计a/d 转换启动及数据读取子程序设计主
54、要是上电运行后,adc0832 完成初始化,把经放大的称重传感器传递过来的模拟信号转换成数字信号并传递到单片机所涉及到的程序设计设计流程图如图 4-2 所示。adc0832 进行模数转换时,须现将 cs 是能端置于低电平并且保存低电平直到完全结束。芯片开始转换工作,同时由处理器向芯片时钟输入端 clk 输入时钟脉冲,do 和 di 端则使用di 端输入通道功能选择的数据信号。在第 1 个时钟脉冲的下沉之前 di 端必须是高电平,表示启始信号。在第 2、3 个脉冲下沉之前 di 端应输入 2 位数据用于选择通道功能,到第 3 个脉冲的下沉之后 di 端的输入电平就失去输入作用,此后 do/di
55、端则开始利用数据输出 do 进行转换数据的读取。从第 4 个脉冲下沉开始由 do 端输出转换数据最高位 data7,随后每一个脉冲下沉 do 端输出下一位数据。直到第 11 个脉冲时发出最低位数据 data0,一个字节的数据输出完成。从第 11 个字节的下沉输出 data0。随后输出 8 位数据,到第 19 个脉冲时数据输第 3 章 系统硬件电路设计出完成,也标志着一次 a/d 转换的结束23。最后将 cs 置高电平禁用芯片 。开开 始始a ad dc c0 08 83 32 2初初始始化化转转换换是是否否完完成成启启动动模模数数转转换换数数据据存存储储数数据据显显示示yn图 4-2 a/d
56、转换启动及数据读取程序流程图键盘扫描子程序的设计键盘扫描子程序的设计键盘扫描子程序主要是扫描键盘的输入,调用显示子程序显示,输出输入的参数,计算总价是调用价格计算子程序计算总价格。键盘电路设计成 34 矩阵式,由键盘编码方式可以得出 1、2、3、4、5、6、7、8、9、0及清零和计价各键对应的键值:0 x31,0 x32,0 x33,0 x34,0 x35,0 x36,0 x37,0 x38,0 x39,0 x3d,0 x30,0 x2e。在程序中可以先判断按键编码,然后根据编码将键盘代表的数值送到相应的存储单元,再进行功能选择或数据处理。第 3 章 系统硬件电路设计3 34 4键键盘盘l l
57、c cd d初初始始化化字字符符显显示示输输入入完完毕毕界界面面字字符符显显示示有有功功能能键键按按下下有有返返回回键键按按下下调调用用lcd显显示示原原地地跳跳转转原原地地跳跳转转ynny图 4-3 键盘扫描子程序流程图显示子程序的设计显示子程序的设计单片机应用系统通常都需要进行人机对话。其中包括人对应用系统的状态干预与数据输入,应用系统必须向操作者显示状态与运行结果等信息。显示器是单片机应用系统中最常用的人机交互设备显示子程序是字符显示,首先初始化,输出一些基本信息,然后调用事先编好的键盘显示子程序,输出显示命令,显示过程中还需要调用延时子程序。当输入通道采集了一个信号,或人为的键入一个值
58、,或系统与仪表出现异常情况显示管理软件应及时调用显示驱动程序模块,用来更新当前数据显示符号。第 3 章 系统硬件电路设计设计显示子程序的流程图如下图 4-4 所示:开开 始始l lc cd d初初始始化化显显示示w we ei ig gh ht t: p pr ri ic ce e:价价格格计计算算子子程程序序称称 量量扫扫描描键键盘盘输输入入是是否否清清零零ynyn图 4-4 显示子程序流程图价格计算价格计算子程序的设计子程序的设计价格计算子程序由键盘计价键控制,当输入单价后,在没有清零的情况下,点计价键,计算出总价后,调用显示子程序显示出中重量。该子程序中利用各工作寄存器 2 组,数据存在
59、以 40h 单元为首址的连续单元中。价格计算公式总价=单价重量。这个程序需要两次的数制转换,输入单价后需要将单价转化为二进制后才能与二进制的重量进行计算。计算后的结果必须转换为十进制数显示出来。第 3 章 系统硬件电路设计 开开 始始输输入入单单价价单单位位转转化化为为二二进进制制结结 束束调调用用显显示示子子程程序序单单位位转转化化为为十十进进制制重重量量单单价价= =总总价价取取重重量量值值图 4-5 价格程序流程图第 3 章 系统硬件电路设计报警子程序的设计报警子程序的设计因为压力传感器的所受压力有极限,所以称重量必须有在一定范围内,超过重量时必须有报警程序。主程序初始化设定阈值为 2.
60、5kg,报警子程序将设定的阈值与实时显示的值进行比较,先比较高位,若高位大,即设定值小于实时显示的值,这时将 rxd 置为 1,将发光二极管点亮,且使蜂鸣器发出声音。若高位相等,就比较低位,同理若设定值低位小于实际显示值,将 rxd 置为1,将发光二极管点亮,且使蜂鸣器发出声音。这就需要一段比较程序以及一小段置 1 清 0 程序。开开 始始与与阈阈值值相相等等返返 回回报报 警警a a/ /d d高高位位大大a a/ /d d低低位位大大与与阈阈值值相相等等nynynnyy图 4-6 报警子程序流程图第 4 章 系统软件程序设计系统调试系统调试程序的汇编、连接、执行来发现程序中存在的语法错误与
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《可怕的白色污染》(教学设计)-2023-2024学年四年级下册综合实践活动粤教版
- 七年级历史下册 第二单元 辽宋夏金元时期 民族关系发展和社会变化 第11课 元朝的统治教学设计 新人教版
- 2024年五年级数学上册 四 走进动物园-简易方程信息窗4列方程解应用题练习教学设计 青岛版六三制
- 七年级语文下册 第一单元 2 说和做-记闻一多先生言行片段第2课时教学设计 新人教版
- 2024-2025学年高中物理 第四章 电磁感应 4 法拉第电磁感应定律(1)教学设计 新人教版选修3-2
- 27故事二则 扁鹊治病 教学设计-2024-2025学年语文四年级上册统编版
- 7妈妈睡了教学设计-2024-2025学年统编版语文二年级上册
- 一年级品德与社会下册 和小树一起长大2教学设计 浙教版
- 05人美版七年级下册第3课大家动手做条龙教学设计
- 2024秋八年级英语上册 Unit 7 Will people have robots Section B 2(3a-Self check)教学设计 (新版)人教新目标版
- 西方文论概览(第二版)-第九章课件
- “双减”政策(2023年陕西中考语文试卷非连续性文本阅读题及答案)
- 数据中心储能应用需求技术报告2024
- 2024年中考语文复习分类必刷:非连续性文本阅读(含答案解析)
- 四年级语文国测模拟试题 (1)附有答案
- DL∕ T 949-2005 水工建筑物塑性嵌缝密封材料技术标准
- DLT448-2000-14执行标准与规范
- 河南科学技术出版社小学信息技术六年级上册教案
- 基金应知应会专项考试题库(证券类190题)附有答案
- 2024年红十字应急救护知识竞赛考试题库500题(含答案)
- 精神科手卫生与患者关怀
评论
0/150
提交评论