808

Dependents:   Chromatograph_Mobile

LT1446.cpp

Committer:
nikmaos
Date:
2020-08-14
Revision:
3:fe564cf39107
Parent:
2:09948f1c22bc

File content as of revision 3:fe564cf39107:

#include "LT1446.h"
//повторное объявление из-за использования внешней переменной и ошибки множественного объявления
LT1446_MEM_t LT1446_MEM;
//экземпляр по умолчанию
LT1446_t LT1446_0;

 void LT1446_CalibrateCh(LT1446_Calibr_t *dac,float k, float b)
{
     dac->k=k;
     dac->b=b;
}
//Вычислить значение для передачи в ЦАП
void LT1446_CalculateCh(LT1446_Calibr_t *dac)
{
    dac->Code=(uint16_t)(dac->k*dac->Volts+dac->b);
    if (dac->Code>4095) dac->Code=4095;
}

void LT1446_Write(LT1446_t *chip)
{
    
    /*
    LT1446_MEM.DACA=chip->dacA.Code;
    LT1446_MEM.DACB=chip->dacB.Code;
    Cs=0;
    TED2.write(LT1446_MEM.b3);
    TED2.write(LT1446_MEM.b2);
    TED2.write(LT1446_MEM.b1);
    Cs=1;*/
}
void LTCwrite(LT1446_t *chip)
{
    LTC1446_CS=0;
    LTC1446_CLK=0;
    /*Записываем канал B*/
    uint8_t b=12;
    while(b--)
    {
        LTC1446_DOUT=chip->dacB.Code&(1<<b);
        LTC1446_CLK=1;
        LTC1446_DOUT=0;
        LTC1446_CLK=0;
    }
    /*Канал А */
    b=12;
    while(b--)
    {
        LTC1446_DOUT=chip->dacA.Code&(1<<b);
        LTC1446_CLK=1;
        LTC1446_DOUT=0;
        LTC1446_CLK=0;        
    }
    LTC1446_CS=1;
}