基于51单片机的称重系统设计

合集下载

基于-51单片机的称重系统设计

基于-51单片机的称重系统设计

单片机作业学院计算机与控制工程学院专业自动化132学号2013022030 王伟基于51单片机的称重系统一动态称重所谓动态称重是指通过分析和测量车胎运动中的力,来计算该运动车辆的总重量、轴重、轮重和部分重量数据的过程。

动态称重系统按经过车辆行驶的速度划分,可分为低速动态称重系统与高速动态称重系统。

因为我国高速公路的限速最高是120,所以高速动态称重系统在理论上可对5到120之间时速通过称量装置的车辆进行动态称重。

而低速动态称重系统则一定要限制通过车辆的行驶速度,要想有较高的测量精度,理论要求车辆在5km/h以下时速匀速通过。

在我国,车辆动态称重一般都使用低速动态称重来完成,在很多收费站和车辆检测站都有应用,国家也出台了相关的测量标准。

与传统意义上的静态称重相比,动态称重可以在车辆缓慢运动情况下直接进行称重,这样动态称重的高效率、测量时间短、能流畅交通等主要特点就凸显出来了。

动态称重的问世,不但使车辆的管理上有了很大的促进作用,而且还对我国的公路管理和维护起到了至关重要的作用。

二系统总体结构及其功能设计总体结构是以51单片机为处理器的系统,如图3.1所示。

图3.1本设计要求能判断出车辆是否超载,如果车辆超载,本系统能够提供该车辆的超载信息并发出警报。

本设计采用STC89C52单片机作为系统的处理核心,利用桥式称重传感器采集到车辆重量并转换成电压信号,然后通过放大电路将电压信号进行放大处理后,传送到A/D转换器中转换为数字信号,再经过单片机处理、传输到接口电路,最后送到上位机,该数据可以与上位机里用键盘事先输入设定的总重量作比较并判断出该车辆是否超载,如果超载,则可通过显示器、蜂鸣器作显示超载信息并报警,当然,键盘的作用除了输入设定值还可以解除和开启警报。

三动态称重系统的组成动态称重系统主要由车辆重量(含超载、偏载检测)检测子系统、货车长、宽、高三维尺寸超限检测子系统、自动触发摄像拍照子系统、车辆类型自动判别子系统、系统配置及系统维护子系统、行驶车辆速度测量子系统、数据统计、报表处理子系统和单据输出打印子系统这几部分组成。

2021基于51单片机的电子秤系统设计范文2

2021基于51单片机的电子秤系统设计范文2

2021基于51单片机的电子秤系统设计范文微机原理论文第八篇:基于51单片机的电子秤系统设计 摘要:本文主要分析51单片机下的数字电子秤。

在设计过程中,这种电子秤具体包括电源、传感器、蓝牙、转换器、单片机、键盘、开关、显示器等组成部分,在实践过程中,这种应用51单片机的数字电子秤能够实现准确的称重、计价、过载报警等功能,具有良好的实用性和适应性,可以满足人们多种日常称重需要,极具市场发展前景和价值。

关键词:电子秤;A/D转换器; 单片机; 上个世纪五十年代,电子技术得以产生并被用于多个领域,部分研究人员将电子技术应用到称重器械中,进一步促进了称重器械的发展。

此后,电子秤的发展得到加速。

我国的电子秤发展较快,并在较短时间内达到国际先进水平。

需要注意的是,我国的电子秤与西方先进设备相比,依然存在一定局限性和差距,具体表现为工艺水平较低、电子秤技术开发发展不足等,电子秤功能相对匮乏等。

1设计需求 对物品的称重计量是社会生活和工业生产等活动过程中非常关键的一个环节,为了达到良好的称重计量效果,需要使用科学有效准确的称重设备或者装置。

随着社会生产的进一步发展,以及商品流通的进一步扩大,需要使用称重计量的场合和环节越来越多,而且对各种称重器具的要求也越来越多样化。

这种情况下,为了适应市场需要,各种新的称重计量器具得到设计和生产,并发挥出积极作用。

传统的称重计量器具一般是机械杠杆秤,这种机械杠杆秤操作不便,而且功能单一,已经难以满足实际称重需要。

近年来,基于传感技术和电子技术的发展和应用,一种新的称重设备电子秤得到设计和制造,并在社会社会和生产活动中得到有效应用。

电子秤应用简单,功能多样,而且操作简单,具有良好的实践应用效果,因此得到广泛应用,逐渐取得传统的机械电子秤。

随着微处理机的发展以及应用,这也促进电子称重技术得到进一步发展,促使电子秤的应用效果更上一层楼。

在使用过程中,电子秤具有称重快速准确的特点,而且操作很简单,同时称重过程中一般不会出现较大误差,具有良好准确性。

基于51单片机的称重系统设计

基于51单片机的称重系统设计

杭州电子科技大学设计报告课程名称:短学期PCB电路设计学生姓名:学生学号:学生班级:专业:实验日期:基于51单片机的称重系统设计设计要求:1.89C52单片机最小系统的构成及设计;(包括:时钟、复位、电源、单片机、按键和显示等)2.在此基础上完成称重系统的设计,称重量程为0~80吨,误差正负100kg。

A 为称重系统选择合适的4个压力传感器,注意量程和误差。

B 设计放大电路,以便单片机对其信号进行后续处理。

C 用7段数码管或其他显示模块进行重量的显示,单位为:kg。

D 根据应用场合设计扩展功能(加分选做设计部分)主要设计内容和功能:本设计研究的是一基于51单片机的称重系统,称重范围为0到80吨,承重范围较大,可以广泛地运用于汽车过磅,货物称重,也可以用来测体重。

本设计主要通过压力传感器采集货物重量信息,产生电压信号,通过运算放大器的放大,再经过一系列的A/D转换、单片机的处理,把货物的重量显示到数码管上。

如果有需要,也可以通过串口通信模块把数据到PC上位机中,再由计算机分析处理数据。

本设计可以通过按键来选择称重的最大量程,如果超过选择的最大量程,则会有蜂鸣器发出警报。

方案论证:传感器:压力传感器选用MPX2200压强为200KPa时对应的最大电压为40mv,所以传感器底座面积设置为1平方米。

40mv 时对应的重量为20吨。

放大器设计:量程为80吨,最大电压对应20吨,故需要4个放大器,由于器件及参数限制,输出电压为4V左右,最大输入电压40mV,故放大倍数为100倍。

故电阻成100倍关系。

传感器采集的信号从Header2端口输入。

仿真结果:从图中可以看到增益为101倍。

A/D转换:因为设计要求为误差100kg,最大电压时对应重量为20吨,20×1000/100=200。

