数字电子秤设计毕业论文

数字电子秤设计

摘 要

本文主要介绍了数字电子秤的硬件电路结构及其中的原理,所设计的电子秤具有基本称重、键盘输入、计算价格、显示、超重报警功能。电子秤的测量范围为0-10Kg ,测量精度达到 1g,有高精度,低成本的特征。首先用传感器把重量转换成电压信号,再将电压信号放大输入A/D转换,利用A/D转换工具将模拟信号转化为数字信号,得到的数字信号传送至单片机,通过程序对信号进行处理,实现称重功能,然后将重量与键盘输入单价相乘计算出总价,并将重量和价格用LED 显示出来。

关键词 电子秤;称重传感器;单片机

目 录

中文摘要 . ................................................................... I 英文摘要 . .................................................. 错误!未定义书签。

前 言 . ..................................................................... 1

1. 绪论 . .................................................................... 2

1.1 研究本文的意义 ..................................................... 2

1.2 数字电子秤的工作原理 . ............................................... 2

1.3 数字电子秤性能及技术要求 . ........................................... 3

2. 硬件设计 . ................................................................ 3

2.1 传感器模块 . ......................................................... 3

2.2 A/D转换模块 ........................................................ 4

2.2.1 AD7705的结构 ................................................ 4

2.2.3 AD7705 各引脚功能 . ............................................ 5

2.3 单片机模块 . ......................................................... 6

2.4 键盘显示模块 . ....................................................... 7

2.4.1 键盘键的功能 . ................................................. 7

2.4.2 键盘和显示电路 . ............................................... 8

2.5 过量程报警模块 . ..................................................... 9

3. 数字电子秤软件设计 . ..................................................... 10

3.1 系统软件设计 . ...................................................... 10

3.2 键盘软件设计 . ...................................................... 10

3.2.1 键盘扫描 . .................................................... 11

3.2.2 数字显示 . .................................................... 11

3.3 A/D转换程序 ....................................................... 12

3.4 数据处理程序 . ...................................................... 13

3.4.1 重量转化 . .................................................... 13

3.4.2 价格计算 . .................................................... 13

4. 结论 ................................................................... 14

参考文献 . .................................................................. 15

附录一: . .................................................................. 16

附录二: . .................................................................. 19

致 谢 . .................................................................... 20

前 言

电子称重技术是现代称重计量和控制系统工程的重要基础之一,电子衡器经过40年的

不断改进和完善,从60年代的机电结合型发展到现在的全电子型和数字化智能型。由于它具有称量准确、快速,读取方便,环境适应性强,便于与电子计算机结合而实现称重计量与过程控制自动化等特点,在工商贸易、能源交通、轻工食品、医药卫生、航空航天等部门得到了广泛的应用。本课题本着电子秤向高精度、高可靠方向研究, 讲述了用单片机控制A/D转换、键盘输入和数据显示,对如何实现键盘中断、A/D采样进行研究。设计特别适用于测量精度要求较高的场合, 具有较高的实用价值和推广价值。本文中第一章讲述了电子秤的发展情况及其工作原理,第二章讲述了电子秤的硬件电路组成部分, 第三章介绍了电子秤各部分功能实现的软件设计。

1. 绪论

1.1 研究本文的意义

物料计量是工业生产和贸易流通中的重要环节。称重装置或衡器是不可缺少的计量

工具。随着工农业生产的发展和商品流通的扩大,衡器的需求也日益增多,过去沿用的机械杠杆秤己不能适应生产自动化和管理现代化的要求。自六十年代以来,由于传感器技术和电子技术的迅速发展,电子称重技术日趋成熟,并逐步取代机械秤。尤其是七十年代初期,微处理机的出现使电子称重技术得到了进一步的发展。快速、准确、操作方便、消除人为误差、功能多样化等方面已成为现代称重技术的主要特点。称重装置不仅是提供重量数据的单体仪表,而且作为工业控制系统和商业管理系统的一个组成部分,推进了工业生产的自动化和管理的现代化,它起到了缩短作业时间、改善操作条件、降低能源和材料的消耗、提高产品质量以及加强企业管理、改善经营管理等多方面的作用。称重装置的应用已遍及到国民经济各领域,取得了显著的经济效益。同时对称重仪表的要求也越来越高,要求仪表有更高抗干扰能力、更高的精度。

基于电子秤的现状,本文拟研究一种用单片机控制的高精度数字电子秤设计方案。

这种高精度数字电子秤计量准确、携带方便,集质量称量功能与价格计算功能于一体,能够满足商业贸易和居民家庭的使用需求。

1.2 数字电子秤的工作原理

电子秤以单片机为主要部件,当商品放到秤盘上时,秤盘下的重量电阻应变式传感

器产生一电信号,信号的强弱随商品重量的大小而变,该电信号经放大电路放大后,送入A/D转换芯片进行模数转换,转换后的数字量与物重成正比,再进入89C52单片机经过数据处理,89C52单片机产生一组满足显示要求的数据,送至显示电路显示出实际重量。另一方面,商品单价通过键盘扫描电路送入89C52单片机,经过数据处理,送至显示电路显示, 物重与单价经过运算产生总价,也在显示电路上同时显示出来。

图 1-2 基本工作原理框图

1.3 数字电子秤性能及技术要求

(1) 电子秤必须具有清零、去皮重、净/毛转换、最大称量设定、自动累计、过量

程报警等功能;

(2) 最大秤重10Kg ,精度为2g ;

(3) 采用4位半共阴红色LED 显示,价格、金额精确到小数点后2位数,质量精确

到小数点后三位;

2. 硬件设计

2.1 传感器模块

要达到设计的性能要求,传感器的精度起着决定性作用, 本设计选用应用于称重系统

90%以上的高精度电阻应变式传感器。电阻应变传感器是将被测量的力通过它所产生的金属弹性变形转换成电阻变化的敏感元件。题目要求称重范围 10Kg ,重量误差不大于

+0.005Kg ,考虑到秤台自重、振动和冲击分量,还要避免超重损坏传感器,所以传感器量程必须大于额定称重即10KG 。我们选择的是 L-PSIII 型传感器,量程 20Kg ,精度为0.01%,满量程时误差 0.002Kg ,可以满足本系统的精度要求。

本设计的测量电路采用最常见的桥式测量电路(见图2-1),用到的是电阻应变传感

器半桥式测量电路。它的两只应变片和两只电阻贴在弹性梁上,测量电阻随重力变化导致弹性梁应变而产生的变化。电阻的变化使桥式测量电路的输出电压发生变化。即输出电压的变化反映出重力的变化。电桥的输出电压可由下式表示[2]

Uout =R 2∙R 4⎛∆R 1∆R 2∆R 3∆R 4⎫+++ ⎪∙Uin R 2+R 4R 1R 2R 3R 4⎝⎭输入正极

R1-△R2+△R2R1BRIDGE +

Uout

R4+△R3-△R3

_输入负极

_Uin +

图 2-1 全桥测量电桥图

2.2 A/D转换模块

2.2.1 AD7705的结构

AD7705是一个完整的16位A/D转换器,其内部由多路模拟开关(MUX )、缓冲器、

