реклама на сайте
подробности

 
 
> Проблемы с MAX44009
kreker
сообщение Apr 9 2016, 13:22
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 45
Регистрация: 20-09-14
Пользователь №: 82 877



Доброго дня.

Мне надо получить разовые показания освещённости с дачтика MAX44009.
Седлал всё, как описано тут.

Проблема в том, что прерывание происходит только один раз, после чего уровень на пине INT остаётся высоким постоянно (см. прикреплённые файлы i2c сессии логического анализатора и скриншоты).
И с описанием в статье не очень-то сходится: после изменения регистра конфигурации уровень на пине INT должен смениться пару раз, но этого не происходит.
Код
void setupMax44009(void)
{
  i2c_write(MAX44009_INTERRUPT_ENA_REG, 0x01); // Set ADDR: 0x01, VAL: [b7]...[b0] = 0000 0001, after RESET
  i2c_write(MAX44009_CONFIG_REG, 0xC7); // Set ADDR: 0x02, VAL: [b7]...[b0] = 1100 0111, after RESET
  i2c_write(MAX44009_THRESH_LOW_REG, 0xFF); // Set ADDR: 0x06, VAL: [b7]...[b0] = 1111 1111, after RESET
  i2c_write(MAX44009_THRESH_HIGH_REG, 0x00); // Set ADDR: 0x05, VAL: [b7]...[b0] = 0000 0000, after RESET
  i2c_write(MAX44009_THRESH_TIMER_REG, 0x00); // Set ADDR: 0x07, VAL: [b7]...[b0] = 0000 0000, after RESET
}

Прикрепленное изображение

Прикрепленное изображение

Прикрепленное изображение


Прикрепленный файл  MAX44009_i2c_session.zip ( 8.84 килобайт ) Кол-во скачиваний: 24


Может кто подсказать, что сделано не так?
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th August 2025 - 05:09
Рейтинг@Mail.ru


Страница сгенерированна за 0.01367 секунд с 7
ELECTRONIX ©2004-2016