2^8=256>200。

故采用8位A/D转换器。

本设计可以采用ADC0809转换器。

ADC0809各引脚说明:IN0~IN3:从四个运放接四路模拟量输入。

51单片机电子秤程序设计

51单片机电子秤程序设计

51单片机电子秤程序设计概述本文档介绍了如何使用51单片机(AT89C51)设计一个简单的电子秤程序。

通过该程序,电子秤能够测量物体的重量并实时显示在液晶显示屏上。

硬件准备在开始编写程序之前,我们需要准备以下硬件设备:- AT89C51单片机开发板- 电子秤传感器模块- 16x2液晶显示屏- 连接线程序设计以下是该电子秤的主要程序设计步骤:1. 引入必要的头文件include <reg51.h>include <lcd.h>2. 定义端口和变量sbit DOUT = P3^7; // 电子秤传感器数据接口float weight = 0; // 测量到的重量3. 初始化液晶显示屏void lcd_init(){// 在这里初始化液晶显示屏的相关设置}4. 启动AD转换void start_conversion(){// 在这里启动AD转换,将传感器的模拟数据转换为数字数据}5. 读取AD转换结果float read_conversion(){// 在这里读取AD转换结果并返回}6. 主程序void main(){lcd_init(); // 初始化液晶显示屏while (1){start_conversion(); // 启动AD转换weight = read_conversion(); // 读取AD转换结果// 将重量显示在液晶显示屏上lcd_gotoxy(1, 1); // 设置光标位置lcd_print("Weight: %.2f kg", weight); // 显示重量delay(500); // 延时一段时间,以控制刷新速度}}总结通过以上步骤,我们可以设计一个简单的51单片机电子秤程序。

该程序可以实时获取电子秤传感器的数据,并将测量到的重量显示在液晶显示屏上。

我们可以根据实际需求进行进一步的功能扩展和优化。

请注意,本文档仅提供了程序设计的概述,并未包含具体的代码实现。

基于MCS-51的电子称设计1

基于MCS-51的电子称设计1

【设计题目】基于MCS-51的电子称设计【设计要求】(1)设计一款电子秤,用LED液晶显示器显示被称物体的质量(2)可以设定该秤所称的上限(3)当物体超重时,能自动报警(4)具有较小的误差率(5)可以进行清零操作【设计过程】1.方案设计本方案利用电阻应变式压力传感器和MCS-51单片机等器件制作的电子秤。

该秤可以对量程范围内的物体进行称量,能实现称重、数码显示、清零等功能。

该电子秤利用电桥测量原理,将压力应变传感器阻值转换为电压值,再经过放大器将电压放大,通过确定输出电压和标准重量的关系,形成一台原始电子秤。

本设计由以下几部分组成:电阻应变传感器、信号放大器、模数转换、单片机、显示器。

其流程图如图1所示。

图1 电子称的流程图由电阻应变式传感器感受被测物体的质量,通过电桥输出电压信号,通过放大电路将输出信号放大,而后送入A/D转换单元进行模数转换,将转换后的数字信号送给单片机;单片机接收数据后,对数据进行处理,将其转换为对应的重量信息,送液晶显示模块进行显示。

单片机同时也可以进行去皮调零操作,因此单片机还需查寻键盘是否有输入,执行相应的功能。

2.硬件详细设计2.1电阻应变传感器设计电阻应变式传感器是将被测量的力,通过它产生的金属弹性变形转换成电阻变化的元件。

由电阻应变片和测量线路两部分组成。

电阻应变片产生的误差,主要来源于温度的影响,本设计主要在实验室内进行,温度的影响暂不处理。

电阻应变式传感器结构图如图2所示。

图2 电阻应变式传感器结构图在电桥测量电路中,将一对变化相反的应变片接入电桥一臂,另一臂接两个相同的阻值作为基准值;当桥臂电阻初始值R1=R2=R3=R4=350时平衡,其变化值为ΔR1=ΔR2=ΔR3=ΔR4=d 时,其桥路输出电压Uout 与d 成正比。

2.2放大电路硬件设计由于传感器输出的信号比较微弱,必须通过一个放大器对其进行放大,才能满足A/D 转换器对输入信号电平的要求。

本设计中选用由三运放构成的具有高输入阻抗,高共模抑制比的仪表放大器作为前级,再接一个反相比例放大器作为后级输出。

基于51单片机的电子秤设计实施计划

基于51单片机的电子秤设计实施计划

基于51单片机的电子秤设计实施计划下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。

文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by the editor. I hope that after you download them, they can help yousolve practical problems. The document can be customized and modified after downloading, please adjust and use it according to actual needs, thank you!In addition, our shop provides you with various types of practical materials, such as educational essays, diary appreciation, sentence excerpts, ancient poems, classic articles, topic composition, work summary, word parsing, copy excerpts,other materials and so on, want to know different data formats and writing methods, please pay attention!电子称是一种在现代生活中广泛应用的设备,可以用来准确测量物体的重量。

基于51单片机电子秤设计

基于51单片机电子秤设计

摘要电子秤是日常生活中常用的称重设备,广泛应用于超市、大中型商场、物流配送中心。

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

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

微电子技术的发展为电子秤提出了改进的空间。

电子秤向着简单、便宜发展,智能化、精确的电子秤成为了人们的追求。

本简易电子秤以常见的AT89C51为核心,以电阻应变片采集应变数据,通过HX711放大并进行AD转换供单片机处理,用LCD1602显示所测量的重量,同时本电子秤系统还提供单价设置进行求价格的计算以及去皮功能,通过一些简单低成本的元器件就完成了一个功能齐全的电子秤的制作,将传统电子秤的成本进行了缩减。

关键词:电阻应变片 AT89C51 HX711 电子秤第一章方案与论证一、方案类型(一)方案一通过单片机为主控芯片,用应变片采集应变数据,通过专用仪表放大器INA128对采集到的信号进行放大,在配上模数转换芯片对放大了的模拟信号转化为数字信号,传入单片机中进行数据处理,找出函数关系并转化关系。

通过数字信号转化为重量值显示在LDC1602上,同时通过键盘进行数据输入,输入单价、去皮等功能。

通过蜂鸣器和二极管实现超额报警功能。

(二)方案二以单片机为主控芯片,应变片采集应变数据,将放大和模数转换用HX711芯片来同时进行实现,将模拟量传入主控芯片单片机中进行数据转换,通过函数关系转换为重量显示到LED 上或者LCD1602上,同时通过键盘按键进行数据输入,输入单价、去皮等功能,并通过蜂鸣器进行数据处理。