可编程增益放大器(PGA )、∑-△调制器、数字滤波器、基准电压输入、时钟电路及串行接口组成。其中串行接口包括寄存器组,它由通讯寄存器、设置寄存器、时钟寄存器、数据输出寄存器、零点校正寄存器和满程校正寄存器等组成。该芯片包括2通道差分输

入。

REF IN(+)

AIN1(-)

AIN2(+)

AIN2(-)

MCLK IN

MCLK OUT SCLK CS

DIN DOUT

图2-2 AD7705的内部结构图

2.2.2 器件功能

AD7705可编程增益放大器(PGA )可通过指令设定,对不同幅度的输入信号实现1、

2、4、8、16、32、64、128倍的放大,因此AD7705即可接受从传感器送来的低电平输入信号,然后产生串行的数字输出。利用Σ-Δ转换技术实现了16位无丢失代码性能。选定的输入信号被送到一个基于模拟调制器的增益可编程专用前端。片内数字滤波器处理调制器的输出信号。通过片内控制寄存器可调节滤波器的截止点和输出更新速率,从而对数字波器的第一个陷波进行编程。

AD7705串行接口可配置为三线SPI 接口。增益值、信号极性以及更新速率的选择可

用串行输入口由软件来配置。该器件还包括自校准和系统校准选项,以消除器件本身或系统的增益和偏移误差。CMOS 结构确保器件具有极低功耗,掉电模式减少等待时的功耗至20μW (典型值)。

其主要特点如下:

(1) 可将输入信号范围从0~+20mV 到0~+2.5V 和±20mV~±2.5V的信号进行

处理;

(2) 2个全差分输入通道的ADC (16位无丢失代码、0.003%非线性);

(3) 可编程增益前端 增益:1~128;

(4) 有对模拟输入缓冲的能力;

(5) 2.7~3.3V 或4.75~5.25V 工作电压;

(6) 3V电压时,最大功耗为1mW ;

(7) 等待电流的最大值为8μA ;

2.2.3 AD7705 各引脚功能

SCLK:串行接口时钟输入端。

MCLK IN:芯片工作时输入端。可以是晶振或外部时钟,其频率范围为500KHz 到5MHz 。 MCLK OUT :时钟信号输出端。当用晶振作为芯片的工作始终时,晶振必须接在MCLK IN 和MCLK OUT: 之间。如果采用外部时钟,则MCLK OUT 可用于输出反相时钟信号,以作为 其 他芯片的时钟源。该时钟输出可以通过编程来关闭。 CS :片选端,低电平有效。

RESET :片选复位端。当该端为低电平时,AD7705芯片内的接口逻辑、自校准、数据滤

波器等均为上电状态。

AIN1(+),AIN1(-):分别为第1个差分模拟输入通道的正端与负端。

AIN2(+),AIN2(-):分别为第2个差分模拟输入通道的正端与负端。

REF IN(+),REF IN(-):分别为参考输入通道的正端与负端。

DIN :串行数据输入端。向片内的输入移位寄存器写入的串行数据由此输入。根据通讯寄

存器中的寄存器选择位,输入移位寄存器中的数据被传送到设置寄存器、时钟寄存器或通讯寄存器。

DOUT: 串行数据输出端。从片内的输出移位寄存器读出的串行数据由此端输出。根据通

讯寄存器中的寄存器选择位,移位寄存器可容纳来自通讯寄存器、时钟寄存器或数据寄存器的信息转换结果输出端。

DRDY :A/D 转换结束 标志。

AD7705输出移位寄存器读数时序如图2-3所示

AD7705 向输入移位寄存器写入数据时序写如图2-4所示

AD7705电路如图如2-5所示

图2-3 AD7705输出移位寄存器读数时序图

图2-4 AD7705 向输入移位寄存器写入数据时序图

图2-5 AD7705模块

2.3 单片机模块

该智能电子秤采用ATM 公司的AT89C52作为CPU ,它是一种低功耗高性能的八位CMOS 微控制器,与MCS-51微控制器件兼容本设计的控制电路。以单片机89C52为控制中心,负责接收数据和外接设备的信号,再处理数据,发出控制信号,以达到所需的要求。

(1) AT89C52输入输出端口定义如下:

P0.3——超重报警电路

P2口——芯片8279与单片机的接口

P1.6 ——8279的片选端

P1口——AD 转化模块

(2) 外部中断INT1用于键盘中断服务程

单片机外部中断INT1完成对键盘显示接口功能芯片8279的按键和数据状态显示的控制,并可输入单价,各种命令处理,显示价格、重量等参数。

(3) 定时中断T0用于A/D转换中断延时

电子秤作为一种称重仪器,对所称精确度要求颇高,所以必须通过数值滤波求的有效采样值,通过定时来完成这一系列的操作。我们定时0.5S ,即定时为50ms ,分10次来累计结果。

(4) 定时中断T2用于键盘中断延时

T2设为定时器状态,定时时间为13ms 。在中断服务中首先扫描键盘,判断有无键按下。若有,则执行键识别程序。然后返回主程序进行其他操作。

单片机总电路图件附录二[7]

2.4 键盘显示模块

2.4.1 键盘键的功能

键盘输入是实现电子秤人机交互部门。根据仪器要求的功能,设计了由16个按键(4×4矩阵键盘)和1个板键开关组成的键盘、开关输入电路,如图2-6所示. 扳键开关控制仪器电源的通断:16个按键分别是10个数字键0~9、小数点键和5个功能键:清零、去皮重、转换/校正、累计、保持。

图2-6 4×4矩阵键盘

(1) 称重前, 若显示的值不为00.00, 则按“ 去皮” 键清除为00.00; 若被称物品需用盛器装载, 先将盛器放在秤盘板上, 按“ 去皮” 键, 屏幕显示为00.00, 然后装入被称物品进行称量。

称重过程。将被称物品放在秤盘上, 稳定后, 被称物品重量称好, 按“ 保持” 键储存; 取下被称物品, 显示屏显示物品净重量数值并自动保持( 一旦进入重量保持状态后, 只有按“ 去皮” 键才能退回到正常称重状态) 。

在显示单价状态下, 应先按“ 转换” 键, 再按“ 去皮” 键, 才可进入正常称重状态, 不在显示单价状态下, 直接按“ 去皮” 键即可。

当重量显示超过最大秤量值10kg 时,报警器响,表示仪器处于超载状态。电子秤不允许超载使用。

(2) 单价输入及清除。称重结束取下物品( 已在重量保持状态下),再直接按数字键输入单价。单价清除按“ 清除” 键。

(3) 显示金额。当单价置入后, 按“ 转换” 键, 则显示本次称量的金额; 若显示“ E” 表示超出计价范围。按“ 去皮” 键, 又可进行称量。

(4) 金额累计。如果需要将几种金额累加就得使用“ 累计” 键。在每次称完物品显示金额状态下, 按“ 累计” 键, 就把该次金额累加到总额中去。若显示“ E” , 表示累计总额值超出计价范围。

(5)校正。按“校正”键超过1分钟,仪器修正信息处理中拟合函数的系数,完成非线性校正。

2.4.2 键盘和显示电路

