打印
[技术求助]

初始化代码

[复制链接]
570|16
手机看帖
扫描二维码
随时随地手机跟帖
沙发
dengdc| | 2020-6-8 23:54 | 只看该作者
你是PLC的应用吗?很好的方案,标准的SPI接口,程序网上可以找到。

使用特权

评论回复
板凳
heweibig| | 2020-6-8 23:57 | 只看该作者

PGA280 + ADS1259 has been designed to work together to create one easy solution for high resolution/high voltage industrial applications.
2 Channel, fast, MUX PGA front end for multi channel control with Single Cycle settling ADC for enhanced throughput in MUX
Fully differential +/-15V PGA signal swing for seamless ADS input
ADS1259 clock output to synchronize the PGA280 input chopping to preserve the low noise performance.
Low 1/f noise of PGA for 24 bit high resolution and sensitivity of ADC
High PGA CMRR + ADC Digital filter for 16, 50, 60, or 400Hz rejection

使用特权

评论回复
地板
airwill| | 2020-6-13 07:41 | 只看该作者
网上搜来一段,  可以看看

#include <msp430x14x.h>
#include "IO.h"

/* PGA280 Cmd */
#define PGA280_READ_CMD         0x80    //PGA280���Ĵ���ָ��
#define PGA280_WRITE_CMD        0x40    //PGA280д�Ĵ���ָ��
/* PGA280 REG */
#define PGA280_GAIN_MUX_REG     0x00    //�ź��������üĴ�����W/R���Զ�ѡ��
#define PGA280_SWITCH_REG       0x06    //�ź�����ͨ��ѡ��Ĵ�����W/R���ֶ��趨��
#define PGA280_SOFT_RESET_REG   0x01    //������λ�Ĵ�����W��д0x01��ʾ��λ��

/*************************************************************************************/  
void pga280_Write_byte(unsigned char Data_byte)
{  
    unsigned char i;
    CLR_PGA_CS;
      _NOP();
    _NOP();
    _NOP();
    _NOP();
   SET_ADS_SCLK;
     _NOP();
    _NOP();
    _NOP();
    _NOP();
   
   for(i = 0; i < 8; i++)  
   {
           
      
      SET_ADS_SCLK;
      if((Data_byte & 0x80)==0x80)
      {
           SET_DIN;
      }
      else
      {
           CLR_DIN;
      }  
      _NOP();
      _NOP();
       _NOP();
      _NOP();
       _NOP();
      _NOP();
       _NOP();
    _NOP();
     _NOP();
    _NOP();
      CLR_ADS_SCLK;
      _NOP();
      _NOP();
     _NOP();
      _NOP();
       _NOP();
      _NOP();
       _NOP();
    _NOP();
      
      Data_byte <<= 1;
   }
   _NOP();
   _NOP();
  SET_ADS_SCLK;
     _NOP();
  //  CLR_ADS_SCLK;
//   SET_PGA_CS;
//  SET_ADS_CS;
  // SET_DIN;  
}
/*********************************
MSP430��ADS1259���Ĵ�����ֵ
����������
**********************************/
unsigned int pga280_Read_from_Rg(unsigned char reg)
{  
    unsigned char i;
    unsigned char addata;
    unsigned int Data_read;
    CLR_PGA_CS;
    Data_read=0;
    ADS1259_DOUT;//����P2.3Ϊ����
     
    pga280_Write_byte(reg);//ѡ��Ĵ�����ַ���Ĵ�������
     _NOP();_NOP();
     for(i = 0; i < 8; i++)  
    {      
           
                SET_ADS_SCLK;  
          _NOP();_NOP();_NOP();_NOP();
                Data_read <<= 1;
          CLR_ADS_SCLK;         
          _NOP();_NOP();_NOP();_NOP();
          addata=(P1IN>>5)&0x01;//P2IN����
          if(addata)
          {
                Data_read |=0x01;
           }           
            
     }
     _NOP();
     CLR_ADS_SCLK;
    _NOP();
    SET_PGA_CS;
    return(Data_read);
}


/*************************************************************************************/  
void pga280_Write_word(unsigned int Data_byte)
{  
    unsigned char i;
    CLR_PGA_CS;
      _NOP();
    _NOP();
    _NOP();
    _NOP();
   SET_ADS_SCLK;
     _NOP();
    _NOP();
    _NOP();
    _NOP();
   
     
   for(i = 0; i < 16; i++)  
   {
           
      
      SET_ADS_SCLK;
      if((Data_byte & 0x8000)==0x8000)
      {
           SET_DIN;
      }
      else
      {
           CLR_DIN;
      }  
      _NOP();
      _NOP();
       _NOP();
      _NOP();
       _NOP();
      _NOP();
       _NOP();
    _NOP();
     _NOP();
    _NOP();
      CLR_ADS_SCLK;
      _NOP();
      _NOP();
     _NOP();
      _NOP();
       _NOP();
      _NOP();
       _NOP();
    _NOP();
      
      Data_byte <<= 1;
   }
   _NOP();
   _NOP();
  SET_ADS_SCLK;
     _NOP();
  //  CLR_ADS_SCLK;
    SET_PGA_CS;
//  SET_ADS_CS;
  // SET_DIN;  
}

使用特权

评论回复
5
shimx| | 2020-6-21 10:19 | 只看该作者

有个下载的链接,GPIO模拟SPI,
http://wenku.baidu.com/view/3aec66d349649b6648d74768.html

使用特权

评论回复
6
jiahy|  楼主 | 2020-6-21 10:23 | 只看该作者
谢谢,找到原因了,在连续操作PGA280时,不能一直将CS引脚置低电平。

使用特权

评论回复
7
spark周| | 2020-6-21 10:25 | 只看该作者
可以实现直流信号隔离吗?

使用特权

评论回复
8
jiajs| | 2020-6-21 10:28 | 只看该作者

想把DC 75mV 输入隔离输出 原本想用线性光耦 刚看了一下AMC1200感觉这个芯片应该可以更加简化电路

使用特权

评论回复
9
spark周| | 2020-6-21 10:33 | 只看该作者
看了应用基本都是AC输入的 不清楚DC75mV输入 可以输出DC 75mV吗?

使用特权

评论回复
10
wyjie| | 2020-6-21 10:37 | 只看该作者
AMC1200的输出电压最高是125MV

使用特权

评论回复
11
zhanghqi| | 2020-6-21 10:47 | 只看该作者
OPA380好像不能输出负电压吧

使用特权

评论回复
12
jlyuan| | 2020-6-21 10:50 | 只看该作者
按照技术手册来搭电路   应该没什么问题   楼主

使用特权

评论回复
13
dengdc| | 2020-6-21 10:53 | 只看该作者
一般   将应用手册好好钻研钻研    将芯片资料吃透   基本就没有什么问题

使用特权

评论回复
14
shimx| | 2020-6-21 10:59 | 只看该作者

从手册的技术指标看, 没有任何证据表明只能交流信号.
增益特性图上也没有给出低频特性不良的状态.
可以放大直流信号.

使用特权

评论回复
15
zhenykun| | 2020-6-21 11:03 | 只看该作者
这个资料的我看看的

使用特权

评论回复
16
happy_10| | 2020-6-21 11:07 | 只看该作者
可能是芯片本身的问题

使用特权

评论回复
17
jiahy|  楼主 | 2020-6-21 11:30 | 只看该作者
嗯,我知道了,多谢啊

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

862

主题

9861

帖子

4

粉丝