(三)方案三运用PLC作为主控制器,PLC运用广泛,它具有接线简单,通用性好,编程简单,使用方便,可连接为控制网络系统,易于安装,便于维护等优点。

二、方案论证与选定运用51单片机作为主控芯片,AT89C51是一种高效微控制器。

基于51单片机的电子秤设计

基于51单片机的电子秤设计

毕业设计(论文)(2015届)题目:基于51单片机的电子秤设计专业名称:应用电子技术******学号:**********班级:2012级应用电子技术指导教师:***2014年 12 月 30 日摘要称重技术是人类生活中不可缺少的部分,自古以来就被人们所重视。

作为一种计量手段,被广泛应用于工业、农业、贸易等各个领域。

随着现代文明和科学技术的不断进步,人们对称重技术的准确度要求也越来越高,电子秤产品技术水平的高低,直接影响各行各业的现代化水平和社会经济效益的提高。

近年来,电子称重技术取得了突飞猛进的发展,电子秤在称重计量领域中也占有越来越重要的地位,其应用领域也在不断地扩大。

尤其是商用电子秤,由于其具有准确度高、反应灵敏、结构简单等优点,被广泛应用于工商贸易、轻工食品、医药卫生等领域。

目前,机械秤正在逐步被电子秤取代,这就促使电子秤的研究需要进一步的深入。

本设计是以AT89S51为核心的一种高精度电子秤,系统采用模块化设计法,其硬件结构主要包括:数据采集模块、最小系统模块、电源模块、键盘和显示模块。

其中,数据采集模块包括称重传感器和A/D转换电路;最小系统部分主要包括AT89S51和扩展的外部数据存储器;键盘由4×4位矩阵键盘组成;显示部分LM4229液晶显示。

软件部分由C语言编程,实现对各部分的控制。

该电子秤可以能够显示商品的名称、价格、总量、总价等;能够自动完成商品的价格计算;能够储存几种简单商品的价格;能够具有超重提醒功能。

其称重范围为0~5Kg,分度值为0.001g。

整个系统结构简单,使用方便。

关键词:电子秤;AT89S51单片机;称重传感器;A/D转换电路;液晶显示目录1绪论 (1)1.1选题的背景与意义 (1)1.1.1选题的背景 (1)1.1.2选题的意义 (2)1.2电子秤的研究现状及发展趋势 (2)1.2.1电子秤的研究现状 (2)1.2.2电子秤的发展趋势 (3)1.3本文的结构 (4)2系统总体方案设计 (5)2.1电子秤的基本知识介绍 (5)2.1.1电子秤的基本结构 (5)2.1.2电子秤的工作原理 (5)2.1.3电子秤的计量参数 (6)2.2总体方案设计 (7)2.3系统各部分设计方案论证 (8)2.3.1电子秤分度数的设定 (8)2.3.2称重传感器的选定 (8)2.3.3A/D转换器的选定 (14)2.3.4单片机型号的选定 (16)3硬件设计 (18)3.1系统硬件结构图 (18)3.2单片机主控单元的设计 (18)3.2.1单片机引脚说明 (18)3.2.2AT89S51最小系统设计 (20)3.3数据采集模块设计 (22)3.3.1传感器单元设计 (22)3.3.2A/D转换单元设计 (22)3.4键盘和显示电路单元设计 (24)3.4.1键盘电路设计 (24)3.4.2显示电路设计 (25)3.5系统总体原理图 (25)3.6硬件抗干扰设计 (26)4系统软件设计 (29)4.1主程序设计 (29)4.2LM4229液晶显示驱动程序 (30)4.3ADC0832采样程序 (31)4.4键盘程序 (31)5系统仿真 (33)5.1欢迎界面的仿真 (33)5.2无重物情况仿真 (34)5.3称量物体仿真 (35)5.4最大量程仿真 (36)5.5仿真总结与问题补充 (37)5.5.1仿真总结 (37)5.5.2问题补充 (37)6总结与展望 (39)附录程序 (40)参考文献 (49)1 绪论1.1选题的背景与意义1.1.1选题的背景(1)电子技术渗入衡器制造业随着第二次世界大战后的经济繁荣,为了把称重技术引入生产工艺过程中去,对称重技术提出了新的要求,希望称重过程自动化,为此电子技术不断渗入衡器制造业。

基于51单片机的电子秤的设计

基于51单片机的电子秤的设计

摘要本设计是基于单片机的称重仪,它的硬件电路设计包括单片机最小系统、A/D 转换器、称重传感器、语音电路、LED显示电路、±5V稳压电源电路等几部分设计内容。

其中压力传感器输出响应的模拟电压信号,经过模/数转换(A/D变换)后就得到数字量D。

但是,数字量D并不是重物的实际重量值W,W 需要由数字量D 在控制器内部经过一系列的运算——即数据处理才能得到。

整个设计系统由Atmel 公司生产51系列89S51单片机进行控制;软件实现功能开机检测,主要是开机后自动逐个扫描LED数码管,以防止某段数码管损坏造成视觉误差;出于人性化考虑我们还可以增加语音电路,实现自动语音播报重量。

关键词:称重仪;单片机;LED目录摘要 IAbstract II目录 III第1章绪论 11.1 课题背景 11.2课题目的与意义 11.3课题设计要求 21.4称重仪的国内外现状 2本章小结 2第2章称重仪的总系统设计与各模块方案选型 3 2.1 称重仪的总系统框图 32.2称重仪的主控制系统设计 42.2.1 称重仪的主控制系统结构 42.2.2 称重仪的主控制系统工作原理 42.3 称重仪各模块的方案选型 52.3.1 电源模块方案选型 52.3.2 数据采集模块方案选型 52.3.3 主控制器模块方案选型 62.3.4 数据显示模块方案选型 62.3.5 报警模块方案选型 6本章小结 6第3章称重仪的各单元电路设计 73.1 所用单片机的简介 73.1.1单片机的最小系统设计 73.2 电源电路设计 83.3 称重传感器电路设计 93.3.1传感器的工作原理 93.4前级放大器电路设计 113.5 A/D转换器电路设计 123.5.1A/D转换器原理 123.5.2 A/D转换器外围电路 153.6 显示电路设计 163.6.1 LED 结构与原理 183.6.2 动态显示 LED 显示器接口 19 本章小结 21第4章称重仪的系统程序设计 22 4.1 主程序设计 224.2 MAX187转换程序设计 23 4.3显示程序设计 24本章小结 25第五章称重仪的安装与调试 26本章小结 26结论 27致谢 28参考文献 29第1章绪论1.1 课题背景称重技术自古以来就被人们所重视,作为一种计量手段,广泛应用于工农业、科研、交通、内外贸易等各个领域,与人民的生活紧密相连。