本系统中有16位LED 显示器,4×4键盘和8279的接口电路。图中键盘的行线接8279的RL0~RL3,8279选用外部译码方式,SL0~SL3经74LS138译码输出,连接键盘的列线,通过读取行列电平来确定哪个键按下。因显示位数比较多,所以要用到4线-16线译码器74LS154,SL0~SL3又由74LS154译码输出,经7407驱动后到显示器LED 的各个位的公共阴极。输出线OUTB0~OUTB3、OUTA0~OUTA3作为一个8位段选码数据输出端口,控制LED 显示器每一位数码管显示的内容,当从一位LED 数码管向下一位切换时,由消隐输出线BD 输出低电平,74LS154译码产生低电平,使74LS138输出全为高电平。此时,在8位段数据输出端口输出下一个LED 显示位的显示内容。74LS138译码循环产生低电平,8位段数据输出端口也依次把公共阴极为低电平位的显示位中的内容显示出来,当这一过程很快显示时,人们就会在几个LED 中看到了显示出来的不同内容。在连接32键以内的简单键盘时,CNTL 、SHIFT 输入端可接地。74LS07芯片是8279作为LED 数码管显示器的段选码输出端口的同相驱芯片。

图2-7 键盘显示电路

2.5 过量程报警模块

由于压力传感器L-PSIII 型的最大承受压力为20KG ,本文的称重范围是10KG ,若重物的重量超过了限定值,会影响测量结果。文中采用报警电路如图2-8所示,用于及时告知是否超量程使用,当单片机检测到超重信号时,从P0.3发出一个40KHz 的方波进行报警提示。

图2-8过量程报警模块

3. 数字电子秤软件设计

3.1 系统软件设计

软件主程序包括显示程序、键盘处理程序、A/D转换程序、数据转换处理程序。控制器中AT89C52的P1.5为A/D中断请求输入线,INT1为键盘中断服务程序。A/D中断服务程序完成采样数据的存储;键盘中断服务程序完成扫描,判断数字键或功能键,若为数字将其数据送入数据缓冲区和显示缓冲区。若是功能键进入相应功能键处理程序。

主程序流程图如图3-1所示

图3-1 主程序流程

3.2 键盘软件设计

我们知道键盘和显示是人与微机系统打交道的主要设备。在本系统中我们采用8279可编程键盘/显示管理接口。利用8279可实现对键盘/显示器的自动扫描,以减轻CPU 负担,并具有显示稳定、程序简单、不会出现误动作等特点。程序原理如下: 1. 键扫描子程序:主要判断有无键按下,利用8279的RL0~RL3和SL0~SL3端口判断键入数据的个数或没有输入字符。当RL0~RL3四位全为0时,便可判断无键按下, 2. 当判断有键按下后,就转向取键值子程序。首先取出行、列号进行拼装,得到所需的键号。然后与数OAH 相比较,从而判断出是功能键还是数字键。若是功能键就转到功能键处理子程序;若是数字键就调用显示子程序进行显示。

3. 显示子程序。首先置显示缓冲区首址和计数长度,然后取显示数据转换为段选码,送到LED 上显示。

3.2.1 键盘扫描

本系统中键盘控制采用中断方式实现,利用外部中断1端口来实现。微处理器平时周而复始扫描键盘,当发现有键按下时,首先判断是命令键还是数字键。若是数字键,则把按键读数存入存储器,并显示;若是命令键,则根据按键读数查阅转移表;以获得处理子程序的入口,子程序执行完后继续扫描键盘。图3-2为键盘扫描流程图

图3-2 键盘扫描流程图

3.2.2 数字显示

单片机确定哪个键按下时,通过SL0~SL3输出控制信号经74LS154译码器选择相应的LED 位,在8279芯片 OUT0~OUT7输出 8位段数据,LED 显示内容。如要换位显示则单片机检测BD 是否输出低电平,若是74LS1547译码输出高电平,74LS138译码循环产生低电平,8位段数据输出端口也依次把公共阴极为低电平位的显示位中的内容显示出来,当这一过程很快显示时,人们就会在几个LED 中看到了显示出来的不同内容。

3.3 A/D转换程序

在智能电子秤控制系统中,除了控制单元和执行单元外,还必须有反馈环节。在反馈环节中,最重要的就是对数据的采集。本文以AT89C52单片机为核心,设计一个基于单片机的数据采集系统,通过模拟电压形式输入系统,经AD 7705可以采集2路模拟量,精度为16位,并经多次采样,通过滤波,取得更精确的重量值。

图 3-3 AD7705 A/D流程框图

3.4 数据处理程序 3.4.1 重量转化

本课题中,A/D转换采用AD7705芯片,它是16位输出,重量计算要求精确到克,其输出值范围为[**************]0B ~[**************]1B 转换为十进制数0~65535,而系统所要求输出重量范围0~10000g ,所以我们进行线性参数的标度变换,

Wx=(Ws/Ns)Nx 。Wx 为实际重量值Ws ,满量程重量10000g ,Ns 为16位二进制值,Nx 为AD 装换读取值,其量化单位为10000/65535=0.15。如下:为使技术方便我们将0.15=15/100,即化为定点数来算。

3.4.2 价格计算

价格计算公式S=U*Wx, S为价格 U为单价,Wx 为实际测得重量值。

4. 结论

单片机控制的电子秤集传感器技术、微计算机技术、数字显示技术于一体、其反应灵敏、准确度高、显示直观,便于使用。另外稍加扩展,该电子秤还可与其它生产质量管理系统项连接,具有推广应用价值。

电子秤不仅要向高精度、高可靠方向发展, 而且更需向多种功能的方向发展。目前飞电子秤技术朝着以下方向发展 :

(1) 智能化:本系统中虽然利用单片软件实现一些简单的功能,我们可以将其与电子计算机组合,开发称重用计算机,利用计算机功能使电子秤具有推理、判断、自诊断、自适应、自组织等功能。

(2) 综合性:本系统中虽然利用软件实现称重、计价、显示,但远远不够,电子称重技术发展规律就是不断的加强基础扩大应用,扩展新技术领域,向相邻学科和行业渗透,综合各种技术去解决称重计量、自动控制、信息处理,与计算机网络组合可以显示很多商业信息,构成一个完整的综合控制系统。

(3) 组合性:未来称重系统会大量应用在工业计量过程和工艺流程中,其要求组合性,即测量范围可以任意设定;硬件能够依据一定的工作条件和环境作某些调整;软件能按一定的程序进行修改和扩展;输入输出数据与指令可以使用不同的语言和条形码,并能与外部的控制和数据处理设备进行通信。

在整个毕业设计过程中,我对大学四年所学的知识有了一个系统的认识和理解,尤其

是对本课题所用到的单片机及其相关知识有了进一步的掌握,对利用单片机进行控制系统的设计与开发又及对系统的分析和问题的解决有了切身的认识和体会,正所谓学以致用,在此实践过程中增长了知识、丰富了经验,提高了解决问题的能力。系统的分析与设计过程是对学习的总结过程,更是进一步学习和探索的过程。控制系统的开发设计是一项复杂的系统工程,必须严格按照系统分析、系统设计、系统实施、系统运行与调试的过程来进行。系统的分析和设计是项很辛苦的工作,同时也是一个充满乐趣的过程,在设计过程中,要边学习,边实践,遇到新问题就不断探索和努力即可使问题得到解决。

