Внешний АЦП ADS1115 + патч флоукод

AVR версия программы

Внешний АЦП ADS1115 + патч флоукод

Сообщение DmitryAnarhist (DmitryAnarhist) » 11 сен 2018, 00:00

Выкладываю пример работы с АЦП ADS1115 по шине I2C, а так же изменённый файл флоукода, стандартный файл вызывал зависание контроллера при любых неполадках на шине с любым из подключённых устройств, изменённый позволяет подключать и отключать любые устройства к шине на горячую без последствий для всего остального функционала.
АЦП работает на напряжении до 5 вольт, напряжение на входах так-же не должно превышать 5 вольт.
В примере всё откомментировано, остальное в даташите, функций много, все в одном примере не описать, да и не нужно, всё довольно просто.
В архив помещаю пример четырёхканального вольтмера,
изменённый файл флоукода распаковать в: C:\Program Files\Flowcode(AVR)\v5\CAL\AVR (если установка производилась в папку по умолчанию)
Там же даташит, что-бы не искать.
+Бонусы: калькулятор облегчающий двоичный счёт, и сканер I2C показывающий адреса всех устройств подключённых к шине.
Все примеры работают с индикатором 1602 (просто потому, что он у всех есть)
У вас нет доступа для просмотра вложений в этом сообщении.
Аватар пользователя
Ник: DmitryAnarhist
Имя: DmitryAnarhist
(SPB)
Ученик
Ученик
Информация о пользователе

Re: Внешний АЦП ADS1115 + патч флоукод

Сообщение andrewproffi (Андрей) » 11 сен 2018, 04:33

Спасибо. Полезный патч, единственный момент, я конечно не шибко в этом разбираюсь, но на мой взгляд полностью убирать паузу после команды stop не стоит.
И надеюсь автор не будет против, оставлю ссылку на свой проектик - usb adc module на базе этого ацп и atmega8. небольшая приставка к пк - 4 канальный вольтметр, с выводом информации на компьютер.
https://youtu.be/Gg8al_oQDrg - прошивка автозагрузчика
https://youtu.be/0UfvZ7icP-w - описание программы в flowcode
https://youtu.be/yVB_rxiJKkQ - программа для компа
У вас нет доступа для просмотра вложений в этом сообщении.
Аватар пользователя
Ник: andrewproffi
Имя: Андрей
(Томск)
Супер разработчик
Супер разработчик
Информация о пользователе

Re: Внешний АЦП ADS1115 + патч флоукод

Сообщение Вячеслав (Вячеслав) » 11 сен 2018, 04:49

DmitryAnarhist писал(а):стандартный файл вызывал зависание контроллера при любых неполадках на шине с любым из подключённых устройств

Дефект заметил с другими компонентами( датчиками) и на PIC. На словах, можно пояснить алгоритм устранения дефекта? Проще будет разбирать программу реализации выхода из зависания. Мне видится, что не все выходы из макросов учтены, а только "нормальные", по if=1".
Аватар пользователя
Ник: Вячеслав
Имя: Вячеслав
(Саратов)
Разработчик
Разработчик
Информация о пользователе
Вернуться наверх

Re: Внешний АЦП ADS1115 + патч флоукод

Сообщение andrewproffi (Андрей) » 11 сен 2018, 05:12

в стандартном компоненте когда подходит момент проверки ACK ответа от устройства - стоит цикл while, в котором программа крутится пока ответ не придет, а если устройства нет на линии то получаем "зависание". Дмитрий добавил в цикл ожидания ответа счетчик с паузой, таким образом если ответ от устройства не получен то через заданное время 50-200мкс программа выйдет из этого цикла и ack=1 будет говорить о том что устройство не ответило.
Аватар пользователя
Ник: andrewproffi
Имя: Андрей
(Томск)
Супер разработчик
Супер разработчик
Информация о пользователе
Вернуться наверх

Re: Внешний АЦП ADS1115 + патч флоукод

Сообщение DmitryAnarhist (DmitryAnarhist) » 11 сен 2018, 08:17

Да, всё именно так как и сказал Андрей.
Изменён цикл в четырёх местах кода, вот картинка:
Замена цикла.jpg

Так же есть возможность изменения предделителя шины:
Установка частоты.jpg

И в софтовом варианте частота меняется изменением задержки:
Софтверная частота.jpg

Задержку после стоп, оставил закомментированной, никакого влияния на работу на всех частотах шины от этой задержки не обнаружилось, тут уже вопрос к подключаемым устройствам, если какой-то из датчиков без неё не заработает, можно вернуть, вот она:
Задержка после стопа.jpg
У вас нет доступа для просмотра вложений в этом сообщении.
Аватар пользователя
Ник: DmitryAnarhist
Имя: DmitryAnarhist
(SPB)
Ученик
Ученик
Информация о пользователе
Вернуться наверх


Вернуться в Flowcode AVR

Кто сейчас на форуме

Пользователь просматривает форум: нет зарегистрированных пользователей

cron