基于51单片机的电子秤的设计

基于51单片机的电子秤的设计

摘要本设计是基于单片机的称重仪,它的硬件电路设计包括单片机最小系统、A/D转换器、称重传感器、语音电路、LED显示电路、±5V稳压电源电路等几部分设计内容。

其中压力传感器输出响应的模拟电压信号,经过模/数转换(A/D变换)后就得到数字量D。

但是,数字量D并不是重物的实际重量值W,W 需要由数字量D在控制器内部经过一系列的运算——即数据处理才能得到。

整个设计系统由Atmel公司生产51系列89S51单片机进行控制;软件实现功能开机检测,主要是开机后自动逐个扫描LED数码管,以防止某段数码管损坏造成视觉误差;出于人性化考虑我们还可以增加语音电路,实现自动语音播报重量。

关键词:称重仪;单片机;LED目录摘要 (1)Abstract....................错误!未定义书签。

目录. (1)第1章绪论 (3)1.1 课题背景 (3)1.2课题目的与意义 (4)1.3课题设计要求 (6)1.4称重仪的国内外现状 (4)本章小结 (7)第2章称重仪的总系统设计与各模块方案选型 (7)12.1 称重仪的总系统框图 (7)2.2称重仪的主控制系统设计 (8)2.2.1 称重仪的主控制系统结构 (8)2.2.2 称重仪的主控制系统工作原理 (8)2.3 称重仪各模块的方案选型 (9)2.3.1 电源模块方案选型 (9)2.3.2 数据采集模块方案选型 (9)2.3.3 主控制器模块方案选型 (10)2.3.4 数据显示模块方案选型 (10)2.3.5 报警模块方案选型 (11)本章小结 (11)第3章称重仪的各单元电路设计 (11)3.1 所用单片机的简介 (11)3.1.1单片机的最小系统设计 (12)3.2 电源电路设计 (12)3.3 称重传感器电路设计 (13)3.3.1传感器的工作原理···········错误!未定义书签。

基于51单片机的商业用智能电子秤设计

基于51单片机的商业用智能电子秤设计

摘要随着微电子技术的应用,市场上使用的传统称重工具已经满足不了人们的要求。

为了改变传统称重工具在使用上存在的问题,在本设计中将智能化、自动化、人性化用在了电子秤重的控制系统中。

本系统主要由单片机来控制,测量物体重量部分由称重传感器及A/D转换器组成,加上显示单元,此电子秤俱备了功能多、性能价格比高、功耗低、系统设计简单、使用方便直观、速度快、测量准确、自动化程度高等特点。

本系统以AT89C51单片机为主控芯片,外围附以称重电路、显示电路、键盘电路等构成智能称重系统电路板,从而实现自动称重系统的各种控制功能。

可以说,此设计所完成的电子秤很大程度上满足了应用需求。

关键词AT89C51 称重传感器 A/D转换器 LCD显示器AbstractWith the application of micro-electronics technology, tradition ponderation instrument used in market has been not satisfaction with hunman requirements already. In order to make up for the traditional apparatus shortcoming, we improve the apparatus's control system with intelligence and automation. This system is mainly controlled by microcontroller, the section of height measurement accomplish by supersonic sensor, the section of weight measurement accomplish by weight sensor and A/D transformer, this apparatus have many characteristic such as having more function, consume less energy, small and move easily, low price, measure precisely, the speed is quick, automatic work without people and so on.The system is mainly controlled by the microcontroller AT89S52, the periphery is consist of the circuit of clock and calendar, the circuit of measure height and weight, the circuit of display and print, all of these comprise the circuit board of the intelligent apparatus of height and weight. It can achieve all function of the apparatus.Key Words:AT89C51; weighing sensor; A / D converter; LCD Monitor目录摘要 (I)ABSTRACT (II)第一章绪论 (1)1.1电子秤的概述 (1)1.2设计目的 (2)第二章系统方案的设计 (1)2.1设计要求 (1)2.2进度安排 (1)2.3电子秤的工作原理 (1)2.4系统的整体设计思路 (2)第三章系统硬件电路设计 (5)3.1压力传感器 (5)3.2前级放大器 (8)3.2.1反相比例运算电路 (8)3.2.2前级放大电路 (10)3.3A/D转换器 (11)3.3.1方案比较 (11)3.3.2ADC0832芯片介绍 (12)3.3.3采样电路图 (12)3.4控制器 (13)3.4.1AT89C51芯片介绍 (14)3.4.2单片机最小系统 (16)3.5输入键盘 (17)3.5.1矩阵键盘仿真及接线图 (18)3.5.2矩阵键盘工作原理 (18)3.6输出显示 (18)3.6.1LCD12864介绍 (19)3.6.2LCD显示电路图 (21)3.6.3LCD的驱动 (21)第四章系统软件的设计 (22)4.1主程序设计 (22)4.2A/D转换启动及数据读取程序设计 (23)4.3键盘子程序 (24)4.4显示子程序 (25)第五章仿真调试 (26)5.1 PROTEUS软件介绍 (26)5.2仿真步骤 (27)5.3调试故障及原因分析 (28)结论 (29)参考文献 (30)致谢 ......................................................................................................................................... 错误!未定义书签。

基于51单片机的电子秤的设计

基于51单片机的电子秤的设计

基于51单片机的电子秤的设计一、设计要求和总体方案(一)设计要求设计一款基于 51 单片机的电子秤,能够实现以下功能:1、测量范围:0 5kg。

2、测量精度:01g。

3、具备数码管显示功能,能够实时显示测量的重量值。

4、具有去皮功能,方便测量容器的重量。

(二)总体方案本电子秤主要由传感器、信号调理电路、A/D 转换电路、51 单片机、数码管显示电路和按键电路等组成。

传感器将物体的重量转换为电信号,经过信号调理电路进行放大和滤波处理后,送入 A/D 转换电路转换为数字信号。

51 单片机对数字信号进行处理和计算,得到物体的重量值,并通过数码管显示电路进行显示。

按键电路用于实现去皮等功能。

二、硬件设计(一)传感器选择选用电阻应变式传感器,它具有精度高、稳定性好、测量范围广等优点。

当物体放在传感器上时,传感器的电阻值会发生变化,通过测量电阻值的变化可以得到物体的重量。

(二)信号调理电路由于传感器输出的信号比较微弱,需要经过信号调理电路进行放大和滤波处理。

放大电路采用仪表放大器,它具有高共模抑制比、低噪声等优点。

滤波电路采用无源 RC 滤波器,去除信号中的高频噪声。

