[MODULE]/AD/DA2018. 2. 25. 07:15

LTC2704 - Quad 12-, 14- and 16-Bit DAC 테스트

LTC2704 - Quad 12-, 14- and 16-Bit Voltage Output SoftSpan DACs 테스트




우선 SPI 2 정상 출력되는것만 확인.
/LDAC 핀을 흔들어 줘야 정상 출력이 나올것 같은데... 설명이 조금 에매하다...
테스트 해봐야 정확하게 알수 있을듯.

When the asynchronous load pin, LDAC, is taken low, all DACs are updated with code and span data (data in B1 buffers is copied into B2 buffers). CS/LD must be high during this operation. The use of LDAC is functionally identical to the “Update B1→B2” commands.













LTC2704 초기화 코드

void LTC2704_Init(void)

{

    LTC2704_CS_INIT();

    LTC2704_CS0_HI();

    LTC2704_CS1_HI();

    LTC2704_SPI_INIT();    

    

    LTC2704_CS0_LO(); 

    LTC2704_SPI_Send(0x2F);   //range

    LTC2704_SPI_Send(0x00);

    LTC2704_SPI_Send(0x01);   //+10V

    LTC2704_CS0_HI();  

}       






LTC2704 Data 출력 코드



void LTC2704_DataSet0(unsigned char Ch, unsigned short Data)

{

    unsigned char chanel[4] = {0, 2, 4, 6};    

    

    LTC2704_CS0_LO(); 

    LTC2704_SPI_Send(0x30+chanel[Ch]);

    LTC2704_SPI_Send(Data>>8);

    LTC2704_SPI_Send(Data);

    LTC2704_CS0_HI();

}


void LTC2704_DataOut0(unsigned char Ch)

{

    unsigned char chanel[4] = {0, 2, 4, 6};    

    

    LTC2704_CS0_LO(); 

    LTC2704_SPI_Send(0x40+chanel[Ch]);

    

    LTC2704_SPI_Send(0x00);

    LTC2704_SPI_Send(0x00);

    LTC2704_CS0_HI(); 

}


Posted by nexp
TAG DAC, LTC2704

댓글을 달아 주세요

[MODULE]/AD/DA2007. 8. 10. 00:22

고정밀, 고속 DAC AD5791 모듈 보드 제작 및 테스트

고정밀, 고속 DAC AD5791 모듈 보드 제작 및 테스트


[DisptVelMeter] 리니어 엔코더를 이용한 변위 및 속도 측정 장치 개발 프로젝트 용으로 선정한 AD5791 를 AD/DA 모듈 핀맵에 호화되도록 제작해서 테스트해 보았다.


- 1 ppm 20-Bit, ±1 LSB INL, Voltage Output DAC

- 1MSPS Multi(±l2, +5An, +3Dig); Multi(±l2, +5An, +5Dig); Multi(±l5, +5An, +3Dig); Multi(±l5, +5An, +5Dig) 126.3mW

- AD5791 $64.58


최대 출력 속도 1MSPS 이고1ppm 20bit 해상도로 스펙은 화려하다. 그만큼 가격도 비사다. 과연 이정도의 성능이 나올까?


1 ppm resolution
1 ppm INL
7.5 nV/√Hz noise spectral density
0.19 LSB long term linearity stability
<0.05 ppm/°C temperature drift
1 μs settling time
1 nV-sec glitch impulse
Operating temperature range: ?40°C to +125°C
20-lead TSSOP package
Wide power supply range up to ±16.5 V
35 MHz Schmitt triggered digital interface
1.8 V compatible digital interface




AD5791 블록도



DAC5791 응용회로도




AD5791 타이밍도
/CS핀이 없지만 클럭출력할때 /SYNC를 Low로 해 주어야 한다. SYNC기능을 사용할 때만 필요한줄 알았는데... 클럭출력시 Low로 해 주어야 한다. DAC출력은 /LDAC 하강에지에서 동작한다. DAC출력 레지스터에 값을 써주면 된다.




DAC5971 사용시 주의사항
다른 DAC사용할때와 달리 몇가지 주의사항이 필요하다.

초기화시에 컨트롤 레지스터를 설정해 주어야 한다. 칩 디폴트로 DAC 출력이 Off로 설정되어 있기 때문에 DAC데이터 레지스터에 값을 쓰는것만으로 출력이 되지 않는다. 이부분때문에 좀 고생했다. 주의가 필요하다.


OPGND, DACTRI비트가 디폴트 값으로 1이므로 정상동작을 위해 초기화가 필요하다.





AD5791 DAC초기화 코드
컨트롤레지스터는 0x200000으로 시작하고 DAC가  Off되어 있는 디폴트 값을 0으로 초기화 해 주어야 한다.

void DacInit(void)
{
  :
    DAC_SPI_INIT();
   
    Delay(100);
    DAC_CS_LO();
    DAC5791_SYNC_LO();
 
    temp = 0x00200010;
    DAC_SPI_Write(temp>>16);
    DAC_SPI_Write(temp>>8);
    DAC_SPI_Write(temp);
    DAC5791_SYNC_HI();
}



DAC출력 레지스터


Posted by nexp

댓글을 달아 주세요

[MODULE]/AD/DA2006. 10. 1. 15:08

DAC8554, DAC8555제어

DAC8554, DAC8555제어

블럭도
16비트 고속, 고해상도 DAC컨트롤러로 Opamp내장 타입의 전압 출력을 가진다.
(+)(-)양전원 레퍼런스를 설정할 수 있다.



핀맵

 


레퍼런스회로

TMS320 DSP (TMS320F2808, TMS320F2812)를 이용한 회로 연결 예

 


제어 타이밍
데이터 시트에 나오지 않는 신호 하나 때문에 하루 까먹었다.
LDAC신호의 라이징 에지에서 쉬프트레지스터에 내용이 반영되고 DAC값이 출력된다.
따라서 DAC값을 반여하고 싶을때는 LDAC를 트리거 시켜 주면 된다.



데이터 형식
데이터에서 특이 사항은 D23, D24는 A0, A1핀에 설정된 값을 출력하면되고 이부분이 DAC8555와 다른 부분이라 조금 당황 했다. DAC8555는 Reset핀이 연결되므로 무조건 1로 설정 했다.





 

 



 

Posted by nexp
TAG DAC

댓글을 달아 주세요