Jump to content

    

инициализация и работа asd1248

Recommended Posts

_3m

Тема 2014 года уже закрыта так что начну новую.

Имеется ads1248 подключенный к stm32f030 на аппаратный интерфейс spi2, cs программный. Вход reset ацп не задействован и подтянут на "1", на "1" также подтянут вход start.

При тестировании обнаружено что регистры прекрасно читаются в них правильные дефолтные значения после сброса но запись значения в регистрах не меняет. На форуме ti по данной аномалии есть только одна тема и там ответили что нужно отключить continuous mode командой SDATAC. Я это попробовал но получилось нестабильно: иногда после инициализации регистры пишутся, иногда нет.

Посему вопрос: как правильно инициализировать ads1248 ? Нужно при инициализации ли синхронизироваться с drdy ?

Share this post


Link to post
Share on other sites

Zeal0t
  TPIN_ADC_CS   ::off();
  TPIN_ADC_START::off();
  TPIN_ADC_POWER::on ();
  
  // на основании DS АЦП нужно 16 ms на запуск после подачи питания
  msDelay(16);
  
  TPIN_ADC_CS::on();

  TPIN_ADC_START::on();
  {
    CMD(ADS1248_CMD_RESET);
    CMD(ADS1248_CMD_SDATAC);
    CMD_RegRead(); // читаем все регистры
  }
  TPIN_ADC_START::off();
  
  ...........
  
  TPIN_ADC_START::on();
  {
    CMD_RegWrite(); // пишем измененные регистры
  }
  TPIN_ADC_START::off();

  
  

  из рабочего проекта
  правда у меня есть управление пином START
  CMD( x ) - посылает по SPI команду АЦП

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.