(三)A/D 转换电路选用 ADC0809 作为 A/D 转换芯片,它是 8 位逐次逼近型 A/D 转换器,具有转换速度快、精度高等优点。

(四)51 单片机选择AT89C51 单片机作为控制核心,它具有性能稳定、价格低廉、编程简单等优点。

(五)数码管显示电路采用共阳数码管进行显示,通过 74HC573 锁存器驱动数码管。

(六)按键电路使用独立按键实现去皮、清零等功能。

三、软件设计(一)主程序流程主程序首先进行系统初始化,包括初始化单片机的 I/O 口、A/D 转换芯片等。

然后进入循环,不断读取 A/D 转换的结果,并进行数据处理和计算,得到物体的重量值,最后将重量值发送到数码管显示。

(二)数据处理算法采用线性拟合的方法对 A/D 转换的结果进行处理,得到与重量值对应的数字量。

基于51单片机的称重仪系统设计

基于51单片机的称重仪系统设计

变形,电阻应变片变形后 ,它的阻值将发生变化 (增大或减小 ),再经测量电路把这
一 电阻变化转换 为电信号 (电压或电流 ),从而完成了将外力变换为电信号的过程 。
由此可见 ,电阻应变 片、弹性 体和检测电路是 电阻应变式称 重传感 器中不可
缺少的几个主要部分。下面就这三方面简要论述 。

1)电阻应变 片
电阻应变片是把一根 电阻丝机 械的分布在一块有机材料制成 的基底 上 ,即成
为一片应变片 。他的一个重要参数是灵敏 系数 K。我们来 介绍一下它的意义 。设
有一个 金属电阻丝 ,其长度为 L,横截面是半径为 r的圆形 ,其面积记作 S,其 电
阻率记作 ,这种材料 的泊 松系数 是 “。当这根 电阻丝未受外力作 用时 ,它的 电阻
Research 研 究 探 讨 21
基于 5 1单片机的称重仪系统设计
郑 尚 真 吴琦 王 壮 (沈阳理 工大学 辽宁沈 阳 110159)
中图分类号 :6322 文献标识码 :B 文章 编号 1007—6344(2016)10-0215-01
摘要 :称 重器是 电子衡 器的一种,在工业称重计量过程 ,电子衡 器是 自动化称 重控制和 贸易计量的重要手段。本设计是饲养场 单体称重 器是基 于单片机 的称重仪 ,它的硬件 电路设计 包括 单片机 最小系统、AiD转换 器、称重传感 器、LED显 示电路 、±5V稳 压 电源电路等几部分设计 内容 。电子秤产品 的应 用性 能趋 向上更 综合性 和组合性 。
1 系统设计
根据 系统的功能要求 ,系统由 4个部分组成 :控制器部分 、信号采集部分 、 数 据显示部 分 、和电路 电源部分 ,系统设计 总体 方案框图如图 2-2所示。

基于MCS-51单片机的称重系统设计

基于MCS-51单片机的称重系统设计

段至渣仓 中转处设置2 台布袋除尘器 ,除尘器吸入灰渣
终上所述,,本期改造工程的实施,对改善桦甸市
中转中的扬尘,然后排至灰渣皮带运走 ,降低 了灰渣输
送 过程 中 的扬 尘 。采 用 干除 灰方 式 ,密 闭贮 存 及输 送 ,
北部地区安居环境和投资环境,推动该地区经济持续发
展 是 非常 必要 的,符 合 国家 的产 业发 展政 策和 有 关 的设
关键词 :单片机 ;模数单元;运放电路;滤波电路;传感器;键盘扫描 中图分 类号 : T P 2 7 2 文献标 识码 :A 文章 编号 :1 0 0 9 - 2 3 7 4( 2 0 1 4 )1 0 - 0 0 4 1 - 0 3
技 术 革命 源 于信 息 革命 ,钢 铁 生产 亦 是如 此 。在 钢 铁 生产 过程 中 ,由于 工 艺 中存 在着 大 量 的人类 感 官 无法 直接 获 取 的信 息 ,而这 些信 息 对于 工 艺 中矿粉 烧 结 、钢 铁 熔 炼 、轧钢 系 数等 步骤 有着 十分 重要 的意义 。 统 ,现 代 化生 产也 就 失去 了基础 。
一 ’ 一 一 。 “ _ 一 经济价值 ,对锅炉的环境卫生有 了很大改观。减少工人
的劳 动 强度 ,时其 它 附属设 备 的运 行环 境有 相 当大 的提 高 ,延长 了运 行 周期和 使用 寿 命 。
菇 和 冷 灰 器 的 双 双 投 入 运 行 , 不 但 产 生 相 当 的
l 系统 各部 分单 元概 述
单 片机 :是 单 片微 型计 算机 的简称 ,英 文 缩 写
M C U ,是 采 用 超大 规 模 集成 电路 技 术 ,把 具有 数 据 处理 能力 的 中央 处 理 器 、存 储 器 、 i / o 口及 中断系 统 、 计数

基于C51的智能健康称重系统设计

基于C51的智能健康称重系统设计

摘要本文介绍了一种基于微处理器与传感器等技术基础上设计的智能健康称重的电子秤。

现代信息技术的三大基础是信息的采集、传输和处理技术,即传感技术、通信技术和计算机技术,它们分别构成了信息技术系统的“感官”、“神经”和“大脑”。

信息采集系统的首要部件是传感器,且置于系统的最前端。

在一个现代自动检测系统中,如果没有传感器.就无法监测与控制表征生产过程中各个环节的各种参量,也就无法实现自动控制。

在现代技术中,传感器实际上是现代测试技术和自动化技术的基础科学技术的飞速发展,由称重传感器制作的电子衡器也已广泛地应用到各行各业。

特别是随着微处理机的出现,工业生产过程自动化程度化的不断提高,称重传感器已成为过程控制中的一种必需的装置。

为了提高我们对数据采集及数据处理方面知识的处理能力,并且考虑到作品的实用性和个人兴趣等因数,我们设计了一台基于51单片机的智能电子秤。

本系统通过称重传感器采样,A/D转换后输入单片机,通过按键设置单价后,经过单片机主控制器件的处理后,液晶上就会显示:体重和距离健康的标准。