参考文献

[1] 关德新,冯文全. 单片机外围器件实用手册 [M]. 京:北京航空航天大学出版社,1998,6.33~98 [2] 郁有文,常健,程继红. 传感器原理及工程应用[M]. 西安:西安电子科技大学出版社,2006. 10~200 [3] 范立南,李雪飞,尹授远. 单片微型计算机控制系统设计[M]. 北京:人民邮电出版社, 2004.15~100 [4] 高吉祥. 电子技术基础试验与课程设计[M]. 北京:电子工业出版社,2005.55~99 [5] 唐俊杰, 高秦生. 微型计算机原理及应用[M]. 北京:高等教育出版社,1993.60~150 [6] 康华光, 陈大钦. 模拟电子技术基础[M]. 北京:高等教育出版社,1999.6,10~200 [7] 张毅刚主编. 单片机原理及应用[M]. 北京:高等教育出版社,2003.12. 220~250 [8] 厉志飞. 电子衡器的发展趋势[J]. 现代计量仪器与技术,2003,(04) [9] 王艳春. 智能电子称重系统的设计[J]. 微计算机信息,2007,(04) [10] 张景元. 一种基于单片机的多功能电子称[J]. 微计算机信息,2006,(04)

[11] 孙鹏,徐发明. 模拟称重传感器信号发生器的设计[J]. 牡丹江师范学院学报,2007,(03):23 [12] 南光群. 基于HT49R30A-1单片机控制的电子秤设计[J]. 电工技术,2007,(04):8~9 [13] 明尚志. 电子秤称重传感器V/F转换电路的设计[J]. 电子测量技术,2007,30(03):175~177 [14] 周清华,马善农. 高性能低成本电子秤的参考设计[J]. 世界电子元器件,2006,(5):59~64 [15] 张海霞. 新型便携式电子秤设计[J]. 计量技术,2005,(9):6~9

附录一:

A/D转换程序

#include

sbit ad_cs=P1^1; //AD转换器AD7705硬件I/O定义 sbit ad_sclk=P1^0; sbit ad_dout=P1^4; //AD输入输出I/O sbit ad_din=P1^3; //AD输入输出I/O sbit ad_reset=P1^2; //AD7705复位 sbit ad_drdy=P1^5; //AD7705

data unsigned int lsb,msb; void delay()

