Определение наличие устройств на шине I2C

PIC версия программы(разные темы)

Re: Определение наличие устройств на шине I2C

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

в Software реализации стоит IF, но я не знаю может и исправлял или здесь был исправленный файл.
а вот в Hardware реализации я без понятия что, там какие то страшные биты.
Аватар пользователя
Ник: andrewproffi
Имя: Андрей
(Томск)
Гуру
Гуру
Информация о пользователе

Re: Определение наличие устройств на шине I2C

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

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

Re: Определение наличие устройств на шине I2C

Сообщение Прохожий (Прохожий) » 05 сен 2018, 11:53

DmitryAnarhist писал(а):Поскольку контроллер загнан в бесконечный цикл ожидания ответа от датчика,(

Выход из бесконечного цикла можно прерыванием по таймеру попытаться сделать. Своего рода ватчьдог. Или можно в цикл счётчик ставить, при переполнении назначенное требование выполнить, переопросить шину.
Ник: Прохожий
Имя: Прохожий
Практик
Практик
Информация о пользователе
Вернуться наверх

Re: Определение наличие устройств на шине I2C

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

тут тоже все просто, делаем цикл с условием "крутимся пока ack = 1 И пока n<255" перед циклом сбросили n в 0, в цикле увеличиваем на 1.
в цикле при необходимости добавить паузу в 10-100мкс
Аватар пользователя
Ник: andrewproffi
Имя: Андрей
(Томск)
Гуру
Гуру
Информация о пользователе
Вернуться наверх

Re: Определение наличие устройств на шине I2C

Сообщение DmitryAnarhist (DmitryAnarhist) » 05 сен 2018, 20:22

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

Re: Определение наличие устройств на шине I2C

Сообщение DmitryAnarhist (DmitryAnarhist) » 05 сен 2018, 21:35

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

Re: Определение наличие устройств на шине I2C

Сообщение Прохожий (Прохожий) » 05 сен 2018, 22:11

Дмитрий, молодцом!!! :) Выложить лучше темой одного поста, то есть готовым решением :) Жаль, что не в АВР конечно, но тут уж ничего не поделать :)
Ник: Прохожий
Имя: Прохожий
Практик
Практик
Информация о пользователе
Вернуться наверх

Re: Определение наличие устройств на шине I2C

Сообщение DmitryAnarhist (DmitryAnarhist) » 05 сен 2018, 22:47

Почему не в авр... в авр конечно...)
Но оно я думаю аналогично и там и там.
Аватар пользователя
Ник: DmitryAnarhist
Имя: DmitryAnarhist
(SPB)
Ученик
Ученик
Информация о пользователе
Вернуться наверх

Re: Определение наличие устройств на шине I2C

Сообщение Прохожий (Прохожий) » 06 сен 2018, 06:51

Так я подумал, что ПИК потому, что находимся в топике "Портал » Список форумов ‹ Flowcode ‹ Flowcode PIC" Аж от сердца отлегло :)
Ник: Прохожий
Имя: Прохожий
Практик
Практик
Информация о пользователе
Вернуться наверх

Re: Определение наличие устройств на шине I2C

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

Аватар пользователя
Ник: DmitryAnarhist
Имя: DmitryAnarhist
(SPB)
Ученик
Ученик
Информация о пользователе
Вернуться наверх

Пред.

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

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

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

cron