关键词:智能称重;传感器;微处理器;测试技术摘要 (III)第1章引言 (1)第2章系统方案设计 (1)2.1 设计任务及要求 (1)2.1.1 任务 (1)2.1.2 设计说明 (2)2.1.3 智能秤的工作原理 (2)2.2 智能秤设计的要求及思路 (2)2.2.1 智能秤设计的基本要求 (2)2.2.2 智能秤设计的基本思路 (2)第3章智能秤的设计与制作 (4)3.1 智能秤的各个模块 (4)3.1.1 传感器 (4)3.1.2 测身高部分 (6)3.1.3 A/D转换模块——ADC0808 (8)3.1.4 微处理器模块——AT89C51 (9)3.1.5 输出显示模块——LCD (10)3.1.6 电源模块 (11)第4章智能秤的软件设计 (12)4.1 总体方案设计 (12)4.2 称重部分软件设计 (13)4.3 测量身高部分软件设计 (14)4.4 A/D转换部分程序流图 (16)4.5 LCD显示部分程序 (16)第五章总结 (18)第1章引言目前,随着社会的发展、生活水平不断提高,人们越来越关注自己的身体健康。

基于单片机的称重控制系统设计

基于单片机的称重控制系统设计

基于单片机的称重控制系统设计随着科技的不断发展,称重控制系统在各个行业中的应用越来越广泛。

基于单片机的称重控制系统具有自动化程度高、精度高、稳定性好等优点,因此备受。

本文将介绍一种基于单片机的称重控制系统设计。

一、系统硬件设计1、主控制器本系统采用AT89C51单片机作为主控制器。

AT89C51单片机是一种低功耗、高性能的8位微控制器,具有4K字节的可编程存储器和128字节的RAM,具有丰富的外设接口,如UART、SPI、I2C等。

2、称重传感器称重传感器是称重控制系统的核心部件,本系统采用高精度电阻应变式称重传感器。

这种传感器具有测量精度高、稳定性好、抗干扰能力强等优点。

3、信号调理电路信号调理电路用于将称重传感器输出的微弱信号进行放大和滤波,以便于单片机进行数据采集。

本系统采用集成运算放大器构成信号调理电路。

4、显示模块显示模块用于实时显示称重数据,本系统采用液晶显示器(LCD)作为显示模块。

LCD具有功耗低、寿命长、视角大等优点,同时能够显示较为复杂的数据。

5、键盘模块键盘模块用于设定系统参数和进行操作,本系统采用4×4矩阵键盘作为键盘模块。

这种键盘结构简单、操作方便,能够满足系统的基本需求。

二、系统软件设计1、数据采集与处理数据采集与处理是称重控制系统的关键环节。

本系统采用中断方式进行数据采集,当称重传感器输出信号时,触发单片机的外部中断,单片机读取称重传感器的输出值,经过信号处理后得到实际重量值。

为了提高系统的抗干扰能力,本系统采用数字滤波算法对采集到的数据进行处理。

2、控制算法本系统采用PID控制算法对重量值进行控制。

PID控制算法简单易行、稳定性好、适应性强,能够满足大多数工业控制系统的要求。

根据实际需求,可以调整PID控制算法的参数,以达到更好的控制效果。

3、人机交互界面设计人机交互界面是称重控制系统与用户之间的桥梁。

本系统采用C语言编写人机交互界面程序。

程序中包括菜单设计、功能按键处理、数据显示等功能,使用户能够方便地进行系统操作和数据查看。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单片机作业学院计算机与控制工程学院专业自动化132学号2013022030姓名王伟基于 51 单片机的称重系统一动态称重所谓动态称重是指通过分析和测量车胎运动中的力,来计算该运动车辆的总重量、轴重、轮重和部分重量数据的过程。

动态称重系统按经过车辆行驶的速度划分,可分为低速动态称重系统与高速动态称重系统。

因为我国高速公路的限速最高是120,所以高速动态称重系统在理论上可对 5 到 120 之间时速通过称量装置的车辆进行动态称重。

而低速动态称重系统则一定要限制通过车辆的行驶速度,要想有较高的测量精度,理论要求车辆在5km/h 以下时速匀速通过。

在我国,车辆动态称重一般都使用低速动态称重来完成,在很多收费站和车辆检测站都有应用,国家也出台了相关的测量标准。

与传统意义上的静态称重相比,动态称重可以在车辆缓慢运动情况下直接进行称重,这样动态称重的高效率、测量时间短、能流畅交通等主要特点就凸显出来了。

动态称重的问世,不但使车辆的管理上有了很大的促进作用,而且还对我国的公路管理和维护起到了至关重要的作用。

二系统总体结构及其功能设计总体结构是以51 单片机为处理器的系统,如图 3.1 所示。

上位机键盘输入A/D转换器放大器ADC0832OP07AT89C51桥式称重传感器RS232转换器单片机WPL110蜂鸣器LED显示图3.1本设计要求能判断出车辆是否超载,如果车辆超载,本系统能够提供该车辆的超载信息并发出警报。

本设计采用STC89C52单片机作为系统的处理核心,利用桥式称重传感器到A/D 转换器中转换为数字信号,再经过单片机处理、传输到接口电路,最后送到上位机,该数据可以与上位机里用键盘事先输入设定的总重量作比较并判断出该车辆是否超载,如果超载,则可通过显示器、蜂鸣器作显示超载信息并报警,当然,键盘的作用除了输入设定值还可以解除和开启警报。

三动态称重系统的组成动态称重系统主要由车辆重量(含超载、偏载检测)检测子系统、货车长、宽、高三维尺寸超限检测子系统、自动触发摄像拍照子系统、车辆类型自动判别子系统、系统配置及系统维护子系统、行驶车辆速度测量子系统、数据统计、报表处理子系统和单据输出打印子系统这几部分组成。

该系统组成完善,部件考虑周全,能很好的完成称重任务。

四动态称重系统的主要功能(1)动态检测出通过车辆的轴数、轴重、轴距、轮数、车速等;(2)能自动检测出车辆的高、宽、长等外围尺寸是否超出最大标准,并能给出超出部位的具体位置和具体数据;(3)拍摄机器在车辆经过时能自行对要被检测的车辆进行拍照,该机器能对车牌号码、车辆种类进行识别,最终作为图像证据;(4)可以将不合格车辆的处理记录、超限情况进行打印,根据车辆超限的程度来计算罚款数额并打印收据或罚款单;(5)检测到的数据全部存入数据库中,并对被监测到的数据进行分析、统计。

便于汇总上报、日常管理和进行查询。

五单片机的选用本设计采用的是INTEL 公司研究开发生产的STC89C52单片机,其内部置有256 字节的内部数据存储器、 8 位中央处理单元、 8K 片内程序存储器、 3 个 16 位定时 / 计数器、 32个双向 I/O 口和一个片内时钟振荡电路,全双工串行通信口, 5 个两级中断结构。

89C52的引脚图如图 4.1 所示。