{ data unsigned int i; i=0;

while(i

void ad_write(unsigned char command)//数据输入 { data unsigned char i; ad_sclk=1; ad_cs=0; i=8;

while(i!=0)

{ ad_sclk=0; ad_in=command&0x80; ad_sclk=1;

command=command

ad_din=1; //送完命令置'1', 准备输入数据 ad_cs=1; }

//设置A/D转换模式. 然后可以连续读出结果.

Void ad_set (unsigned char ch,unsigned char gain) // //ch=1,2;gain=0,1,2,3(1,2,4,8...) ch通道 gain 增益

{ data unsigned char i=0x46; //单极性, 加缓冲器 data unsigned char j=gain; j=j

ad_write(0x0f+ch); //写通讯寄存器, 选择通道1,2, 并建立下一个操作为写设置寄存器

ad_write(i); //写设置寄存器, 清除FSYNC, 建立增益等运行条件

//初始化被选通道为自校准模式, 有缓冲器

}

//A/D转换结果读取函数. unsigned int ad_pro()

{ data unsigned int j,k=0; data unsigned char kk; while(ad_drdy==1);

ad_write(0x38); //读通讯寄存器, 选择通道1,2, 并建立下一个操作位读数据寄存器

ad_sclk=1; //读取结果 ad_cs=0; kk=16;

while(kk!=0) { k=k

k=k|j; //或 kk--; }

ad_cs=1; ad_dout=1;

return(k); }

//AD初始化复位,50赫兹输出速率 ad_init()

{ ad_cs=0;

ad_reset=1; //复位AD 转换器1--0--1脉冲,40ms delay(); ad_reset=0; delay(); ad_reset=0; delay(); ad_reset=1;

ad_write(0x20); //写通讯寄存器, 选择通道1, 并建立下一个操作为写时钟寄存器

ad_write(0x04); //写时钟寄存器, 设时钟信号位于使用的主时钟信号(2.4576MHz)

ad_write(0x10); ad_write(0x46); }

void ad_jiaozhun() //初始化A/D,校准两个通道. 在通道一上持续工作.

{ ad_init(); ad_set(1,0);

while(ad_drdy==0); while(ad_drdy==1); while(ad_drdy==0); while(ad_drdy==1);

// ad_write(0x20); //写通讯寄存器, 选择通道1, 并建立下一个操作为写时钟寄存器, 掉电.

// ad_write(0x14); //A/D }

void main() {

ad_jiaozhun(); lsb=ad_pro(); msb=ad_pro(); }

基准断电.

19

致 谢

在这几个月的时间里,从对课题的理解,方案的设计,到程序的编写,再到论文的写作,中间有着自己的努力,更有着老师和同学的关心和巨大的帮助。

首先我要对本论文的指导老师***老师致以衷心的感谢!从论文的选题、有关资料的收集、课题的讨论,到论文的撰写和修改,导师都给了我悉心的指导和帮助。他对学生认真负责的态度让我由衷地敬佩。

感谢***同学给予我无私的帮助,他们对我所遇到的难题的解答让我受益匪浅。 感谢母校和老师们在大学四年中对我的培养。

20

数字电子秤设计

摘 要

本文主要介绍了数字电子秤的硬件电路结构及其中的原理,所设计的电子秤具有基本称重、键盘输入、计算价格、显示、超重报警功能。电子秤的测量范围为0-10Kg ,测量精度达到 1g,有高精度,低成本的特征。首先用传感器把重量转换成电压信号,再将电压信号放大输入A/D转换,利用A/D转换工具将模拟信号转化为数字信号,得到的数字信号传送至单片机,通过程序对信号进行处理,实现称重功能,然后将重量与键盘输入单价相乘计算出总价,并将重量和价格用LED 显示出来。

关键词 电子秤;称重传感器;单片机

目 录

中文摘要 . ................................................................... I 英文摘要 . .................................................. 错误!未定义书签。

前 言 . ..................................................................... 1

1. 绪论 . .................................................................... 2

1.1 研究本文的意义 ..................................................... 2

1.2 数字电子秤的工作原理 . ............................................... 2

1.3 数字电子秤性能及技术要求 . ........................................... 3

2. 硬件设计 . ................................................................ 3

2.1 传感器模块 . ......................................................... 3

2.2 A/D转换模块 ........................................................ 4

2.2.1 AD7705的结构 ................................................ 4

2.2.3 AD7705 各引脚功能 . ............................................ 5

2.3 单片机模块 . ......................................................... 6

2.4 键盘显示模块 . ....................................................... 7

2.4.1 键盘键的功能 . ................................................. 7

2.4.2 键盘和显示电路 . ............................................... 8

2.5 过量程报警模块 . ..................................................... 9

3. 数字电子秤软件设计 . ..................................................... 10

3.1 系统软件设计 . ...................................................... 10

3.2 键盘软件设计 . ...................................................... 10

3.2.1 键盘扫描 . .................................................... 11

3.2.2 数字显示 . .................................................... 11

3.3 A/D转换程序 ....................................................... 12

3.4 数据处理程序 . ...................................................... 13

3.4.1 重量转化 . .................................................... 13

3.4.2 价格计算 . .................................................... 13

4. 结论 ................................................................... 14

参考文献 . .................................................................. 15

附录一: . .................................................................. 16

附录二: . .................................................................. 19

致 谢 . .................................................................... 20

前 言

电子称重技术是现代称重计量和控制系统工程的重要基础之一,电子衡器经过40年的

不断改进和完善,从60年代的机电结合型发展到现在的全电子型和数字化智能型。由于它具有称量准确、快速,读取方便,环境适应性强,便于与电子计算机结合而实现称重计量与过程控制自动化等特点,在工商贸易、能源交通、轻工食品、医药卫生、航空航天等部门得到了广泛的应用。本课题本着电子秤向高精度、高可靠方向研究, 讲述了用单片机控制A/D转换、键盘输入和数据显示,对如何实现键盘中断、A/D采样进行研究。设计特别适用于测量精度要求较高的场合, 具有较高的实用价值和推广价值。本文中第一章讲述了电子秤的发展情况及其工作原理,第二章讲述了电子秤的硬件电路组成部分, 第三章介绍了电子秤各部分功能实现的软件设计。

1. 绪论

1.1 研究本文的意义

物料计量是工业生产和贸易流通中的重要环节。称重装置或衡器是不可缺少的计量

工具。随着工农业生产的发展和商品流通的扩大,衡器的需求也日益增多,过去沿用的机械杠杆秤己不能适应生产自动化和管理现代化的要求。自六十年代以来,由于传感器技术和电子技术的迅速发展,电子称重技术日趋成熟,并逐步取代机械秤。尤其是七十年代初期,微处理机的出现使电子称重技术得到了进一步的发展。快速、准确、操作方便、消除人为误差、功能多样化等方面已成为现代称重技术的主要特点。称重装置不仅是提供重量数据的单体仪表,而且作为工业控制系统和商业管理系统的一个组成部分,推进了工业生产的自动化和管理的现代化,它起到了缩短作业时间、改善操作条件、降低能源和材料的消耗、提高产品质量以及加强企业管理、改善经营管理等多方面的作用。称重装置的应用已遍及到国民经济各领域,取得了显著的经济效益。同时对称重仪表的要求也越来越高,要求仪表有更高抗干扰能力、更高的精度。

基于电子秤的现状,本文拟研究一种用单片机控制的高精度数字电子秤设计方案。

这种高精度数字电子秤计量准确、携带方便,集质量称量功能与价格计算功能于一体,能够满足商业贸易和居民家庭的使用需求。

1.2 数字电子秤的工作原理

电子秤以单片机为主要部件,当商品放到秤盘上时,秤盘下的重量电阻应变式传感

器产生一电信号,信号的强弱随商品重量的大小而变,该电信号经放大电路放大后,送入A/D转换芯片进行模数转换,转换后的数字量与物重成正比,再进入89C52单片机经过数据处理,89C52单片机产生一组满足显示要求的数据,送至显示电路显示出实际重量。另一方面,商品单价通过键盘扫描电路送入89C52单片机,经过数据处理,送至显示电路显示, 物重与单价经过运算产生总价,也在显示电路上同时显示出来。

图 1-2 基本工作原理框图

1.3 数字电子秤性能及技术要求

(1) 电子秤必须具有清零、去皮重、净/毛转换、最大称量设定、自动累计、过量

程报警等功能;

(2) 最大秤重10Kg ,精度为2g ;

(3) 采用4位半共阴红色LED 显示,价格、金额精确到小数点后2位数,质量精确

到小数点后三位;

2. 硬件设计

2.1 传感器模块

要达到设计的性能要求,传感器的精度起着决定性作用, 本设计选用应用于称重系统

90%以上的高精度电阻应变式传感器。电阻应变传感器是将被测量的力通过它所产生的金属弹性变形转换成电阻变化的敏感元件。题目要求称重范围 10Kg ,重量误差不大于

+0.005Kg ,考虑到秤台自重、振动和冲击分量,还要避免超重损坏传感器,所以传感器量程必须大于额定称重即10KG 。我们选择的是 L-PSIII 型传感器,量程 20Kg ,精度为0.01%,满量程时误差 0.002Kg ,可以满足本系统的精度要求。

本设计的测量电路采用最常见的桥式测量电路(见图2-1),用到的是电阻应变传感

器半桥式测量电路。它的两只应变片和两只电阻贴在弹性梁上,测量电阻随重力变化导致弹性梁应变而产生的变化。电阻的变化使桥式测量电路的输出电压发生变化。即输出电压的变化反映出重力的变化。电桥的输出电压可由下式表示[2]

Uout =R 2∙R 4⎛∆R 1∆R 2∆R 3∆R 4⎫+++ ⎪∙Uin R 2+R 4R 1R 2R 3R 4⎝⎭输入正极

R1-△R2+△R2R1BRIDGE +

Uout

R4+△R3-△R3

_输入负极

_Uin +

图 2-1 全桥测量电桥图

2.2 A/D转换模块

2.2.1 AD7705的结构

AD7705是一个完整的16位A/D转换器,其内部由多路模拟开关(MUX )、缓冲器、

可编程增益放大器(PGA )、∑-△调制器、数字滤波器、基准电压输入、时钟电路及串行接口组成。其中串行接口包括寄存器组,它由通讯寄存器、设置寄存器、时钟寄存器、数据输出寄存器、零点校正寄存器和满程校正寄存器等组成。该芯片包括2通道差分输

入。

REF IN(+)

AIN1(-)

AIN2(+)

AIN2(-)

MCLK IN

MCLK OUT SCLK CS

DIN DOUT

图2-2 AD7705的内部结构图

2.2.2 器件功能

AD7705可编程增益放大器(PGA )可通过指令设定,对不同幅度的输入信号实现1、

2、4、8、16、32、64、128倍的放大,因此AD7705即可接受从传感器送来的低电平输入信号,然后产生串行的数字输出。利用Σ-Δ转换技术实现了16位无丢失代码性能。选定的输入信号被送到一个基于模拟调制器的增益可编程专用前端。片内数字滤波器处理调制器的输出信号。通过片内控制寄存器可调节滤波器的截止点和输出更新速率,从而对数字波器的第一个陷波进行编程。

AD7705串行接口可配置为三线SPI 接口。增益值、信号极性以及更新速率的选择可

用串行输入口由软件来配置。该器件还包括自校准和系统校准选项,以消除器件本身或系统的增益和偏移误差。CMOS 结构确保器件具有极低功耗,掉电模式减少等待时的功耗至20μW (典型值)。

其主要特点如下:

(1) 可将输入信号范围从0~+20mV 到0~+2.5V 和±20mV~±2.5V的信号进行

处理;

(2) 2个全差分输入通道的ADC (16位无丢失代码、0.003%非线性);

(3) 可编程增益前端 增益:1~128;

(4) 有对模拟输入缓冲的能力;

(5) 2.7~3.3V 或4.75~5.25V 工作电压;

(6) 3V电压时,最大功耗为1mW ;

(7) 等待电流的最大值为8μA ;

2.2.3 AD7705 各引脚功能

SCLK:串行接口时钟输入端。

MCLK IN:芯片工作时输入端。可以是晶振或外部时钟,其频率范围为500KHz 到5MHz 。 MCLK OUT :时钟信号输出端。当用晶振作为芯片的工作始终时,晶振必须接在MCLK IN 和MCLK OUT: 之间。如果采用外部时钟,则MCLK OUT 可用于输出反相时钟信号,以作为 其 他芯片的时钟源。该时钟输出可以通过编程来关闭。 CS :片选端,低电平有效。

RESET :片选复位端。当该端为低电平时,AD7705芯片内的接口逻辑、自校准、数据滤

波器等均为上电状态。

AIN1(+),AIN1(-):分别为第1个差分模拟输入通道的正端与负端。

AIN2(+),AIN2(-):分别为第2个差分模拟输入通道的正端与负端。

REF IN(+),REF IN(-):分别为参考输入通道的正端与负端。

DIN :串行数据输入端。向片内的输入移位寄存器写入的串行数据由此输入。根据通讯寄

存器中的寄存器选择位,输入移位寄存器中的数据被传送到设置寄存器、时钟寄存器或通讯寄存器。

DOUT: 串行数据输出端。从片内的输出移位寄存器读出的串行数据由此端输出。根据通

讯寄存器中的寄存器选择位,移位寄存器可容纳来自通讯寄存器、时钟寄存器或数据寄存器的信息转换结果输出端。

DRDY :A/D 转换结束 标志。

AD7705输出移位寄存器读数时序如图2-3所示

AD7705 向输入移位寄存器写入数据时序写如图2-4所示

AD7705电路如图如2-5所示

图2-3 AD7705输出移位寄存器读数时序图

图2-4 AD7705 向输入移位寄存器写入数据时序图

图2-5 AD7705模块

2.3 单片机模块

该智能电子秤采用ATM 公司的AT89C52作为CPU ,它是一种低功耗高性能的八位CMOS 微控制器,与MCS-51微控制器件兼容本设计的控制电路。以单片机89C52为控制中心,负责接收数据和外接设备的信号,再处理数据,发出控制信号,以达到所需的要求。

(1) AT89C52输入输出端口定义如下:

P0.3——超重报警电路

P2口——芯片8279与单片机的接口

P1.6 ——8279的片选端

P1口——AD 转化模块

(2) 外部中断INT1用于键盘中断服务程

单片机外部中断INT1完成对键盘显示接口功能芯片8279的按键和数据状态显示的控制,并可输入单价,各种命令处理,显示价格、重量等参数。

(3) 定时中断T0用于A/D转换中断延时

电子秤作为一种称重仪器,对所称精确度要求颇高,所以必须通过数值滤波求的有效采样值,通过定时来完成这一系列的操作。我们定时0.5S ,即定时为50ms ,分10次来累计结果。

(4) 定时中断T2用于键盘中断延时

T2设为定时器状态,定时时间为13ms 。在中断服务中首先扫描键盘,判断有无键按下。若有,则执行键识别程序。然后返回主程序进行其他操作。

单片机总电路图件附录二[7]

2.4 键盘显示模块

2.4.1 键盘键的功能

键盘输入是实现电子秤人机交互部门。根据仪器要求的功能,设计了由16个按键(4×4矩阵键盘)和1个板键开关组成的键盘、开关输入电路,如图2-6所示. 扳键开关控制仪器电源的通断:16个按键分别是10个数字键0~9、小数点键和5个功能键:清零、去皮重、转换/校正、累计、保持。

图2-6 4×4矩阵键盘

(1) 称重前, 若显示的值不为00.00, 则按“ 去皮” 键清除为00.00; 若被称物品需用盛器装载, 先将盛器放在秤盘板上, 按“ 去皮” 键, 屏幕显示为00.00, 然后装入被称物品进行称量。

称重过程。将被称物品放在秤盘上, 稳定后, 被称物品重量称好, 按“ 保持” 键储存; 取下被称物品, 显示屏显示物品净重量数值并自动保持( 一旦进入重量保持状态后, 只有按“ 去皮” 键才能退回到正常称重状态) 。

在显示单价状态下, 应先按“ 转换” 键, 再按“ 去皮” 键, 才可进入正常称重状态, 不在显示单价状态下, 直接按“ 去皮” 键即可。

当重量显示超过最大秤量值10kg 时,报警器响,表示仪器处于超载状态。电子秤不允许超载使用。

(2) 单价输入及清除。称重结束取下物品( 已在重量保持状态下),再直接按数字键输入单价。单价清除按“ 清除” 键。

(3) 显示金额。当单价置入后, 按“ 转换” 键, 则显示本次称量的金额; 若显示“ E” 表示超出计价范围。按“ 去皮” 键, 又可进行称量。

(4) 金额累计。如果需要将几种金额累加就得使用“ 累计” 键。在每次称完物品显示金额状态下, 按“ 累计” 键, 就把该次金额累加到总额中去。若显示“ E” , 表示累计总额值超出计价范围。

(5)校正。按“校正”键超过1分钟,仪器修正信息处理中拟合函数的系数,完成非线性校正。

2.4.2 键盘和显示电路

本系统中有16位LED 显示器,4×4键盘和8279的接口电路。图中键盘的行线接8279的RL0~RL3,8279选用外部译码方式,SL0~SL3经74LS138译码输出,连接键盘的列线,通过读取行列电平来确定哪个键按下。因显示位数比较多,所以要用到4线-16线译码器74LS154,SL0~SL3又由74LS154译码输出,经7407驱动后到显示器LED 的各个位的公共阴极。输出线OUTB0~OUTB3、OUTA0~OUTA3作为一个8位段选码数据输出端口,控制LED 显示器每一位数码管显示的内容,当从一位LED 数码管向下一位切换时,由消隐输出线BD 输出低电平,74LS154译码产生低电平,使74LS138输出全为高电平。此时,在8位段数据输出端口输出下一个LED 显示位的显示内容。74LS138译码循环产生低电平,8位段数据输出端口也依次把公共阴极为低电平位的显示位中的内容显示出来,当这一过程很快显示时,人们就会在几个LED 中看到了显示出来的不同内容。在连接32键以内的简单键盘时,CNTL 、SHIFT 输入端可接地。74LS07芯片是8279作为LED 数码管显示器的段选码输出端口的同相驱芯片。

图2-7 键盘显示电路

2.5 过量程报警模块

由于压力传感器L-PSIII 型的最大承受压力为20KG ,本文的称重范围是10KG ,若重物的重量超过了限定值,会影响测量结果。文中采用报警电路如图2-8所示,用于及时告知是否超量程使用,当单片机检测到超重信号时,从P0.3发出一个40KHz 的方波进行报警提示。

图2-8过量程报警模块

3. 数字电子秤软件设计

3.1 系统软件设计

软件主程序包括显示程序、键盘处理程序、A/D转换程序、数据转换处理程序。控制器中AT89C52的P1.5为A/D中断请求输入线,INT1为键盘中断服务程序。A/D中断服务程序完成采样数据的存储;键盘中断服务程序完成扫描,判断数字键或功能键,若为数字将其数据送入数据缓冲区和显示缓冲区。若是功能键进入相应功能键处理程序。

主程序流程图如图3-1所示

图3-1 主程序流程

3.2 键盘软件设计

我们知道键盘和显示是人与微机系统打交道的主要设备。在本系统中我们采用8279可编程键盘/显示管理接口。利用8279可实现对键盘/显示器的自动扫描,以减轻CPU 负担,并具有显示稳定、程序简单、不会出现误动作等特点。程序原理如下: 1. 键扫描子程序:主要判断有无键按下,利用8279的RL0~RL3和SL0~SL3端口判断键入数据的个数或没有输入字符。当RL0~RL3四位全为0时,便可判断无键按下, 2. 当判断有键按下后,就转向取键值子程序。首先取出行、列号进行拼装,得到所需的键号。然后与数OAH 相比较,从而判断出是功能键还是数字键。若是功能键就转到功能键处理子程序;若是数字键就调用显示子程序进行显示。

3. 显示子程序。首先置显示缓冲区首址和计数长度,然后取显示数据转换为段选码,送到LED 上显示。

3.2.1 键盘扫描

本系统中键盘控制采用中断方式实现,利用外部中断1端口来实现。微处理器平时周而复始扫描键盘,当发现有键按下时,首先判断是命令键还是数字键。若是数字键,则把按键读数存入存储器,并显示;若是命令键,则根据按键读数查阅转移表;以获得处理子程序的入口,子程序执行完后继续扫描键盘。图3-2为键盘扫描流程图

图3-2 键盘扫描流程图

3.2.2 数字显示

单片机确定哪个键按下时,通过SL0~SL3输出控制信号经74LS154译码器选择相应的LED 位,在8279芯片 OUT0~OUT7输出 8位段数据,LED 显示内容。如要换位显示则单片机检测BD 是否输出低电平,若是74LS1547译码输出高电平,74LS138译码循环产生低电平,8位段数据输出端口也依次把公共阴极为低电平位的显示位中的内容显示出来,当这一过程很快显示时,人们就会在几个LED 中看到了显示出来的不同内容。

3.3 A/D转换程序

在智能电子秤控制系统中,除了控制单元和执行单元外,还必须有反馈环节。在反馈环节中,最重要的就是对数据的采集。本文以AT89C52单片机为核心,设计一个基于单片机的数据采集系统,通过模拟电压形式输入系统,经AD 7705可以采集2路模拟量,精度为16位,并经多次采样,通过滤波,取得更精确的重量值。

图 3-3 AD7705 A/D流程框图

3.4 数据处理程序 3.4.1 重量转化

本课题中,A/D转换采用AD7705芯片,它是16位输出,重量计算要求精确到克,其输出值范围为[**************]0B ~[**************]1B 转换为十进制数0~65535,而系统所要求输出重量范围0~10000g ,所以我们进行线性参数的标度变换,

Wx=(Ws/Ns)Nx 。Wx 为实际重量值Ws ,满量程重量10000g ,Ns 为16位二进制值,Nx 为AD 装换读取值,其量化单位为10000/65535=0.15。如下:为使技术方便我们将0.15=15/100,即化为定点数来算。

3.4.2 价格计算

价格计算公式S=U*Wx, S为价格 U为单价,Wx 为实际测得重量值。

4. 结论

单片机控制的电子秤集传感器技术、微计算机技术、数字显示技术于一体、其反应灵敏、准确度高、显示直观,便于使用。另外稍加扩展,该电子秤还可与其它生产质量管理系统项连接,具有推广应用价值。

电子秤不仅要向高精度、高可靠方向发展, 而且更需向多种功能的方向发展。目前飞电子秤技术朝着以下方向发展 :

(1) 智能化:本系统中虽然利用单片软件实现一些简单的功能,我们可以将其与电子计算机组合,开发称重用计算机,利用计算机功能使电子秤具有推理、判断、自诊断、自适应、自组织等功能。

(2) 综合性:本系统中虽然利用软件实现称重、计价、显示,但远远不够,电子称重技术发展规律就是不断的加强基础扩大应用,扩展新技术领域,向相邻学科和行业渗透,综合各种技术去解决称重计量、自动控制、信息处理,与计算机网络组合可以显示很多商业信息,构成一个完整的综合控制系统。

(3) 组合性:未来称重系统会大量应用在工业计量过程和工艺流程中,其要求组合性,即测量范围可以任意设定;硬件能够依据一定的工作条件和环境作某些调整;软件能按一定的程序进行修改和扩展;输入输出数据与指令可以使用不同的语言和条形码,并能与外部的控制和数据处理设备进行通信。

在整个毕业设计过程中,我对大学四年所学的知识有了一个系统的认识和理解,尤其

是对本课题所用到的单片机及其相关知识有了进一步的掌握,对利用单片机进行控制系统的设计与开发又及对系统的分析和问题的解决有了切身的认识和体会,正所谓学以致用,在此实践过程中增长了知识、丰富了经验,提高了解决问题的能力。系统的分析与设计过程是对学习的总结过程,更是进一步学习和探索的过程。控制系统的开发设计是一项复杂的系统工程,必须严格按照系统分析、系统设计、系统实施、系统运行与调试的过程来进行。系统的分析和设计是项很辛苦的工作,同时也是一个充满乐趣的过程,在设计过程中,要边学习,边实践,遇到新问题就不断探索和努力即可使问题得到解决。

参考文献

[1] 关德新,冯文全. 单片机外围器件实用手册 [M]. 京:北京航空航天大学出版社,1998,6.33~98 [2] 郁有文,常健,程继红. 传感器原理及工程应用[M]. 西安:西安电子科技大学出版社,2006. 10~200 [3] 范立南,李雪飞,尹授远. 单片微型计算机控制系统设计[M]. 北京:人民邮电出版社, 2004.15~100 [4] 高吉祥. 电子技术基础试验与课程设计[M]. 北京:电子工业出版社,2005.55~99 [5] 唐俊杰, 高秦生. 微型计算机原理及应用[M]. 北京:高等教育出版社,1993.60~150 [6] 康华光, 陈大钦. 模拟电子技术基础[M]. 北京:高等教育出版社,1999.6,10~200 [7] 张毅刚主编. 单片机原理及应用[M]. 北京:高等教育出版社,2003.12. 220~250 [8] 厉志飞. 电子衡器的发展趋势[J]. 现代计量仪器与技术,2003,(04) [9] 王艳春. 智能电子称重系统的设计[J]. 微计算机信息,2007,(04) [10] 张景元. 一种基于单片机的多功能电子称[J]. 微计算机信息,2006,(04)

[11] 孙鹏,徐发明. 模拟称重传感器信号发生器的设计[J]. 牡丹江师范学院学报,2007,(03):23 [12] 南光群. 基于HT49R30A-1单片机控制的电子秤设计[J]. 电工技术,2007,(04):8~9 [13] 明尚志. 电子秤称重传感器V/F转换电路的设计[J]. 电子测量技术,2007,30(03):175~177 [14] 周清华,马善农. 高性能低成本电子秤的参考设计[J]. 世界电子元器件,2006,(5):59~64 [15] 张海霞. 新型便携式电子秤设计[J]. 计量技术,2005,(9):6~9

附录一:

A/D转换程序

#include

sbit ad_cs=P1^1; //AD转换器AD7705硬件I/O定义 sbit ad_sclk=P1^0; sbit ad_dout=P1^4; //AD输入输出I/O sbit ad_din=P1^3; //AD输入输出I/O sbit ad_reset=P1^2; //AD7705复位 sbit ad_drdy=P1^5; //AD7705

data unsigned int lsb,msb; void delay()

{ data unsigned int i; i=0;

while(i

void ad_write(unsigned char command)//数据输入 { data unsigned char i; ad_sclk=1; ad_cs=0; i=8;

while(i!=0)

{ ad_sclk=0; ad_in=command&0x80; ad_sclk=1;

command=command

ad_din=1; //送完命令置'1', 准备输入数据 ad_cs=1; }

//设置A/D转换模式. 然后可以连续读出结果.

Void ad_set (unsigned char ch,unsigned char gain) // //ch=1,2;gain=0,1,2,3(1,2,4,8...) ch通道 gain 增益

{ data unsigned char i=0x46; //单极性, 加缓冲器 data unsigned char j=gain; j=j

ad_write(0x0f+ch); //写通讯寄存器, 选择通道1,2, 并建立下一个操作为写设置寄存器

ad_write(i); //写设置寄存器, 清除FSYNC, 建立增益等运行条件

//初始化被选通道为自校准模式, 有缓冲器

}

//A/D转换结果读取函数. unsigned int ad_pro()

{ data unsigned int j,k=0; data unsigned char kk; while(ad_drdy==1);

ad_write(0x38); //读通讯寄存器, 选择通道1,2, 并建立下一个操作位读数据寄存器

ad_sclk=1; //读取结果 ad_cs=0; kk=16;

while(kk!=0) { k=k

k=k|j; //或 kk--; }

ad_cs=1; ad_dout=1;

return(k); }

//AD初始化复位,50赫兹输出速率 ad_init()

{ ad_cs=0;

ad_reset=1; //复位AD 转换器1--0--1脉冲,40ms delay(); ad_reset=0; delay(); ad_reset=0; delay(); ad_reset=1;

ad_write(0x20); //写通讯寄存器, 选择通道1, 并建立下一个操作为写时钟寄存器

ad_write(0x04); //写时钟寄存器, 设时钟信号位于使用的主时钟信号(2.4576MHz)

ad_write(0x10); ad_write(0x46); }

void ad_jiaozhun() //初始化A/D,校准两个通道. 在通道一上持续工作.

{ ad_init(); ad_set(1,0);

while(ad_drdy==0); while(ad_drdy==1); while(ad_drdy==0); while(ad_drdy==1);

// ad_write(0x20); //写通讯寄存器, 选择通道1, 并建立下一个操作为写时钟寄存器, 掉电.

// ad_write(0x14); //A/D }

void main() {

ad_jiaozhun(); lsb=ad_pro(); msb=ad_pro(); }

基准断电.

19

致 谢

在这几个月的时间里,从对课题的理解,方案的设计,到程序的编写,再到论文的写作,中间有着自己的努力,更有着老师和同学的关心和巨大的帮助。

首先我要对本论文的指导老师***老师致以衷心的感谢!从论文的选题、有关资料的收集、课题的讨论,到论文的撰写和修改,导师都给了我悉心的指导和帮助。他对学生认真负责的态度让我由衷地敬佩。

感谢***同学给予我无私的帮助,他们对我所遇到的难题的解答让我受益匪浅。 感谢母校和老师们在大学四年中对我的培养。

20


相关文章

  • 电子信息类毕业设计课题
  • 电子信息类毕业设计课题 [电子通讯] 出租车计价系统 [过程控制] 基于单片机实现单回路智能调节.. [电子通讯] 脉冲数字频率计 [机床仪表] 仪表机床数控系统的设计(论文.. 磁流体发电论文 [电子通讯] 基于VC++6.0的PC 机与 ...查看


  • 最新电子信息工程毕业论文题目参考
  • 1. 家庭防盗报警系统 2. 单片机实现单步进电机及8位流水灯控制的设计 3. 篮球竞赛计时系统 4. 单片机89C51在直流调速控制系统中的应用 5. 八路数字抢答器 6. 基于51机的直流电机设计 7. 基于51单片机的步进电机控制系统 ...查看


  • 军校专业介绍
  • 招 生 专 业 介 绍 一.通信工程(培养目标为通信初级指挥军官,本科) 培养目标:培养掌握现代通信的基本理论,具有从事军用通信系统的研究设计.运行分析.维护管理工作能力和部队基层管理.指挥能力,适应军队现代化建设需要的懂技术.会管理.能指 ...查看


  • 应用电子专业毕业设计模型
  • 前言 本次毕业设计的课题是<数字显示电子钟控制器>控制的设计.用时间来控制自动数字电子钟等.目的是为了考察学生所学知识的综合运用能力以及对不同程序之间的融会贯通,在查阅有关的资料及手册基础上,掌握与设计有关的基础知识,提高之间设 ...查看


  • 电子信息工程毕业设计题目大全
  • 1 压力容器液位测量 2 多功能遥控小车 3基于RS232的仓库多点温度.湿度.气 4压检测系统 5自动控制升降旗系统 6基于RS485的温度报警系统 7基于模糊算法的水温控制系统的设计 8多分机电话交换机 9简易火灾自动报警系统 10基于 ...查看


  • 通信工程\计算机科学与技术\电子信息工程
  • 信息电子学院专业介绍 电子信息工程(理工类) 本专业是国家特色专业.浙江省重点专业,具有硕士学位授予权.本专业培养具有电子技术和信息系统的基础知识与相应能力,能采用先进的手段从事各类电子设备和信息系统的研究.设计.制造.应用和开发以及大型复 ...查看


  • 2010级电子信息科学类专业培养计划
  • 电子信息科学类专业 专业代码:080609 学 制:4 年 培养目标:本专业是一个电子与信息工程方面的宽口径专业,培养现代通信产业.电子信息产业中需要的高等工程技术人才和管理人才.此大类专业涵盖原信息工程(通信工程与电子工程).电子科学与技 ...查看


  • 带有秒表功能数字时钟的设计_毕业论文
  • 电子系统设计应用论文 题 目: 带有秒表功能数字时钟的设计 专 业: 班 级: 学生姓名: 带有秒表功能数字时钟的设计 专业: 电子信息工程 学号:20111xxx 姓名:石头 指导老师:xxx 摘要 :本次设计以AT89C52芯片为核心, ...查看


  • Aahjzy10届电子信息技术专业毕业论文指导书
  • 生命是永恒不断的创造,因为在它内部蕴含着过剩的精力,它不断流溢,越出时间和空间的界限,它不停地追求,以形形色色的自我表现的形式表现出来. --泰戈尔 本文由605735929贡献 doc文档可能在WAP端浏览体验不佳.建议您优先选择TXT, ...查看


热门内容