ADS1115

На этом форуме Вы можете задать вопросы знатокам программы и автору.
Ответить
Ingwar
Полковник
Сообщения: 1929
Зарегистрирован: 28.10.2015{, 22:47}
Репутация: 223
Откуда: Ленобласть
Имя: Игорь

ADS1115

#1

Сообщение Ingwar » 22.01.2019{, 15:09}

Прошу специалистов прокомментировать нижеследующее:
Нашел такое описание ADS1115
http://radiolaba.ru/microcotrollers/ads ... -atsp.html

В чистом проекте вставил стандартный блок
СпойлерПоказать
1.png
результат компиляции
СпойлерПоказать
#include <Wire.h>
#include <Adafruit_ADS1015.h>
Adafruit_ADS1115 _ADS1x15_1_instance(0x4A);
int _ADS1x15_1_Output_1 = 0;
void setup()
{
_ADS1x15_1_instance.setGain(GAIN_ONE);
_ADS1x15_1_instance.begin();
}
void loop()
{

//Плата:1
_ADS1x15_1_Output_1 = _ADS1x15_1_instance.readADC_SingleEnded(0);

}
просмотрев телячими глазами файлы Adafruit_ADS1015.h и Adafruit_ADS1015.cpp
делаю выводы, что настройки которые использует Flprog:

_ADS1x15_1_instance.setGain(GAIN_ONE); это #define ADS1015_REG_CONFIG_PGA_4_096V (0x0200) // +/-4.096V range = Gain 1 (настройка усиления)
Adafruit_ADS1115 _ADS1x15_1_instance(0x4A); (установка адреса и типа АЦП)
_ADS1x15_1_instance.begin(); (куда то посылает наверное - не знаю... :smile427: )
_ADS1x15_1_Output_1 = _ADS1x15_1_instance.readADC_SingleEnded(0); (вроде как одиночное чтение)

а все остальные настройки типо по умолчанию (в библиотеке (default)).
Но возник вопрос - в описании конфигурационного регистра DR согласно ДШ (Programmable Data Rate: 8 SPS to 860 SPS)

а в бибке
СпойлерПоказать
#define ADS1015_REG_CONFIG_DR_MASK (0x00E0)
#define ADS1015_REG_CONFIG_DR_128SPS (0x0000) // 128 samples per second
#define ADS1015_REG_CONFIG_DR_250SPS (0x0020) // 250 samples per second
#define ADS1015_REG_CONFIG_DR_490SPS (0x0040) // 490 samples per second
#define ADS1015_REG_CONFIG_DR_920SPS (0x0060) // 920 samples per second
#define ADS1015_REG_CONFIG_DR_1600SPS (0x0080) // 1600 samples per second (default)
#define ADS1015_REG_CONFIG_DR_2400SPS (0x00A0) // 2400 samples per second
#define ADS1015_REG_CONFIG_DR_3300SPS (0x00C0) // 3300 samples per second
Кому верить? Или все правы, просто я не понимаю, что это разные параметры? :smile250:
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

ADS1115

#2

Сообщение Sancho » 22.01.2019{, 16:15}

Там указанны параметры для 1015. Кол-во замеров.
Сравни два даташита.
СпойлерПоказать
screenshot_19-01-22_16-14-15.png
screenshot_19-01-22_16-14-52.png
Отправлено спустя 1 минуту 22 секунды:
1115 медленнее - из-за разрядности. но точнее :)
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Ingwar
Полковник
Сообщения: 1929
Зарегистрирован: 28.10.2015{, 22:47}
Репутация: 223
Откуда: Ленобласть
Имя: Игорь

ADS1115

#3

Сообщение Ingwar » 22.01.2019{, 16:42}

Точна...
СпойлерПоказать
/*=========================================================================
CONVERSION DELAY (in mS)
-----------------------------------------------------------------------*/
#define ADS1015_CONVERSIONDELAY (1)
#define ADS1115_CONVERSIONDELAY (8)
СпойлерПоказать
Adafruit_ADS1015::Adafruit_ADS1015(uint8_t i2cAddress)
{
m_i2cAddress = i2cAddress;
m_conversionDelay = ADS1015_CONVERSIONDELAY;
m_bitShift = 4;
m_gain = GAIN_TWOTHIRDS; /* +/- 6.144V range (limited to VDD +0.3V max!) */
}

/**************************************************************************/
/*!
@brief Instantiates a new ADS1115 class w/appropriate properties
*/
/**************************************************************************/
Adafruit_ADS1115::Adafruit_ADS1115(uint8_t i2cAddress)
{
m_i2cAddress = i2cAddress;
m_conversionDelay = ADS1115_CONVERSIONDELAY;
m_bitShift = 0;
m_gain = GAIN_TWOTHIRDS; /* +/- 6.144V range (limited to VDD +0.3V max!) */
}
СпойлерПоказать
// Wait for the conversion to complete
delay(m_conversionDelay);
Спасибо :smile9:
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.

Iqubik
Сержант
Сообщения: 147
Зарегистрирован: 20.01.2020{, 06:10}
Репутация: 20
Откуда: Ставрополь
Имя: Николай

ADS1115

#4

Сообщение Iqubik » 18.05.2020{, 01:25}

А может кто знает почему ads1115 в дифф режиме на 0_1 входе даёт шумовое значение в -4600 попугаев когда там никого нет, при этом вход 2_3 корректно показывает 0 попугаев, при этом оба входа корректно ощущают 4.2 тестовых вольта.

Мозги stm32duino, питание 5в с стм платы

Ingwar
Полковник
Сообщения: 1929
Зарегистрирован: 28.10.2015{, 22:47}
Репутация: 223
Откуда: Ленобласть
Имя: Игорь

ADS1115

#5

Сообщение Ingwar » 18.05.2020{, 17:24}

Iqubik писал(а):
18.05.2020{, 01:25}
на 0_1 входе даёт шумовое значение в -4600 попугаев
Входа закорочены?
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.

Iqubik
Сержант
Сообщения: 147
Зарегистрирован: 20.01.2020{, 06:10}
Репутация: 20
Откуда: Ставрополь
Имя: Николай

ADS1115

#6

Сообщение Iqubik » 18.05.2020{, 17:40}

Ingwar писал(а):
18.05.2020{, 17:24}
Iqubik писал(а):
18.05.2020{, 01:25}
на 0_1 входе даёт шумовое значение в -4600 попугаев
Входа закорочены?
Всё в воздухе. Пока только придумал на землю их подтянуть через высокомный резистор. Кстати почему то сама stm32 так же на своих аналогах даёт стартовый шум. А ads1115 на 0.1 дифф отрицательный потенциал в -4600 ед

Ingwar
Полковник
Сообщения: 1929
Зарегистрирован: 28.10.2015{, 22:47}
Репутация: 223
Откуда: Ленобласть
Имя: Игорь

ADS1115

#7

Сообщение Ingwar » 18.05.2020{, 20:21}

Iqubik писал(а):
18.05.2020{, 17:40}
А ads1115 на 0.1 дифф отрицательный потенциал в -4600 ед
Нужно закоротить между собой диф. входа и посмотреть. На землю не обязательно подтягивать.
Закоротить максимально коротким проводником и до кучи кондер 0.1мкФ еще повесить максимально близко к входам ацп. Длинная же перемычка, будет работать как приемная антенна.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.

Ответить

Вернуться в «Спросить у знатоков»