论坛首页 | 新人报到 |发帖必看—论坛版规 | 错误报告 | 注册用户
Baidu
发新话题
打印

电子秤AD7705应用

本主题由 study 于 2008-11-4 01:50 移动

电子秤AD7705应用

1 引言



国家三级秤标准要求:称重数据与重物的绝对精度小于1/1000-1/5000,因此,经AD转换后输出数据的有效位应在13位以上。AD公司推出的由缓冲器和增益可编程放大器(PGA)、Σ-Δ调节器、可编程数字滤波器等组成的16位AD7705/06能直接将传感器检测到的微小信号进行A/D转换,其具有高分辨率、宽动态范围、自校准、优良的抗噪声性能以及低电压低功耗等特点,适合于称重系统中下微机信号处理的需要。设计中,我们确定AD7705的相应参数取:



输出数据更新速率:50Hz;系统增益:64;有效分辨率:15位。



2 硬件设计



要满足前面确定的AD7705参数,设计中AD7705的主时钟取:fCLK =2.4576MHz。



AD7705的串行数据接口包括5个:片选输入口 ,串行施密特逻辑输入时钟SCLK,数据输入口DIN,转换数据输出口DOUT,指示数据预备就绪的状态信号输出口 。其中当 为低电平时,转换数据可读取;否则不可读取。



设计中 可由AT89C51选中实现,也可接地;本设计中将 接地。



SCLK有两种基本的接线方式:①SCLK接AT89C51的P2口中未用的管脚(比如接P2.2),数据输入、输出端DIN、DOUT一同接P2口中未用的另一管脚(比如:P2.3)。在该种连接方式下,只能用手工编程模拟AD7705的通信时序以实现对AD7705的操作。②SCLK接AT89C51的同步脉冲输出端TXD,AD7705的数据输入、输出端DIN、DOUT一同接AT89C51的串行数据输入、输出端RXD。在该种连接方式下,对AD7705的数据的读取可按51系列单片机串行口的工作方式0完成,也可按①中的读写方式完成。本设计中按②中介绍的方式接线。可接普通P1、P2口中未用的管脚,通过程序查询该管脚是否为低电平,从而实现对AD7705中寄存器数据的读取。也可接AT89C51的外部中断1或中断0管脚,通过中断方式或中断查询方式实现对AD7705中寄存器数据的读取。本设计中接外部中断1管脚。  

图1 称重传感器信号处理电路图AD7705在称重系统中的连接方式



见图1。当在此传感器上施加满标度重量5吨重物时,传感器在5V工作电压下取得30 mV的满标度输出电压。5V工作电压经分压后为AD7705提供基准电压,因此工作电压的变化不会产生系统误差。分压电阻为24kΩ和15kΩ,产生的基准电压为1.92V。当器件的可编程增益为64时,对应的满标度输入电压即为 30 mV。



3 软件设计



软件设计需主要考虑以下四个方面:



①AT89C51的初始化:硬件设计中假如用到中断,则需对单片机的中断系统进行初始化;软件设计中假如用到串口,则需对单片机的串口进行初始化。



②AD7705与51系列单片机的数据交换顺序:在读写操作模式下,51系列单片机的数据要求LSB在前,而AD7705希望MSB在前,所以对AD7705寄存器进行配置之前必须将命令字重新排列方可写入,同样要将从AD7705数据寄存器中读取到缓冲器后的数据进行重新排列方可使用。



③对AD7705寄存器进行操作的时序:AD7705通讯必须严格按图2、图3时序操作。对AD7705进行通信的子程序流程见图4、图5。当然,还可以考虑用串行口通信方式0的工作方式来实现。   

图2 读周期时序图 图3 写周期时序图  

图4 写周期时序流程图 图5读周期时序流程图④AD7705的初始化和配置:AD7705的配置与设计的硬件紧密相关,只有在正确配置的情况下硬件才能正常工作。同时,对AD7705内每一个寄存器的配置都必须从写通信寄存器开始,通过写通信寄存器完成通道的选择和设置下一次操作的寄存器的选择。



图6所示为此称重传感器数据采集主流程图。其程序清单见附录。  

图6 主程序流程图4 结束语



AD7705以其本身的低价格、高精度、可编程增益、自校准、小信号的转换不需附加另外的器件而使得其在数据检测领域具有很大的应用前景。其在电子秤中的应用也是显而易见的。我们应用AD7705设计的电子信号处理线路,其性能指标达到预期的效果。



参考文献

1.Analog Devices.Preliminary technical

Information,AD7705/06

2.胡志高,AD7705/06及其应用,电子产品世界,2000.10



附录:程序清单



ORG 0000H

AJMP MAIN

ORG 0013H

AJMP ADINT

ORG 0030H

MAIN:

;对AT89C51初始化

MOV IP,#04H;定义INT1为优先级

MOV TCON,#00H ;INT1采用低电平

;触发

MOV IE,#84H;答应外部中断1

;对AD7705进行初始化

MOV SCON,#00000000B;禁用SCON

MOV A,#20H

ACALL WRITE

MOV SCON,#00000000B

MOV A,#05H

ACALL WRITE

MOV SCON,#00000000B

MOV A,#010H

ACALL WRITE

MOV SCON,#00000000B

MOV A,#70H

ACALL WRITE

MOV SCON,#00000000B

A2: JNB 00H,A2 ;等待INT1中断

MOV A,#38H

ACALL WRITE

RDATA

DPROCESS

AJMP A2

WRITE:

NOP

MOV R0,#08H

ACALL NU1

RET

NU1: RLC A

JNC NU2

CLR 0B1H

SETB 0B0H

SETB 0B1H

SJMP NU3

NU2: CLR 0B1H

CLR 0B0H

SETB 0B1H

NU3: DEC R0

DJNZ R0,NU1

RET

RDATA:

MOV R2,#02H

MOV R3,#08H

MOV R4,#20H

CLR C

MOV A,#00H

RD1: CLR 0B1H

MOV C,0B0H

SETB 0B1H

RLC A

DJNZ R3,RD1

MOV R4,A

INC R4

DJNZ R2,RD1

RET

DPROCESS:

……

RET

ADINT:

SETB 00H

RETI

END
本帖最近评分记录
  • lflhome 氧化铝币 +6 氧化铝论坛欢迎您! 2008-5-3 20:27

TOP

发新话题
郑重声明: 本论坛属技术交流,非赢利性论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,会员在论坛发表的言论仅代表个人观点,不代表论坛立场!
本站部分内容及所有资料来自网络,版权归原作者所有,本站仅仅提供一个观摩学习的环境,将不对任何资源负法律责任!请在下载后24小时内删除!
会员出于学习和科研的目的进行交流和讨论,如有侵犯原作者的权益,请来信告知,我们将立即删除,并将删除结果给予答复,如有版权争议请与yhlbbs@126.com联系!