




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、西安邮电大学毕业论文 基于单片机的简易电子称 作 者:梁忠涛 院 系:自动化学院 专 业:测控技术与仪器 班 级:测控 1103 指导老师:周有 英文摘要 摘要 此次设计主要是以单片机 AT89S52 为核心设计的简易电子秤。 本设计主要分为 传感器部分、单片机中央处理部分、 LCD 显示部分、键盘输入部分。利用压力传感器采 集信号, DS1602 显示单价和质量。输出信号输入到中央处理部分 AT89S52 的芯片 ,通 过信号放大和 AD 转换,编程对信号进行处理传送到 1602 液晶显示屏显示相关数据, 按键电路通过按键对单价进行设置。本设计结构简单,具有抗干扰能力强、成本便宜、 可扩展性
2、强等特点。 矚慫润厲钐瘗睞枥庑赖。 关键词 :单片机 压力传感器 液晶显示 电子秤 II 英文摘要 Topic: Hardware Design of Electronic Scale Based on Single Chip Microcomputer 聞創沟燴鐺險爱氇谴净。 Cai Liming 2008926068, Automation major Abstract This hardware design of electronic scale is mainly based on the 51 series single-chip AT89S52 as control core,
3、realizes the basic control function 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 an
4、d power supply system four parts. 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
5、 liquid crystal display, the main 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,
6、 weighing range for 0.5-10kg.The whole system has the advantages of simple structure, convenient use, completefunction, high precision, has the certain development value.残骛楼諍锩瀨濟溆塹籟。 Keywords : microcontroller pressure sensor liquid crystal display electronic scale 酽锕极額閉 镇桧猪訣锥。 II 目录 目录 第 1章 引言 1.彈 贸
7、摄尔霁毙攬砖卤庑。 1.1 选题的目的和意义 1. 謀荞抟箧飆鐸怼类蒋薔。 1.1.1 目的 错. 误!未定义书签。 厦礴恳蹒骈時盡继價骚。 1.2研究现状综述 1. 鹅娅尽損鹌惨歷茏鴛賴。 第 2 章 系统总体设计 4. 籟丛妈羥为贍偾蛏练淨 1.1.2 意义 错. 误!未定义书签。 茕桢广鳓鯡选块网羈泪。 2.1 系统设计要求 4. 預頌圣鉉儐歲龈讶骅籴。 2.2 系统设计思想 4. 渗釤呛俨匀谔鱉调硯錦。 2.3 设计要完成的任务 5. 铙誅卧泻噦圣骋贶頂廡。 第 3 章 .系统硬件电路设计 6.擁 締凤袜备訊顎轮烂蔷。 3.1 数据采集模块电路的设计 6. 贓熱俣阃歲匱阊邺镓騷。 3.
8、2 控制模块的选型与研究 1.3 坛摶乡囂忏蒌鍥铃氈淚。 3.2.1 选择单片机 1.3 蜡變黲癟報伥铉锚鈰赘。 3.2.2 AT89S52单片机芯片的学习 1. 4 買鲷鴯譖昙膚遙闫撷凄。 3.3 A/D 转换器 ADC0832 与 AT89S52单片机的接口电路 1 8 綾镝鯛駕櫬鹕踪韦辚糴。 3.3.1 ADC0832 的介绍1.8 驅踬髏彦浃绥譎饴憂锦。 3.3.2 ADC0832 与单片机接口电路设计 2. 0 猫虿驢绘燈鮒诛髅貺庑。 3.4 显示模块的设计 2.1. 锹籁饗迳琐筆襖鸥娅薔。 3.4.1 显示模块的选择与介绍 2. 1 構氽頑黉碩饨荠龈话骛。 3.4.2 LCD160
9、2 与 AT89S52单片机接口电路的设计 2 2 輒峄陽檉簖疖網儂號泶。 3.5 键盘电路与 AT89S52 单片机接口电路的设计 2 3 尧侧閆繭絳闕绚勵蜆贅。 3.5.1 键盘与单片机的连接方式选择 2. 3 识饒鎂錕缢灩筧嚌俨淒。 3.5.2 单片机对键盘的扫描 2.5 凍鈹鋨劳臘锴痫婦胫籴。 3.5.3 键盘接口和键输入软件中应解决的一个问题 2 1 恥諤銪灭萦欢煬鞏鹜錦。 第 4 章 系统软件程序设计 2.3 鯊腎鑰诎褳鉀沩懼統庫。 4.1 主程序流程图: 错 误!未定义书签。 硕癘鄴颃诌攆檸攜驤蔹。 4.2 AD 转换流程图 错 误!未定义书签。 阌擻輳嬪諫迁择楨秘騖。 III
10、中文摘要 4.3 液晶显示流程图 错 误!未定义书签。 氬嚕躑竄贸恳彈瀘颔澩。 4.4 单片机对矩阵式键盘接口处理过程如下图所示: 错误!未定义书签。 釷鹆資贏車贖 孙滅獅赘。 4.5 系统原理电路图 2.7. 怂阐譜鯪迳導嘯畫長凉 第 5章 结 论 2.8. 谚辞調担鈧谄动禪泻類。 参考文献 2.9. 嘰觐詿缧铴嗫偽純铪锩。 致谢 3.0. 熒绐譏钲鏌觶鷹緇機库 附录:软件程序设计 3.1. 鶼渍螻偉阅劍鲰腎邏蘞。 IV 第 1章 引 言 第1章 引 言 1.1 选题的目的和意义 如今,电子产品变得越来越丰富,给人们带来了很多很多的方便,其中电子 秤成了人们生活中不可缺少的一部分。大大小小的
11、市场电子秤能够完成许多工 作,为人们节省了时间,提高了工作效率。 纣忧蔣氳頑莶驅藥悯骛。 电子秤不但能很精确的称出商品的重量, 还能去除皮重,累计所称物品重量, 输入物品单价可快速的计算出金额,可以说非常的智能化,而且非常的精确。 由 此,顾客在购物的时候非常的放心,商家的效益也提高了,所以有了电子秤,顾 客买的放心,商家也卖的开心了。 颖刍莖蛺饽亿顿裊赔泷。 而目前市场上电子秤产品的整体水平不高, 部分小型企业产品质量差且技术 力量薄弱,设备不全,缺乏产品的开发能力,产品质量在低水平徘徊。因此,本 设计的目的在于有针对性地开发出一套有实用价值的电子秤系统, 从技术上克服 上述诸多缺点, 改善
12、电子秤系统在应用中的不足之处。 本设计的控制功能包括基 本的称重功能,显示功能,和计算功能。由于系统资源丰富,还可以方便的拓展 其他应用。 濫驂膽閉驟羥闈詔寢賻。 在本次设计中,涉及到传感器技术,单片机技术,模拟电子技术,数字电子 技术等的多种学科知识的综合运用。 通过本设计, 能提高本专业各个学科综合知 识的实际运用能力,提高实际动手能力,提高自身的科学性、系统性、及全面性 的综合设计素质。并且, 可以通过此次的毕业设计, 较好的掌握硬件开发的工作 流程及步骤,学会使用汇编语言、 C 语言编写程序, 我相信通过这次对电子秤控 制系统的设计, 一定能够学到丰富的知识并对电子产品有更深一层的了解
13、, 为将 来参加实际工作做好充分的准备。 銚銻縵哜鳗鸿锓謎諏涼。 1.2 研究现状综述 1.2.1 国内发展情况 50 年代中期电子技术的渗入推动了衡器制造业的发展。 60 年代初期出现机 电结合式电子衡器以来,经过 40 多年的不断改进与完善,我国电子衡器从最初 的机电结合型发展到现在的全电子型和数字智能型。 电子衡器制造技术及应用得 第 1章 引 言 到了新发展。 电子称重技术从静态称重向动态称重发展: 计量方法从模拟测量向 数字测量发展; 测量特点从单参数测量向多参数测量发展, 特别是对快速称重和 动态称重的研究与应用。电子称重技术基本达到国际上 20 世纪 90 年代中期的 水平 ,少
14、数产品的技术已处于国际领先水平。 国内的电子秤市场中 ,1009 左右量程 的电子秤精度一般为 0.019 即 10mg 。在研究方法上 ,电子称重系统的工作原理一 般是将作用在承载器上的质量或力的大小 ,通过压力传感器转换为电信号 ,并通过 控制电路来处理该电信号。 但就总体而言, 我国电子衡器产品的数量和质量与工 业发达国家相比还有较大差距, 其主要差距是技术与工艺不够先进、 工艺装备与 测试仪表老化、开发能力不足、产品的品种规格较少、功能不全、稳定性和可靠 性较差等。 挤貼綬电麥结鈺贖哓类。 1.2.2 发展趋势 通过分析近年来电子衡器产品的发展情况及国内外市场的需求, 电子衡器总 的发
15、展趋势是小型化、模块化、集成化、智能化;其技术性能趋向是速率高、准 确度高、稳定性高、 可靠性高;其功能趋向是称重计量的控制信息和非控制信息 并重的 “智能化 ”功能;其应用性能趋向于综合性和组合性。 赔荊紳谘侖驟辽輩袜錈。 1.3 论文主要研究内容 本文主要是设计的内容是简易电子秤,它用单片机作为处理核心,信号由压力传感器 感受后经放大器放大和模数转换后输入到单片机处理,同时该电子秤具有 LCD 显示和键盘 输入。 塤礙籟馐决穩賽釙冊庫。 该电子秤具体实现的功能是能够测量一定质量内物体的质量, 能够利用键盘输入价格, 具有清零,可以计算总价,并能通过 LCD 直接显示出来,超过所测重量时能够
16、报警。 裊樣祕 廬廂颤谚鍘羋蔺。 第 2 章 系统总体设计 第 2 章 系统总体设计 2.1 系统设计要求 设计系统实现的功能如下: 1) 要求电子秤可称体重范围 0.5-10kg; 2) 具有键盘输入 ; 3) 价格计算功能 ; 2.2 系统设计思想 本设计采用压力传感器作信号采集部分, AT89S52做中央处理器,液晶屏显 示。设计满足市场需求的实用数显电子称。利用单片机, 对压力传感器传来的信 号进行放大和 A/D 转换,误差修正处理并在液晶上形成质量显示。 前端信号处理 时,选用放大、 A/D 转换等措施,尤其在显示方面采用液晶显示器。这种方案不 仅加强了人机交换的能力, 而且满足设计
17、要求。 可以显示所称量的物体信息相关 内容。目前单片机技术比较成熟, 功能也比较强大, 被测信号经放大整形后送入 单片机,由单片机对测量信号进行处理并根据相应的数据关系显示出被测物体的 重量。由于系统需要的按键较多, 因此要采用 4*4 矩阵键盘。 单片机控制适合于 功能比较简单的控制系统 ,而且其具有成本低 ,功耗低, 体积小算术运算功能强 , 技术成熟等优点。 仓嫗盤紲嘱珑詁鍬齊驁。 第 2 章 系统总体设计 图 1 系统原理框图 2.3 设计要完成的任务 根据单片机最小系统、外围电路的要求和整体设计思路,本设计要做的具体 的工作主要有一下几个方面: 1)按照初步方案画出硬件框图、电路图及
18、制板。 2)根据系统设计要求及硬件框图确定软件流程图并编写相应软件。 3)焊接电路以及功能电路的软硬件调试。 4)系统软硬件联调。 第 3 章 系统硬件电路设计 第 3 章 . 系统硬件电路设计 3.1 数据采集模块电路的设计 数据采集模块电路包括:( 1)、压力传感器输出信号的放大电路部分,压 力传感器将接收到的压力信号转变为电信号输出, 放大电路的作用就是将其电信 号进行放大处理。( 2)、A/D转换器模块,因为单片机只能接收数字信号,而前 面输出的是模拟信号, A/D转换器的作用就是将模拟信号转变为数字信号,送入 单片机进行处理。此外还包括 A/D转换器与单片机的接口电路部分。 绽萬璉轆
19、娛閬蛏鬮 绾瀧。 采用传感器方案: 电阻应变式传感器 电阻应变式 称重传感器是利用电阻应变片变形时其电阻也随之改变的原理工作的, 根 据传感器理论可知,设长为 L、截面积为 S、电阻率为 的电阻丝,已知其阻值为: 骁顾燁鶚 巯瀆蕪領鲡赙。 (2-1) 当电阻丝两端有机械应力 F 时, 、L、S 都会发生变化,从而导致电阻发生变化。 这种应变片式传感器是基于材料的电阻应变效应,电阻应变片即可单独作为传感器使 用,又能作为敏感元件结合弹性元件构成力学量传感器。 电阻应变片把机械应变信号转换为 R/R 后,由于应变量及相应电阻变化一般都很微小,难以直接精确测量,且不便处理。因 此, 要采用转换电路把
20、应变片的 R/R 变化转换成电压或电流变化。 其转换电路常用测量电 桥 4。如图 2-2 所示为常见的直流供电的平衡差动测量电桥:瑣钋濺暧惲锟缟馭篩凉。 第 3 章 系统硬件电路设计 Eout 图 2-2 直流供电的平衡差动测量电桥 图中, 为供桥电源电压, 当初始有 时,则电桥输出电压或电流为零, 这时电桥处于平衡状态。其测量原理:用应变片测量时,将其粘贴在弹性体上。当弹性体受 力变形时, 应变片的敏感栅也随同变形, 其电阻值发生相应变化, 通过转换电路转换为电压 或电流的变化。 由于内部线路采用惠更斯电桥, 当弹性体承受载荷产生变形时, 输出信号电 压可由下式给出: 鎦诗涇艳损楼紲鯗餳類。
21、 R2 R4 (R2 R4) R1 R1 R2 R2 R3 R4 Ein R3 R4 (2-2) 本文的目的是设计一简易电子秤,最大称重约为 5 千克,考虑到与其相配置的各种电 路的设计的难易程度和设计性价比,最终选择了CZAF-605 8 电阻应变式称重传感器,其称 重规模为 5kg。 栉缏歐锄棗鈕种鵑瑶锬。 本设计中选用最终方案我们选择的是 NS-TH1系列压力传感器, 额定载荷 10Kg,该压力传感器均采用全桥式等臂电桥。 本设计采用的惠斯登电桥具有很多 优点,如可以抑制温度变化的影响, 可以抑制侧向力干扰, 可以比较方便的解决 称重传感器的补偿问题等, 又因为全桥式等臂电桥的灵敏度最高
22、, 各臂参数一致, 各种干扰的影响容易相互抵消。 压力传感器实际上是一种将质量信号转变为可测 量的电信号输出的装置 4 。用传压感器首先要考虑传感器所处的实际工作环境, 这点对本系统的正确使用传感器至关重要, 它关系到整个系统能否正常工作以及 它的安全和使用寿命, 乃至整个衡器的可靠性和安全性。 而传感器检测电路的功 能是把电阻应变片的电阻变化转变为电压输出。 辔烨棟剛殓攬瑤丽阄应。 12 第 3 章 系统硬件电路设计 3.2. 控制模块的选型与研究 3.2.1 选择单片机 选择单片机型号的出发点有以下几个方面: 1、市场货源 系统设计者只能在市场上能够提供的单片机中选择, 特别是作为产品大批
23、量生产 的应用系统,所选的单片机型号必须有稳定、充足的货源。 峴扬斕滾澗辐滠兴渙藺。 2、单片机性能 应根据系统的功能要求和各种单片机的性能, 选择最容易实现系统技术指标的型 号,而且能达到较高的性能价格比。单片机性能包括片内硬件资源、运行速度、 可靠性、 指令系统功能、 体积和封装形式等方面。 影响性能价格比的因素除单片 机的性能价格外,还包括硬件和软件设计的容易程度、相应的工作量大小, 以及 开发工具的性能价格比。 詩叁撻訥烬忧毀厉鋨骜。 3、研制周期 在研制任务重、 时间紧的情况下,还要考虑所选的单片机型号是否熟悉,是 否能马上着手进行系统的设计。与研制周期有关的另一个重要因素是开发工具
24、, 性能优良的开发工具能加快系统地研制进程。 AT89S 系列单片机是继 AT89C系 列之后推出的功能更强的新产品。 AT89S系列与 AT89C系列相比,运算速度有了 较大的提高, 它的静态工作频率为 033MH,z 片内集成有双数据指针 DPTR、定时 监视器 ( 看门狗 )、低功耗休闲状态及关电方式、 关电方式下的中断恢复等诸多功 能,极大地满足了各种不同的应用要求。 AT89S52单片机是 AT89S系列中的增强 型高档机产品, 它片内存储器容量是 AT89S51的一倍,即片内 8KB的 Flash 序存 储器和 256B的 RAM。另外,它还增加了一个功能极强的、具有独特应用的 1
25、6 位 定时计数器等多种功能。 在工程应用中 AT89S52有一显著的优势: 不需要烧写 器,只借助 PC 机的并口输出和极为简单的下载电路,便可将程序通过串行方式 写入单片机。 并且下载电路可设计在系统中, 可以随时修改单片机的软件而不对 硬件做任何改动。 则鯤愜韋瘓賈晖园栋泷。 由此,通过对目前主流型号的比较, 我们最终选择了 AT89S52通用的普通单片机 13 第 3 章 系统硬件电路设计 来实现系统设计。 3.2.2 AT89S52 单片机芯片的学习 功能特征描述 AT89S52是一种低功耗、高性能 CMOS8位微控制器,具有 8K 在系统可编程 Flash 存储器。 使用 Atme
26、l 公司高密度非易失性存储器技术制造, 与工业 80C51 产品指令和引脚完全兼容。 片上 Flash 允许程序存储器在系统可编程, 亦适于常 规编程器。在单芯片上,拥有灵巧的 8 位 CPU 和在系统可编程 Flash ,使得 AT89S52 为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52 具有以下标准功能: 8k 字节 Flash ,256字节RAM,32 位I/O 口线,看门狗定 时器,2 个数据指针,三个 16 位定时器/计数器,一个 6向量 2级中断结构, 全双工串行口,片内晶振及时钟电路。另外, AT89S52 可降至 0Hz 静态逻辑操 作,支持 2 种软件
27、可选择节电模式。空闲模式下, CPU停止工作,允许 RAM、定 时器/ 计数器、串口、中断继续工作。掉电保护方式下, RAM内容被保存,振荡 器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。 胀鏝彈奥秘孫戶 孪钇賻。 引脚功能 VCC:电源 GND: 接地 P0口: P0 口是一个 8 位漏极开路的双向 I/O 口。作为输出口,每位能驱动 8个 TTL逻辑电平。对 P0端口写“ 1”时,引脚用作高阻抗输入。当访问外部程 序和数据存储器时, P0口也被作为低 8 位地址/数据复用。在这种模式下, P0具 有内部上拉电阻。在 flash 编程时, P0口也用来接收指令字节;在程序校验时
28、, 输出指令字节。程序校验时,需要外部上拉电阻。 鳃躋峽祷紉诵帮废掃減。 P1 口:P1 口是一个具有内部上拉电阻的 8 位双向 I/O 口,p1 输出缓冲器 能驱动 4 个 TTL 逻辑电平。对 P1 端口写“ 1”时,内部上拉电阻把端口拉高, 此时可以作为输入口使用。 作为输入使用时, 被外部拉低的引脚由于内部电阻的 原因,将输出电流( IIL )。此外, P1.0和P1.2分别作定时器 /计数器 2的外部 计数输入( P1.0/T2 )和时器/计数器 2的触发输入( P1.1/T2EX),具体如下表 14 第 3 章 系统硬件电路设计 所示。在 flash 编程和校验时, P1 口接收低
29、 8 位地址字节。 稟虛嬪赈维哜妝扩踴粜。 表 1 : 引脚号 第二功能 P1.0 T2(定时器 / 计数器 T2的外部计数输入),时钟输出 P1.1 T2EX(定时器 /计数器T2的捕捉/ 重载触发信号和方向控 制) P1.5 MOS(I 在系统编程用) P1.6 MISO(在系统编程用) P1.7 SCK(在系统编程用) P2口:P2 口是一个具有内部上拉电阻的 8 位双向I/O 口,P2 输出缓冲器 能驱动4 个TTL 逻辑电平。对P2 端口写“ 1”时,内部上拉电阻把端口拉高, 此 时可以作为输入口使用。 作为输入使用时, 被外部拉低的引脚由于内部电阻的原 因,将输出电流( IIL )
30、。在访问外部程序存储器或用 16位地址读取外部数据存 储器(例如执行 MOVX DPT)R时, P2 口送出高八位地址。在这种应用中, P2 口 使用很强的内部上拉发送 1。在使用8位地址(如 MOVX R)I 访问外部数据存储器 时,P2口输出P2锁存器的内容。 在flash 编程和校验时, P2口也接收高 8位地址字 节和一些控制信号。 陽簍埡鲑罷規呜旧岿錟。 P3口:P3 口是一个有内部上拉电阻的 8 位双向 I/O 口,p2 输出缓冲器能驱 动4 个TTL 逻辑电平。对P3 端口写“ 1”时,内部上拉电阻把端口拉高, 此时可 以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电
31、阻的原因, 将输出电流( IIL )。P3口亦作为 AT89S52特殊功能(第二功能)使用,如下表所 示。在 flash 编程和校验时, P3口也接收一些控制信号。 沩氣嘮戇苌鑿鑿槠谔應。 表2: 引脚号 第二功能 P3.0 RXD(串行输入) P3.1 TXD(串行输出) P3.2 INT0 ( 外部中断 0) 15 第 3 章 系统硬件电路设计 P3.3 INT1 ( 外部中断 1) P3.4 T0(定时器 0外部输入) P3.5 T1定时器 1外部输入) P3.6 WR ( 外部数据存储器写选通 ) P3.7 RD ( 外部数据存储器写选通 ) RST:复位输入。晶振工作时, RST脚持
32、续 2 个机器周期高电平将使单片机复 位。看门狗计时完成后, RST 脚输出96 个晶振周期的高电平。特殊寄存器 AUXR地( 址8EH)上的 DISRTO位可以使此功能无效。 DISRTO默认状态下,复位高电平有效。 钡嵐縣緱虜荣产涛團蔺。 ALE/ PROG : 地址锁存控制信号( ALE)是访问外部程序存储器时,锁存低 8 位地址的输出脉冲。在 flash 编程时,此引脚 ( PROG ) 也用作编程输入脉冲。 在一般情况下, ALE 以晶振六分之一的固定频率输出脉冲, 可用来作为外部定时 器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会 跳过。如果需要,通过将地
33、址为 8EH的SFR的第0位置 “1”, ALE操作将无效。这 一位置 “1”, ALE 仅在执行 MOVX或 MOV指C令时有效。否则, ALE 将被微弱拉 高。这个 ALE 使能标志位(地址为 8EH的SFR的第 0位)的设置对微控制器处于外 部执行模式下无效。 懨俠劑鈍触乐鹇烬觶騮。 PSEN :外部程序存储器选通信号 ( PSEN ) 是外部程序存储器选通信号。 当 AT89S52从外部程序存储器执行外部代码时, PSEN 在每个机器周期被激活两次, 而在访问外部数据存储器时, PSEN 将不被激活。 謾饱兗争詣繚鮐癞别瀘。 EA /VPP:访问外部程序存储器控制信号。为使能从 000
34、0H 到FFFFH的外部 程序存储器读取指令, EA必须接GND。为了执行内部程序指令, EA 应该接VCC。 在flash 编程期间, EA 也接收 12伏VPP电压。 呙铉們欤谦鸪饺竞荡赚。 XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。 XTAL2:振荡器反相放大器的输出端。 16 第 3 章 系统硬件电路设计 AT89S52的最小系统电路 AT89S52的最小系统电路 AT89S52单片机的最小系统由时钟电路、复位电路 等与单片机构成。单片机的时钟信号用来提供单片机片内各种操作的时间基准, 复位操作则使单片机的片内电路初始化,使单片机从一种确定的初态开始运行。 莹谐龌蕲賞组靄
35、绉嚴减。 本次设计使用 AT89S52单片机的时钟振荡功能,因为时钟电路为单片机提供 时钟周期,如果没有时钟电路,单片机就没有时钟周期,就无法执行程序代码, 单片机就无法工作。 AT89S52中有一个用于构成内部震荡器的高增益反相放大器, 引脚 XTAL1和XTAL2分别是该放大器的输入和输出端。 这个放大器与作为反馈元件 的片外石英晶体或者陶瓷谐振器一起构成自激振荡器 3 。如图 2所示,外接石英 晶体或者陶瓷谐振器以及电容 C1,C2接在放大器的反馈电路中构成并联谐振电 路。谐振器本身对外接电容 C1、C2虽然没有十分严格的要求, 但电容容量的大小 会轻微影响振荡频率的高低、 振荡器工作的
36、稳定性、 起振的难易程度以及温度的 稳定性,所以本设计使用石英晶体,每个电容大小为 30pF。晶振的振荡频率是 1.2MHz12MHZ之间, 本设计选择 12MHZ,因为晶振的频率越高,则系统的时钟频 率也就越高,单片机的运行速度也就越快。 麸肃鹏镟轿騍镣缚縟糶。 图2 时钟振荡电路 因为很多用户设计完单片机系统, 并在调试的过程中, 可能会出现“死机” 或“程序走飞”等现象, 所以本设计需要采用复位电路来使单片机复位, 来防止 这一现象的发生,复位电路设计的好坏, 将直接影响系统的可靠性。 复位电路通 常采用上电自动复位和按钮复位两种方式, 复位是单片机的初始化操作, 除进入 系统的正常初始
37、化之外,当由于程序运行出错或操作错误使系统处于死锁状态 时,为摆脱困境,可以按复位键以重新启动, 也可以通过监视定时器来强迫复位 只需给单片机的复位引脚 RST加上大于 2个机器周期的高电平就可使单片机复位 3 ,本设计采用的是上电复位电路,其主要特点是简单,适用于简单的电路, 17 第 3 章 系统硬件电路设计 做起来还是比较方便的。 納畴鳗吶鄖禎銣腻鰲锬。 本设计采用的上电复位电路如图 3所示,上电复位电路是通过外部复位电路 的电容充电来实现的。 当电源接通时只要 VCC的上升时间不超过 1ms。就可以实现 自动上电复位。本设计采用时钟频率为 6MHz,电容取 22f, 电阻取 1K。風撵
38、鲔貓 铁频钙蓟纠庙。 图3 上电复位电路 在本设计中,当电源接通后,单片机自动复位,并且在单片机运行期间,用 开关操作也能使单片机复位。单片机的复位操作使单片机进入初始化状态。 灭嗳 骇諗鋅猎輛觏馊藹。 系统复位对于本系统是执行的第一步, 使整个控制芯片回到默认的硬件状态 下。单片机的复位是由 RESET引脚来控制的,此引脚与高电平相接超过 24个振荡 周期后, 51单片机即进入芯片内部复位状态,而且一直在此状态下等待,直到 RESET引脚转为低电平后,再检查 EA引脚是高电平或低电平,若为高电平则执行 芯片内部的程序代码,若为低电平便会执行外部程序。 铹鸝饷飾镡閌赀诨癱骝。 3.3 A/D
39、转换器 ADC0832与 AT89S52单片机的接口电路 3.3.1 ADC0832 的介绍 ADC083是2 美国国家半导体公司生产的一种 8位分辨率、双通道 A/D转换芯 18 第 3 章 系统硬件电路设计 片。由于它体积小,兼容性强,性价比高而深受 单片机爱好者及企业欢迎,其目 前已经有很高的普及率。 ADC0832具有以下特点: 8位分辨率; 双通道A/D转换; 输入输出电平与 TTL/CMO相S兼容; 5V电源供电时输入电压在 05V之间; 工作频率为 250KHZ,转换时间为 32S; 一般功耗仅为 15mW; 8P、14PDIP(双列直插)、PICC多种封装; 商用级芯片温宽为
40、0C to +70 C?,工业级芯片温宽为 40 to +85 下面介绍 0832的引脚功能:攙閿频嵘陣澇諗谴隴泸。 CS 片选使能,低电平芯片使能 CH0 模拟输入通道 0,或作为IN+/- 使用 CH1 模拟输入通道 1,或作为IN+/- 使用 GND芯 片参考 0电位(接地) DO 数据信号输出,转换数据输出 DI 数据信号输入,选择通道控制 CLK 芯片时钟输入 Vcc/REF 电源输入及参考电压输入(复用) 图5 ADC0832芯片 19 第 3 章 系统硬件电路设计 ADC0832为 8位分辨率 A/D转换芯片,其最高分辨可达 256 级,可以适应 一般的模拟量转换要求。其内部电源
41、输入与参考电压的复用,使得芯片的模拟 电压输入在 05V 之间。芯片转换时间仅为 32S,据有双数据输出可作为数据 校验,以减少数据误差,转换速度快且稳定性能强。独立的芯片使能输入,使 多器件挂接和处理器控制变的更加方便。通过 DI 数据输入端,可以轻易的实 现通道功能的选择。这是我选择 ADC0832的主要原因。 趕輾雏纨颗锊讨跃满賺。 3.3.2 ADC0832 与单片机接口电路设计 ADC0832的 CS作为选通信号,在时序图中可以看到,以 CS置为低电平开 始,一直到置为高电平结束。 CLK提供时钟信号,我们要注意看 CLK的信号的 箭头指向,向上为上升沿有效,向下为下降沿有效。 DI
42、、DO作为数据端口。当 ADC0832未工作时其 CS输入端应为高电平,此时芯片禁用, CLK和 DO/DI 的电 平可任意。当要进行 A/D 转换时,须先将 CS使能端置于低电平并且保持低电 平直到转换完全结束。此时芯片开始转换工作,同时由处理器向芯片时钟输入 端 CLK输入时钟脉冲, DO/DI端则使用 DI 端输入通道功能选择的数据信号。 在 第 1 个时钟脉冲的下沉之前 DI 端必须是高电平,表示启始信号。在第 2 、 3 个 脉冲下沉之前 DI 端应输入 2 位数据( SGL、Odd)用于选择通道功能,当此 2 位数据为“ 1”、“0”时,只对 CH0进行单通道转换。当 2位数据为“
43、 1”、 “1”时,只对 CH1进行单通道转换。当 2 位数据为“ 0”、“ 0”时,将 CH0 作为正输入端 IN+,CH1作为负输入端 IN-进行输入。当 2位数据为“0”、“1” 时,将 CH0作为负输入端 IN- ,CH1作为正输入端 IN+进行输入。 在完成输入启动位、通道选择之后,就可以开始读出数据,转换得到的数 据会被送出二次,一次高位在前传送,一次低位在前传送,连续送出。在 程序 读取二个数据后,我们可以加上检验来看看数据是否被正确读取。ADC0832与 单片机的接口应为 4条数据线,分别是 CS、CLK、DO、DI。但由于 DO端与 DI 端在通信时并未同时有效并与单片机的接
44、口是双向的,所以电路设计时可以将 DO和 DI 并联在一根数据线上使用。 夹覡闾辁駁档驀迁锬減。 20 第 3 章 系统硬件电路设计 图6 ADC0832与 AT89S52的接口电路 3.4 显示模块的设计 3.4.1 显示模块的选择与介绍 本设计所设计的电子秤系统需要显示一些数据, 例如商品的重量, 单价及其 总价等等, 所以本设计得采用显示模块达到其功能指标, 数据显示部分可以有以 下两种方案供选择。的组成有以下两种方案可供选择:一是 LED数码管显示 ,二 是采用可以设置显示重量,单价,金额等的 LCD,它具有低功耗、可视面大及抗 干扰能力强等功能,其显示技术已得到广泛应用。所以本设计采
45、用LCD1602, LCD1602的主要技术参数:显示容量 :16 2个字符,芯片工作电压 :4.5 5.5V, 电流 :2.0mA(5.0V) ,模块最佳工作电压 :5.0V ,字符尺寸 :2.95 4.35(WH)mm。 其引脚图如图 6 所示。 视絀镘鸸鲚鐘脑钧欖粝。 21 第 3 章 系统硬件电路设计 图 7 LCD1602 引脚图 LCD 显示器的工作原理:液晶显示器的主要材料是液态晶体。它在特定的 温度范围内,既具有液体的流动性,又具有晶体的某些光学特性,其透明度和 颜色随电场、磁场、光照度等外界条件变化而变化。因此,用液晶做成显示器 件,就可以把上诉外界条件的变化反映出来从而形成
46、现实的效果。液晶显示模 块具有体积小、功耗低、显示内容丰富等特点,现在字符型液晶显示模块已经 是单片机应用设计中最常用的信息显示器件。 偽澀锟攢鴛擋緬铹鈞錠。 3.4.2 LCD1602 与 AT89S52单片机接口电路的设计 本设计中的 LCD液晶显示模块采用 LCD1602型号,具有很低的功耗,正常 工作时电流仅 2.0mA/5.0V 。通过编程实现自动关闭屏幕能够更有效的降低功耗。 LCD1602分两行显示,每行可显示多达 16 个字符。 LCD1602液晶模块内部的字 符发生存储器( CGRO)M已经存储了 160 个不同的点阵字符图形, 通过内部指令 可实现对其显示多样的控制,并且还
47、能利用空余的空间自定义字符。这些都比 较符合本系统的要求。本设计中 AT89S52的 P0.0 P0.7 口分别与 LCD1602的 DB0 DB7口相接作为数据线,每个口接上拉电阻后接 +5V 电源,要求从电源高 电平引出的电阻接到输出。上拉电阻同时也起稳定信号的作用,如果太小那么 功耗比较大,太大的话就起不到上拉的作用了,所以本设计选择上拉电阻阻值 22 第 3 章 系统硬件电路设计 为 1K。系统中的 VSS和 E1接地电源, VDD和 E2接+5V电源,E 端为使能端,当 E 端由高电平跳变成低电平时,液晶模块执行命令, RS为寄存器选择, RW为读 写信号线,高电平时进行读操作,低电
48、平时进行写操作。当RS和 RW共同为低 电平时可以写入指令或者显示地址,当 RS为低电平 RW为高电平时可以读忙信 号,当 RS为高电平 RW为低电平时可以写入数据。 LCD1602与 AT89S52的接线 图如图 7 所示。 緦徑铫膾龋轿级镗挢廟。 图 8 LCD1602 与 AT89S52的接线图 3.5 键盘电路与 AT89S52单片机接口电路的设计 3.5.1 键盘与单片机的连接方式选择 通常,键盘有编码和非编码两种。 编码键盘通过硬件电路产生被按按键的键 码和一个选通脉冲。选通脉冲可作为 CPU的中断请求信号。这种键盘使用方便, 所需程序简单,但硬件电路复杂,常不被单片机采用。 騅憑
49、钶銘侥张礫阵轸蔼。 非编码键盘按组成结构又可分为独立式键盘和矩阵式键盘。 独立式键盘的工作过 程与矩阵式键盘类似,无论是硬件结构还是软件设计都比较简单。 疠骐錾农剎貯狱颢 幗騮。 23 第 3 章 系统硬件电路设计 +5v 图9 独立式键盘接口 独立式键盘接口特点:每个按键占用一条 I/O 线,当按键数量较多时, I/O 口利用率不高,但程序编制简单。 适用于所需按键较少的场合。 镞锊过润启婭澗骆讕瀘。 本设计中需要预置单价, 所以需要采用键盘电路模块来预置单价, 本设计中 键盘电路模块采用键盘专用芯片 74C922及 16个按键矩阵组。 在本设计的电子秤 系统中,带有 16 个按键矩阵组设置
50、, 其中 09 数字键用于输入单价, 还有确认, 点,删除和清零的功能,确认用于确认出入的单价,点是用来输入小数点,删除 用于删除错误的输入, 当计算完一种物品的价格后清除所有的结果, 这是用到清 零键,此外还设有 2 个备用键。本设计采用专用键盘管理芯片 74C922。 74C922 为 CMOS工艺技术制造,工作电压为 3 15V,“二键锁定”功能,编码输出为三 芯输出,可直接与微处理器数据线相连,内部振荡器完成44矩形键盘扫描。 键盘电路模块与 AT89S52单片机得接口电路如图 9 所示。榿贰轲誊壟该槛鲻垲赛。 24 第 3 章 系统硬件电路设计 图 10 矩阵键盘电路模块与 AT89
51、S52单片机接口电路图 矩阵键盘的特点: 电路连接复杂,但提高了 I/O 口利用率,软件编程较复杂 适用于需使用大量按键的场合。 3.5.2 单片机对键盘的扫描 在单片机的运行过程中,何时进行键盘扫描和处理,可有下列三种情况: 1. 查询方式:单片机通过调用键盘扫描子程序,查询有无键按下。 2. 定时扫描方式:每隔一定时间执行一次键盘扫描子程序。 3. 中断方式:每当有键闭合时才向 CPU发出中断请求, 中断服务时进行键盘 扫描和处理。 单片机通过键盘扫描判断有无键按下, 当扫描到有键按下时再进行下一步处 理,否则退出键盘处理程序。独立式键盘扫描只需读取 IO 口状态, 而矩阵式键 盘描通常有
52、两种实现方法:逐行扫描法和线反转法。 邁茑赚陉宾呗擷鹪讼凑。 逐行扫描法。 依次从第一至最末行线上发出低电平信号 , 如果该行线所连接的键没有按 下的话, 则列线所接的端口得到的是全“ 1”信号 , 如果有键按下的话 , 则得到 非全“ 1”信号。 嵝硖贪塒廩袞悯倉華糲。 25 第 3 章 系统硬件电路设计 线反转法。 线反转法也是识别闭合键的一种常用方法 , 该法比行扫描速度快 , 但在硬 件上要求行线与列线外接上拉电阻。 先将行线作为输出线 , 列线作为输入线 , 行 线输出全“ 0”信号 , 读入列线的值 , 那么在闭合键所在的列线上的值必为 0; 然后从列线输出全“ 0”信号,再读取行
53、线的输入值,闭合键所在的行线值必为 0。这样, 当一个键被按下时 , 必定可读到一对唯一的行列值。 再由这一对行列值 可以求出闭合键所在的位置。 该栎谖碼戆沖巋鳧薩锭。 3.5.3 键盘接口和键输入软件中应解决的一个问题 键盘接口和键输入软件中应注意消抖。 由于按键按下时的机械动作, 在按键被按下或松开的瞬间, 其输出电压会产 生波动,称为键的抖动。 图11 键合断时的电压抖动 为确保每按一次键单片机只进行一次处理, 使键盘可靠地工作, 必须消除按 键抖动。消抖方法有硬件消抖和软件延时两种。 劇妆诨貰攖苹埘呂仑庙。 硬件消抖法:就是在键盘中附加去抖动电路, 从根上消除抖动产生的可能性。 右图所
54、示电路实际上是由 R-S 触发器构成的单脉冲电路。 当按钮开关按下时 Q端输出低电平,当开关松开时 Q端恢复高电平,即输出一个负脉冲,以此 21 第 3 章 系统硬件电路设计 消除抖动。 臠龍讹驄桠业變墊罗蘄。 图12 硬件去抖动电路 软件消抖法:键按下的时间与操作者的按键动作有关,约为十分之几到几秒 不等。而键抖动时间与按键的机械特性有关,一般为 510ms不等。软件消 抖法即是采用延时(一般延时 1020ms)的方法,以避开按键的抖动,即在 按键已稳定地闭合或断开时才读出其状态。 鰻順褛悦漚縫冁屜鸭骞。 图 13 软件消抖法延时区间示意 3.6 过载报警部分的方案 智能仪器一般都具有报警和
55、通讯功能, 报警主要用于系统运行出错、 当测量 的数据超过仪表量程或者是超过用户设置的上下限时为提醒用户而设置。 在本系 统中,设置报警的目的就是在超出电子秤测量范围时,发出声光报警信号, 提示 用户,防止损坏仪器。 穑釓虚绺滟鳗絲懷紓泺。 超限报警电路是由单片机的 I/O 口来控制的, 当称重物体重量超过系统设计 所允许的重量时,通过程序使单片机的 I/O 值为高电平,从而三极管导通,使蜂 鸣器 SPEAKER 发出报警声,同时使二极管发光。 隶誆荧鉴獫纲鴣攣駘賽。 22 第 3 章 系统硬件电路设计 第4 章 系统软件程序设计 程序设计是一件复杂的工作, 为了把复杂的工作条理化, 就要有相
56、应的步骤和方法。 其步骤 可概括为以下三点: 首先需要分析系统控制要求, 确定算法: 对复杂的问题进行具体的分析, 找出合理的计算方 法及适当的数据结构,从而确定编写程序的步骤。这是能否编制出高质量程序的关键。 浹繢腻叢着 駕骠構砀湊。 23 第 3 章 系统硬件电路设计 其次是根据算法画流程图: 画程序框图可以把算法和解题步骤逐步具体化, 以减少出错的可 能性。 最后就是编写程序: 根据程序框图所表示的算法和步骤, 选用适当的指令排列起来, 构成一 个有机的整体,即程序。 鈀燭罚櫝箋礱颼畢韫粝。 程序数据的一种理想方法是结构化程序设计方法。 结构化程序设计是对利用到的控制结构类 程序做适当的
57、限制,特别是限制转向语句(或指令 )的使用,从而控制了程序的复杂性,力求程序 的上、下文顺序与执行流程保持一致性,使程序易读易理解,减少逻辑错误和易于修改、调试。 惬執缉蘿绅颀阳灣熗鍵。 根据系统的控制任务, 监控软件采用模块技术设计, 根据系统功能, 将软件分为若干个功能 相对独立的模块,为每一个模块设计程序流程图。该电子秤功能程序模块包括: A/D 转换启动及 数据读取程序设计、显示子程序设计、键盘扫描子的程序设计、价格计算子程序设计、以及报警 子程序设计等。 贞廈给鏌綞牵鎮獵鎦龐。 主程序的设计 主程序是系统信息处理的关键, 主程序模块主要完成编程芯片的初始化及按需要调用各模块 (子程序
58、),在系统初始化过程中,初始化程序将 RAM 的 30H 到 5FH 单元清零, RXD 引脚置 成低电平,防止误报警,同时将系统设置成 2.5Kg 量程,并写 2.5Kg 量程标志。设计流程图如图 5-1 所示。 嚌鲭级厨胀鑲铟礦毁蕲。 主程序主要完成编程芯片的初始化及按需要调用各子程序, 上电启动后, 系统初始化, 单片 机读取模数转换器的数据,然后调用显示子程序显示重量,同时扫描键盘子程序,调用价格计算 子程序计算价格并显示出来。 薊镔竖牍熒浹醬籬铃騫。 第 3 章 系统硬件电路设计 图 4-1 电子秤系统程序设计流程图 子程序的设计 主程序按需要调用各子程序。系统子程序主要包括 A/D
59、 转换启动及数据读取程序设计、显 示子程序设计、键盘扫描子的程序设计、价格计算子程序设计、以及报警子程序设计等。 齡践砚语 蜗铸转絹攤濼。 模数转换子程序的设计 A/D 转换启动及数据读取子程序设计主要是上电运行后, ADC0832 完成初始化,把经放大 的称重传感器传递过来的模拟信号转换成数字信号并传递到单片机所涉及到的程序设计设计流 程图如图 4-2 所示。 绅薮疮颧訝标販繯轅赛。 ADC0832 进行模数转换时,须现将 CS 是能端置于低电平并且保存低电平直到完全结束。 芯片开始转换工作,同时由处理器向芯片时钟输入端 CLK 输入时钟脉冲, DO 和 DI 端则使用 DI 端输入通道功能
60、选择的数据信号。 在第 1 个时钟脉冲的下沉之前 DI 端必须是高电平, 表示启 始信号。在第 2、 3 个脉冲下沉之前 DI 端应输入 2 位数据用于选择通道功能,到第 3 个脉冲的 下沉之后 DI 端的输入电平就失去输入作用,此后 DO/DI 端则开始利用数据输出 DO 进行转换数 据的读取。从第 4 个脉冲下沉开始由 DO 端输出转换数据最高位 DATA7 ,随后每一个脉冲下沉 DO 端输出下一位数据。 直到第 11 个脉冲时发出最低位数据 DATA0 ,一个字节的数据输出完成。 第 3 章 系统硬件电路设计 从第 11 个字节的下沉输出 DATA0 。随后输出 8 位数据,到第 19
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论