图4.1 89C52 引脚图本设计使用的是单片机的最小系统,其中电路包括下载口电路、复位电路和晶振电路。

复位电路中,电阻在下接地,电容在上接高电平,中间为 RST。

复位电路工作原理是:通电时,由于电流很大,从而相当于电容被短路,这样 RST引脚上处于高电平,这时的单片机为禁止工作状态。

如果要使单片机正常工作,就要使 RST端电压慢慢下降并到一定程度,也就是RST端为低电平,这就需要通过电源对电容进行充电。

复位电路复位的方式有手动复位、上电复位两种。

所谓上电复位,就是通电瞬间,由于电流很大,从而相当于电容被短路,这样 RST引脚上处于高电平,自动复位;相反,通过对改变电容电流,当电流很小的时候,我们就可以把电容当做开路状态, RST 端就处于低电平,程序就能正常的运行。

而手动复位要在上电复位的基础上,按下复位按键,使 VCC直接与 RST相连,电容处于放电状态,以高电平形成复位;松开复位按键, RST仍旧是高电平,这时充电电流作用于电阻上, VCC给电容进行充电,还是复位状态,充电结束后,RST为低电平,能够正常工作。

A/D 转换器通道 A/D 转换芯片和8 位分辨率。

它的优点有体积小,兼容性强,性价比高,从而深受个人的欢迎和企业的认可,目前在世界上也已经有了较高的使用率。

ADC0832具有能够进行双通道A/D 转换,分辨率高达8 位;当供电电源为5V 时,输入电压能稳定的保持在0~5V 之间;TTL/CMOS与输出输入电平兼容;功耗很低,只有 15mW;转换工作时间只有32 μS,也就是频率仅有 250KHZ 等特点。

其引脚功能图如图 4.6 所示,芯片引脚接口说明如表 4 所示。

CS18Vcc/REFCH027CLKCH136DOADC0832GND45DI图 4.6 引脚排列表 4 ADC0832 引脚说明接口说明CS片选使能,输入低电平能使芯片工作CH1模拟的输入通道1 ,或作为 IN+/- 使用CH0模拟的输入通道0 ,或作为 IN+/- 使用GND接地DO转换数据输出,数据信号输出DI选择通道控制,数据信号输入CLK芯片时钟脉冲输入Vcc/REF5V 参考电压输入和电源输入通常情况下的单片机和 ADC0832的接口的数据线应为 4 条,分别是 CS、CLK、DO、DI 。

由于 ADC0832的数据信号输入输出口与单片机具有双向接口通信,输入输出口也不同时使用,所以可以将数据信号输入输出口并联后当一条数据线进行使用。

它们的硬件接口电路与单片机连接的原理如图 4.7 所示。

最后将以上的惠思登电桥、放大器、ADC0832转换器和 STC89C52单片机连接起来,就组成了系统的采集模块。

VccADC0832AT89C51 CS VccU0CLK P1.1CH0CH1DIP1.2GND DO P1.3图 4.7 ADC0832与单片机的接口电路报警模块本系统要实现一旦检测到车辆超载超限,就会立刻鸣笛报警,通过操作人员的检查处理后,解除报警。

本设计选用蜂鸣器作为发声装置,蜂鸣器可利用三极管来进行放大驱动。

该接口电路如图 4.15 所示:5VR4SpeakerR3P2.7VT1图 4.15报警接口电路5.系统的软件设计5.1 主程序设计当系统上电复位后,系统开始初始化,包括端口等;初始化完毕后,调用串口输出提示语,开始准备串口输出电压;准备完毕后,调用串口输出电压值,开始从串口输出电压值;输出完毕后,调用串口输出换行值;最后开始延时200ms。

根据系统方案,设计出本设计的主程序流程,可以用框图表示。

开始串口初始化串口输出提示语串口输出电压值串口输出换行值延时 200ms图 5.1主程序流程图5.3 ADC0832 软件设计首先要将芯片开始使能,即CS使能端置于低电平,然后通过DI 和 DO的同一数据输入端口,可实现通道功能的选择,再调用通道初始化程序,初始化完毕后,在8 个时钟边沿获得正序和反序8 位数据,最后返回数据。

根据此方案,设计出本设计中A/D 转换程序流程,如图 5.2 所示。

当两位数据都为0 时, CH1作为负输入端 IN- ,而 CH0就作为正输入端IN+来进行相0 和 1 时, CH1作为正输入端 IN+,CH0作为负输入端 IN- 来进行相关输入。

当两位数据为分别为 1 和 0 时, CH0进行单通道转换而 CH1不转换。

ADC0832的功能项如表 7 所示。

开始芯片使能通道选择通道初始化在8 个时钟边沿获得正序 8 位数据在8 个时钟边沿获得反序 8 位数据返回数据图5.2 ADC0832 转换流程图表7 AD0832 功能项MUX Address Channe#SGL/DIF ODD/SIGN0110+11+00+_01_+ADC0832没有工作时, DO/DI 和 CLK的电平可高可低,但CS的输入端口应必须显示高电平,此时芯片处于禁用状态。

当A/D 转换进行时, CS端口必须处于低电平并且一直将低电平保持到转换全部结束。

当芯片转换工作开始,芯片的CLK端口会接收到处理器传送来的一时钟脉冲, DO/DI 并联端口将使用数据输入信号的DI 端口。

第一个时钟脉冲的下沉出现之前,DI 端口一定要是高电平,表示启始信号的发出,在第二、三个脉冲的下沉出现之前,DI 端口要输入两位数据来选择通道。

第三个脉冲出现下沉之后, DI 端口就不再起任何作用,此后DO/DI 并联端口则是被DO端口占领进行读取转换数据。

第四个下沉脉冲出现开始,DO端口输出最高位的转换数据DATA7,接下来每个脉冲下沉之后 DO端口都会输出下一位的转换数据。

直到发出最低位数据DATA0,也就是由第十一个脉冲发出的数据之后,这样一个字节的数据输出就完成了。

再从第十一个脉冲下沉开始从 DATD0开始输出下一个相反数据字节。

然后一直到第十九个脉冲完成数据的输出,这样一次 A/D 转换才结束。

最后,要想将转换后的数据进行相关处理就必须将芯片禁用,也就是将 CS端口输入高电平。

5.4 LCD 显示程序设计首先设置显示模式,设置第( x,y )个字符的 DDRAM的地址,为 15×2 显示,因为液晶显示为 15 列,所以 x 位置的范围是 0 到 15,同理,因为显示 2 行,所以 y 位置的范围是 0 到 1。

