| AD7705在电子秤中的应用 |
| 类别:单片机/DSP |
|                        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的工作方式来实现。     ④AD7705的初始化和配置:AD7705的配置与设计的硬件紧密相关,只有在正确配置的情况下硬件才能正常工作。同时,对AD7705内每一个寄存器的配置都必须从写通信寄存器开始,通过写通信寄存器完成通道的选择和设置下一次操作的寄存器的选择。     图6所示为此称重传感器数据采集主流程图。其程序清单见附录。                    图2 读周期时序图                    图3 写周期时序图          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采用低电平                    图4 写周期时序流程图                    图5读周期时序流程图         触发     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                    图6 主程序流程图          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           |
- pic16单片机应..
- 2008-1-9
- 基于单片机的某车型..
- 2008-1-7
- 基于ARM的FPG..
- 2008-1-7
- 基于单片机的电热水..
- 2007-11-15
- 一种基于单片机的汽..
- 2007-11-15
- 基于单片机的电子导..
- 2007-11-8
- 51单片机边沿触发..
- 2007-11-8
- 如何选择细纱机主电..
- 2007-11-5
- 单片机编程技巧
- 2007-9-14
- 空压机变频改造技术..
- 2007-9-3
- 运用定点DSP实现..
- 2007-8-7
- 基于TMS320C..
- 2007-8-9
- 一种用于图像认证的..
- 2007-7-29
- TMS320F20..
- 2007-8-9
- 多DSP系统互连方..
- 2007-8-9
- C5402 DSP..
- 2007-8-9
- 具有高可靠性的高速..
- 2007-8-9
- 基于DSP的实时M..
- 2007-8-7
- 带ARM核的双CP..
- 2007-8-9
- 基于TMS320V..
- 2007-8-9









