加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

Digital到4-20mA电流转换器AD421使用中的问题

(2010-10-09 17:05:27)
标签:

校园

分类: 光电技术

(1)AD421的Vcc电压的确定

    AD421基本应用电路(见datasheet Figure 11)中,由外部电流环电源和DN25D提供Vcc,该Vcc可以为3.3V(此时LV管脚应经0.1uF电容接至Vcc),也可以为5V(此时LV应直接接地),那么到底应该是3.3V还是5V呢?这应该由控制AD421的MCU的工作电源确定。如果MCU采用AT89C51,那此处的Vcc自然就应该是5V。

(2)4-20mA负载的接法

    4-20mA负载应接在DN25D的D与VLOOP的+之间,LOOPRTN接电流环电源的负极。注意LOOPRTN与COM并不直接相连!

(3)AD421的测试程序

   下述测试程序参考了网上有关例程,并经一定的修改和调试,证明是可行的。

#include "reg51.h"
#include "intrins.h"

sbit AD420_LATCH=P3^6;
sbit AD420_CLK=P2^6;
sbit AD420_DATA=P2^7;

void delayms(unsigned int t)    

{
 unsigned int i;
 while(t--)
 {
  for(i=0;i<125;i++);
      
}

void MaOut(unsigned int out_data)
{
    unsigned char i;
    AD420_CLK=0;
    AD420_DATA=0;
    AD420_LATCH=0;
    for(i=0;i<16;i++)
    {
        if((out_data<<i) & 0x8000)
        {
            AD420_DATA=1;
        }
        else
        {
            AD420_DATA=0;
        }
       delayms(10);
        AD420_CLK=1;
        delayms(10);
        AD420_CLK=0;
    }
    delayms(10);
    AD420_LATCH=1;
    delayms(10);
    AD420_LATCH=0;
    AD420_CLK=0;
    AD420_DATA=0;
}

main()
{

unsigned int outdata;
while(1)
 {
 outdata=0x0000;//4mA
 MaOut(outdata);
 delayms(3000);

    outdata=0xC000;//16mA
 MaOut(outdata);
 delayms(3000);
 
 outdata=0x8000;//12mA
 MaOut(outdata);
 delayms(3000);

    outdata=0x4000;//8mA
 MaOut(outdata);
 delayms(3000);
 
 outdata=0xFFFF;//20mA
 MaOut(outdata);
 delayms(3000);
 }
}

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有