显示程序如下:void Lcd_Pos(uchar yPos,uchar xPos){uchar tmp;xPos &= 0x0f;//x位置范围是0~15,因为显示15列yPos &= 0x01;//y位置范围是0~1,因为显示2行if(yPos==0)//显示第一行{tmp = xPos;}else{tmp = xPos + 0x40;//显示第二行}tmp |= 0x80;Write_com(tmp);}5.5 主函数软件主要分成四个部分:串口配置,ADC0832的初始化,等待接受数据和输出数据。

程序如下:void main(void){InitUART(); //串口初始化Lcd_init();Write_String("Weight: ", 0, 0);Write_String("H=", 1, 0);Write_String("L=", 1, 6);Beep = 1;while(1){Process10ms();DispVal(Wh, 1, 2);DispVal(Wl, 1, 8);CheckProcess();if (flagget10s == 1){flagget10s = 0;Get_temp(sum*100);ET0 = 1;TR0 = 1;Disp_Voltage();//采集电压并发送}}}参考文献[1]周杏鹏,传感器与检测技术,清华大学出版社,2010[2]赵燕,传感器原理及应用,北京大学出版社,2009[3]王幸之、钟爱琴、王雷、王闪,AT89 系列单片机原理与接口技术,北京航天大学出版社,2004[4]高玉芹,单片机原理与应用及C51 编程技术,机械工业出版社, 2011[5]张毅刚、彭喜元、彭宇,单片机原理与应用,高等教育出版社,2010[6]刘小成、吴清、夏春明,单片机原理及C51 应用,华东理工大学出版社,2009[7]国务院全国治理车辆超限超载领导工作小组,全国治理车辆超限超载工作简报[Z] , 2004( 1)[8]张勇、吴文兵、谢竹生、张雨,汽车轮重动态检测中的单片机,汽车科技,2004( 3)[9]张积东,单片机 51/98 开发与应用,电子工业出版社,1994[10]周航慈,单片机程序设计基础,北京航空航天大学出版社,1997单片机系统部分硬件原理图单片机程序#include "reg52.h"#include "My_type.h" //数据类型头文件#include <intrins.h>#define nop() _nop_()#define uchar unsigned char#define uint unsigned intsbit Lcd_rs=P2^0;sbit Lcd_rw=P2^1;sbit Lcd_en=P2^2;sbit key1 = P3^5;sbit key2 = P3^6;sbit key3 = P3^7;sbit Beep = P2^7;sbit Led = P2^6;sbit CS=P1^3;//使能sbit CLK=P1^1;//时钟sbit Do=P1^2;//数据输出sbit Di=P1^2;//数据输入#define first_channel0x02 //通道 1#define second_channel 0x03 //通道 2uchar CH = first_channel;#define Fclk11059200UL/* 使用 11.0592M 晶体 */ #define BitRate9600UL/* 波特率定义为 9600*/uint8 Sending;// 发送标志code uint16 AD_Tab[41] = {512, 2048, 2970, 3840, 4659, 5581,6349, 7117, 7782, 8397, 9165, 9830,10291, 11162, 11520, 11981, 12749, 13210, 13926, 14490, 15206, 15821, 16538, 17357,17971, 18842, 19814, 20838, 21760, 22477,23091, 23603, 23962, 24371, 24678, 24883,25037, 25190, 25293, 25395, 25600};uint8 temp_zheng;float temp_xiao;uint8 flag10ms = 0;uint8 flag50ms = 0;uint8 get10s = 0;uint8 flagget10s = 0;uint8 Alarmflag = 1;uint16 sum = 0;uint8 count5ms = 0;uint8 Wh = 40;uint8 Wl = 20;void Delay_lcd1602(uint dly){uint i;for(; dly>0; dly--)for(i=0; i<100; i++);}bit Lcd_busy(){bit result;Lcd_rw = 1;Lcd_rs = 0;Lcd_en = 1;nop();nop();nop();nop();result = (bit)(P0&0x80);Lcd_en = 0;return(result);}void Write_com(uchar com){while(Lcd_busy());//LCD忙等待Lcd_rs = 0;Lcd_rw = 0;P0 = com;Delay_lcd1602(5);Lcd_en = 1;Delay_lcd1602(5);Lcd_en = 0;}void Write_data(uchar date){while(Lcd_busy());//LCD忙等待Lcd_rs = 1;Lcd_rw = 0;P0 = date;Delay_lcd1602(5);Lcd_en = 1;Delay_lcd1602(5);Lcd_en = 0;}void Lcd_init(){Lcd_en = 0;Write_com(0x38);Delay_lcd1602(5);Write_com(0x0c);Delay_lcd1602(5);Write_com(0x04);Delay_lcd1602(5);Write_com(0x01);Delay_lcd1602(5);}void Lcd_Pos(uchar yPos,uchar xPos)// 设置第( xPos,yPos )个字符的 DDRAM地址{uchar tmp;xPos &= 0x0f;//x位置范围是0~15,因为显示15列yPos &= 0x01;//y位置范围是0~1,因为显示2行if(yPos==0)//显示第一行{tmp = xPos;}else{tmp = xPos + 0x40;//显示第二行}tmp |= 0x80;Write_com(tmp);}void Write_char(uchar c,uchar xPos,uchar yPos)//定义Write_Char函数{Lcd_Pos(xPos,yPos);Write_data(c);}void Write_String(uchar *s,uchar xPos,uchar yPos) //定义Write_String函数{uchar i = 0;Lcd_Pos(xPos,yPos);while(*s){Write_data(*(s++));if(++i>16) break;}}void InitUART(void){EA=0;TMOD|=0x21; //定时器1工作在模式2 SCON=0x50; //串口工作在模式1TCON=0x05;TH1=256-Fclk/(BitRate*12*16);TL1=256-Fclk/(BitRate*12*16);TH0 = (65535 - 1000)/256;TL0 = (65535 - 1000)%256;ET0 = 1;TR0 = 1;PCON=0x80;// 串口波特率加倍ES=1;//串行中断允许TR1=1;//启动定时器 1REN=1;//允许接收EA=1;//允许中断}void UartISR(void) interrupt 4{if(RI) //收到数据{RI=0; //清中断请求}else//发送完一字节数据{TI=0;Sending=0; //清正在发送标志}}void PutChar_to_Uart(uint8 d){Sending=1;SBUF=d;while(Sending);}void Prints(uint8 *pd){while((*pd)!='\0'){PutChar_to_Uart(*pd);pd++;}}unsigned char ADconv(void){unsigned char i;unsigned int data_f=0,data_c=0;ET0 = 0;TR0 = 0;Di=1;CS=1;_nop_();CS=0;Di=1; ;//芯片使能之前的初始化。

相关文档
最新文档