Администрация форума не несёт ответственности за достоверность информации и оставляет за собой право редактировать или в особых случаях даже удалять посты без предупреждения. Спасибо за понимание.

Программирование ATMEL в BASCOM.

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.



Простая метеостанция с часами

Сообщений 1 страница 30 из 66

1

Доброго времени суток, камрады! Имеется вопрос, даже небольшая работа для желающих, суть в следующем.

Когда-то, лет шесть-семь назад набрел в Интернете   на схему-программу часов на светодиодных индикаторах, которая мне очень глянулась. Звалась та тема "Простая метеостанция с часами", размещалась тогда на lightportal.at.ua. Схема простейшая: ардуина на 328-й атмеге, кучка МАХ7219 и пара датчиков, освещенности и обычный BME280. Все это дело показывало часы, дату, влажность, давление, температуру и день недели. Программа была на БАСКОМе. Я те часы сделал, но победить программу не смог тогда, не заработала. Сейчас вот вернулся к вопросу заново, захотел закрыть гештальт, ан нет: то же самое. Как я понимаю, программа пробегает один раз и останавливается, не зацикливается. По шинам не ходят сигналы, но мигает секундный светодиод, повешенный на ножку DS3231 - атмега успевает-таки его проинициализироать.

Вобщем, подытожу: есть программа, исходный код, прилично прокомментированный. Но я не программист и синтаксис БАСКОМа мне чужд. А самое главное, что компилируется все без ошибок, но работать - не работает. Сил и времени изучать БАСКОМ ради единственной задачи у меня нет, поэтому прошу помощи у специалиста. Код предоставлю, в разумных пределах оплачу трудозатраты. Есть ли желающие помочь?

0

2

Mantrid написал(а):

Когда-то, лет шесть-семь назад набрел в Интернете на схему-программу часов на светодиодных индикаторах, которая мне очень глянулась.

Приложите схему, листинг программы.

А то получается:
"Исхитрись ка мне добыть
То-чего-не-может-быть..." (с) Л.Филатов ;)

0

3

Минутку, выложу все архивом на Яндых. Вот и картинка есть, как это все выглядело при жизни у автора.

http://forumupload.ru/uploads/0000/25/b8/2186/t827605.jpg

З.Ы.: во, выложил. Там еще и продолжение темы есть в отдельной папке, с  выносными датчиками температуры, но меня интересует прежде всего то, что в корне, с BME280. Ссыль на яндых: https://disk.yandex.ru/d/ANbA-7_lJkMiiA

З.Ы.Ы.: если это о чем-то скажет, то при подключении модуля на BME280  даже "секундный" светодиод проинициализироваться не успевает, горит ровным светом. Фьюзы в атмеге перепробовал все, вплоть до отвала "свистка" USBasp несколько раз. Хорошо хоть, что нормальный программатор есть, микросхема в чувство быстро приводилась и снова эксперименты. ИМХО, не во фьюзах счастье. Сейчас дефолтные стоят, ардуиновские.

Отредактировано Mantrid (2025-03-19 22:10:16)

0

4

Mantrid написал(а):

если это о чем-то скажет, то при подключении модуля на BME280  даже "секундный" светодиод проинициализироваться не успевает, горит ровным светом.

Чужие программы копать - дело непростое и небыстрое... ;)
Окромя абдурины используете готовые модули (часы, датчики) или самостоятельные микросхемы ?
Есть разница в подключениях...

Mantrid написал(а):

Фьюзы в атмеге перепробовал все

Фьюзы надо ставить, какие автор указал.
Они экспериментов не прощают Установка FUSE-битов ...
Наверняка в статье есть. Или в комментариях.
Кстати, а кто автор конструкции ?

Неплохо было бы всю статью посмотреть, но нынче проблемы с доступом в xxx.ua, а VPN-ами лично я не пользуюсь.

0

5

Для начала проверьте правильность подключения I2C. Не перепутаны ли SDA и SCL, и проверьте подтяжку этих линий к + питания. А сайт тот загнулся, войти не получается.

Отредактировано Andrusha (2025-03-20 00:54:54)

+1

6

Nord написал(а):

Окромя абдурины используете готовые модули (часы, датчики) или самостоятельные микросхемы ?

Обижа-а-аете... Конечно, самостоятельные микросхемы! Инженер я или кто? Синие платки... как бы это сказать помягче? Для детей и инфантилов, скажем так. Абдурина тоже не от хорошей жизни, но она хотя бы расписана хорошо и под нее я иногда могу сишный код подправить в чужой проге. Свой написать не могу, хотя пытался много раз :( Не программист вааще. Разница в подключениях мне знакома, уровни соблюдены, а про i2c сам рассказать могу кое-что, причем нелицеприятное. Из собственного опыта и исследований. Поэтому пока допустим на словах, что соединено все правильно. НЕ учесть что-то мог, что проистекает из проги, но что не заметил или не понял. Чуть позже выложу  свое переложение схемы для отладочного стенда, на его основе потом буду делать нормальное изделие.

Nord написал(а):

Кстати, а кто автор конструкции ?

Сие тайна, покрытая "раком". Но вот сильно подозреваю, что Radan. Я ему отписал на "радиокоте", но судя по тому, что камрад из Лисичанска был, и последний раз что сюда, что туда в марте 2022 года заходил... Короче, грустные мысли возникают :(

Nord написал(а):

Неплохо было бы всю статью посмотреть, но нынче проблемы с доступом в xxx.ua, а VPN-ами лично я не пользуюсь.

Та же проблема. А статья, как и тот сайт, не сохранилась, очевидно.

Andrusha написал(а):

Для начала проверьте правильность подключения I2C. Не перепутаны ли SDA и SCL, и проверьте подтяжку этих линий к + питания.

Проверено. Светодиод-то моргает, значит атмега как минимум с часами успевает разок пообщаться.

Отредактировано Mantrid (2025-03-20 07:22:31)

0

7

Отредактировать предыдущее сообщение уже нельзя, так что вот  переложение схемы:

http://forumupload.ru/uploads/0000/25/b8/2186/t391368.gif

На XP2 висит тот мрачный датчик освещения на проводках. Он распаян на имбецильной синей платке, но весьма крохотный, поэтому на стенде я решил его на плату не сажать, тем более она односторонняя пока что. BME280 сидит на основной плате, она покрупнее.

Отредактировано Mantrid (2025-03-20 08:41:47)

0

8

В Протеусе не собирали проект? Попробуйте, может дело всё же в железе.

0

9

Andrusha написал(а):

В Протеусе не собирали проект?

Не, не пользуюсь таким. Мне в железе проще собрать, чем все эти симуляции симулировать. А сложные аналоговые схемы так и просто ни о чем в такого рода программах, пустая трата времени. Тем боле, что MAX7219 аппаратно тоже не так прост, как кажется, есть там свои подводные камни.

Подумываю уже в ардуиновском софте накидать какой-нибудь говнокод, чтобы написал какую-нибудь гадость  на всех пяти индикаторах, благо аппаратно подключение штатное. Но напишу говнокод, он напишет на индикаторах. И что? Впустую потеряно время и силы. Подожду еще чутка, вдруг камрад Nord чего путнее скажет, а потом разберу стенд на запчасти и забуду об этой хотелке, раз никому оно не интересно оказалось, даже за денежку. Плохо, что у БАСКОМа нет какой-то проверки кода внутренней. Или она есть, но неполноценная. В ардуине наверняка бы ошибка сразу высветилась при компиляции.

Отредактировано Mantrid (2025-03-20 11:22:19)

0

10

ВНЕЗАПНО:  ! Исследование MAX7219 (SPI драйвер 7seg led индикаторов) !

0

11

Mantrid написал(а):

Подожду еще чутка, вдруг камрад Nord чего путнее скажет, а потом разберу стенд на запчасти и забуду об этой хотелке, раз никому оно не интересно оказалось, даже за денежку. Плохо, что у БАСКОМа нет какой-то проверки кода внутренней. Или она есть, но неполноценная. В ардуине наверняка бы ошибка сразу высветилась при компиляции.

На Протеус зря ругаетесь, вещь серьезная... ;)

Быстрой реакции не обещаю, но "навскидку" могу предположить, что ошибка скорее аппаратная, о чем уже было сказано ранее.
В авторском исполнении же работало. ;)
Возможно, периферия "слишком китайская", могут быть косяки с адресацией, управлением...
У меня был некислый гемор с "часами" 3231, например...

В BASCOM есть внутренняя проверка кода при компиляции и весьма серьезная.
Логические ошибки программиста не исправит, а многое остальное отлавливает.
Собственно, как и во всех остальных компиляторах.

BASCOM установлен ?

0

12

Nord написал(а):

В авторском исполнении же работало. ;)

Ну, вот из темы по ссылке ! Исследование MAX7219 (SPI драйвер 7seg led индикаторов) ! взят исходник, скомпилирован и чего-то даже появляется на дисплеях, моргает, хоть и неосмысленно пока что. То есть, видно, что программа работает и по шинам что-то ползает. С исходником из шапки темы все было тихо и глухо.

Nord написал(а):

BASCOM установлен ?

Дык. 2.0.8.5. Кнопочка F7 нажимается в ней при всяком удобном случае.

З.Ы.: есть мнение, что означенный БАСКОМ не халяльный. Ищу версию 2.0.7.1

Отредактировано Mantrid (2025-03-20 14:07:25)

0

13

Mantrid написал(а):

есть мнение, что означенный БАСКОМ не халяльный. Ищу версию 2.0.7.1

Вечером в личку кину ссылку на рабочий BASCOM с таблеткой.
Сейчас на планшете, однопальцевый интерфейс годен только для чтения... ;)

0

14

Nord написал(а):

Вечером в личку кину ссылку на рабочий BASCOM с таблеткой.

Merci beaucoup (фр.), но яндексить умею ;) Раньше гуглил, но в последний год гугол крайне унылым стал в плане поиска. Так что яндых, предварительно выхолощенный от безумного количества рекламы. Короче, поставил 2.0.7.1 , нажал F7 и тут же получил на ровно том же самом коде ошибку копиляции с указанием номера строки с ошибкой. А 2.0.8.5 так не делал, молча компилил и все.  Видимо, и правда, разные они бывают. Не все одинаково полезные, так сказать.
Впрочем, ситуацию это принципиально не поменяло в данном случае, даже при комментировании строки с ошибкой.

0

15

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

Кстати, к этому сообщению - ! Исследование MAX7219 (SPI драйвер 7seg led индикаторов) ! - да и вообще данной теме: кто-то, похоже, скопировал в свое время первоисточник, нашлось вот здесь, даже с фотками: http://radan17i.beget.tech/publ/chasy/c … 19-1-0-110

Отредактировано Mantrid (2025-03-20 16:52:02)

0

16

Фьюзы выставлены правильно?

Mantrid написал(а):

Все это дело показывало часы, дату, влажность, давление, температуру и день недели. Программа была на БАСКОМе. Я те часы сделал, но победить программу не смог тогда, не заработала.

Что именно не заработало? Вообще нет "картинки" или какой-то датчик не работает или цифры неправильные?
Все компоненты исправны?

0

17

Пётр написал(а):

Фьюзы выставлены правильно?

А какими они должны быть, Вам известно? Опять же, выше писал, что пробовал разные сочетания. Безрезультатно.

Пётр написал(а):

Вообще нет "картинки" или какой-то датчик не работает или цифры неправильные?

Именно так. "Картинки" нет. В самом начале, при подаче питания, что-то быстро мелькнет на индикаторах, и привет. Все прочее описано в первом сообщении темы. Что было сделано:

1. Проверен монтаж, в частности SPI-шина как минимум до первого "макса". Линии шины не замкнуты ни на что, "соплей" нет. Идут туда, куда положено по схеме;
2. I2C, видать, тоже исправна: светодиод мигает. Занчит, атмега успевает что-то закинуть в регистр "часов" 3231;
3. На обеих шинах нет никакой активности после первого "пробега" при старте;
4. Атмега исправна: заменена на проверенную;
5. Кварц генерит, стало быть, частота тактовая какая-то есть. Ставил фьюзы на внутренний RC-генератор 8 МГц - без разницы.

"Максы" китайские, но такие де точно, из этого же пакета, стоят в других конструкциях, там все нормально.

Так что пока даже не знаю, на аппаратную часть грешить или на программную. Хотя,  судя по всему, стоит плюнуть на это дело. Сделаю другие часы какие-нибудь, не впервой.

Отредактировано Mantrid (2025-03-20 19:55:15)

0

18

Mantrid написал(а):

Ставил фьюзы на внутренний RC-генератор 8 МГц

На схеме кварц 16МГц, и в коде

Код:
 $crystal = 16000000 

изменить одни только фьюзы недостаточно. Попробуйте у Атмеги выставить фьюзы по умолчанию - это тактовая 1МГц и в программе изменить

Код:
 $crystal = 1000000 

Может хоть какая то картинка появится.
Для 16МГц - CKSEL3...0 =1111 и CKDIV8 = 1, то есть биты не запрограммированы.

0

19

Mantrid написал(а):

Так что пока даже не знаю, на аппаратную часть грешить или на программную.

В схеме из архива использована ардуина.
В программе определяются и работают физические порты и интерфейсы МК.

Задам несколько странный (возможно) вопрос, плиз без обид... ;)
Соединения выполнялись согласно распиновке МК или платы ардуино ?

Mantrid написал(а):

Хотя,  судя по всему, стоит плюнуть на это дело.

А где же радиогубительская гордость ? ;)
Тем более, что вам, уже владеющим СИ (не знаю в какой мере), не сложно будет понять BASCOM.
Обратный "переход" несколько сложнее... ;)
Листинг BASCOM, как и любой Basic-подобный, весьма читабельный в отличие от СИ-шной "клинописи"... ;)

0

20

Andrusha написал(а):

Для 16МГц - CKSEL3...0 =1111 и CKDIV8 = 1, то есть биты не запрограммированы.

Ну, это дефолтные ардуиновские фьюзы. Учитывая то, что они инверсные по сути,  то в "авердуде" все соответствующие клеточки пустые. Так что все так и обстоит. Но, думаю, что не во фьюзах дело все же. Какая же это все же  непрактичная вещь - атмеловские контроллеры! То ли дело PIC'и: за все время работы с ними практически ноль проблем! Но, увы, они не получили такой популярности в наше время, не повезло... Там фьюзов нет, там слово конфигурации и оно уже в прошивке. И захочешь - не испортишь.

0

21

Mantrid написал(а):

Какая же это все же  непрактичная вещь - атмеловские контроллеры!

Как же вы категорично неправы !
Не спешите хаять их только из-за того, что эта конструкция не заработала сразу, как ожидалось...

"Не все яблоки кислые, возможно только вам так повезло..." (с) не мое ;)

0

22

Nord написал(а):

Соединения выполнялись согласно распиновке МК или платы ардуино ?

Вопрос задан правильно и понят правильно :)  Перед глазами на работе все время висит картинка, где фотка платы ардуины и подписанными и так, и эдак портами. Сам лично привык оперировать названиями портов, а всякие там "D13" в восьмибитном контроллере вызывают у меня приступы  мизантропии :) Но, увы, в ардуиновских говнокодах в конфигах можно встретить именно распиновку "по плате".  Я уже совил стрелянный в этом плане, так что подобных косяков стараюсь не допускать.

Nord написал(а):

А где же радиогубительская гордость ?

В этой конструкции нет повода для гордости, это проходная вещица, просто чтобы отдохнуть от серьезных дел и немного разгрузить мозги :) Повод есть в других моих проектах... Если откроется  ссылка на вебсайт в профиле, можете полюбопытствовать.  Поэтому, увы, мимо :)

Nord написал(а):

Тем более, что вам, уже владеющим СИ (не знаю в какой мере), не сложно будет понять BASCOM.

Не-не-не, СИ я не владею практически никак. Программирование - это не мое, не дается мне это искусство. Познания в Си - местечковые и чисто от безысходности. Свой код написать не могу, но немножко могу править чужой под свои задачи. И все, не более. Это не подразумевает знания языка в целом, я уже молчу про "плюсы" и про регексы.  Когда-то давно так же примерно пришлось изучать Linux: не хотел, не нужно, непонятно, но от этого зависело многое. Теперь могу подрабатывать админом ;)  Да и зачем мне БАСКОМ? Вот чисто на первый взгляд: он не настолько гибкий, как хотелось бы. Синтаксис вообще ни на что не похож! Это как морская свинка, которая ни к морю, ни к свиньям, пардон за аналогию. Си хотя бы унифицирован, а тут глаз цепляется лишь за общую картину, но циклы разобрать толком уже не могу. Это на мой, непрограммистский взгляд. Понятно, что на форуме БАСКОМа заявить такое это как в мечети перекреститься, но тем не менее :) Не мое, скажу сразу.

Вот, к слову: примененный датчик освещенности у меня в единственном экземпляре есть. А датчиков такого типа, но получше, зовущихся OPT3001, у меня целая лента, хоть и небольшая. Делают оба датчика одно и то же, интерфейс один и тот же, но я даже не знаю, представлен ли OPT3001  в драйверах... или библиотеках... в БАСКОМе. В теории, можно было бы и разобраться, но ради одной конструкции, увы, не буду вникать. Просто не пригодится потом.

Nord написал(а):

Не спешите хаять их только из-за того, что эта конструкция не заработала сразу, как ожидалось...

Если бы это была моя первая конструкция на атмеловских микросхемах, то замечание было бы справедливым. Но она не первая. И даже не десятая. И я уже сталкивался с ситуациями, когда производительности атмеги тупо не хватало в задачах, с которыми справился бы даже ПИК шестнадцатой серии. Увы, задача и ее реализация были заточены именно под атмегу, поэтому портировать своими силами на тот же ESP32 не удалось. А китайская ЛГБТ-атмега или как там ее, просто не работала, несмотря на беспроблемный перенос кода и удачную же компиляцию.

Отредактировано Mantrid (2025-03-20 21:26:21)

0

23

Mantrid написал(а):

Andrusha написал(а):Для начала проверьте правильность подключения I2C. Не перепутаны ли SDA и SCL, и проверьте подтяжку этих линий к + питания.

Проверено. Светодиод-то моргает, значит атмега как минимум с часами успевает разок пообщаться.

По выделенному...
Нет ! Это говорит о том, что часы (!) выдают "спад" на "секундном" выходе.
А вот что при этом делает МК - нам еще не до конца ясно... ;)

В программе я не нашел каких-либо проверок на наличие периферии, поэтому предлагаю:
- для начала отключить от шины I2C всех
  На индикаторах должны отобразиться "0".
- подключите "часы"...
- подключите...
Возможно, "виновник" найдется... ;)

Не в первый раз уже пролистываю программу, ничего наводящего не нашел... ;)

0

24

Nord, спасибо за участие, я это ценю!

Завтра сперва  сковырну китайские "максы", еще парочка непаянных где-то должна быть. Затем сдую "часы": BME280 через популярную китайскую развязку уровней на 2N7002 уже давно отключена. Кстати, знаете ли Вы, что если не подключать резисторы подтяжки на линии i2c-интерфейса, но вызвать библиотеку в коде и инициализировать ее, то цикл вообще не начинается? :) Я вот тоже не знал, недавно выяснил, блин... Затем гляну, мигнет ли это дело  чем-нибудь. Хотя, если и мигнет, то чем? "Часы" отпаяны, данных с них нет; плюс к тому, секундный импульс с "часов" поступает на вход атмеги и участвует в работе программы. И что тогда мне думать? :) Задача любопытная, конечно, но если завтра за полдня не решу, то закину в шкаф, вернувшись к делам более важным:  у меня инфрадин, строившийся в муках  больше года, отказался работать. А там только один основной тракт около семисот компонентов содержит, и это без синтезатора, входных фильтров и схемы управления... И все это паялось вручную. В двух экземплярах. Вот там да, есть от чего загрустить.

Отредактировано Mantrid (2025-03-20 21:39:50)

0

25

Mantrid написал(а):

Вот, к слову: примененный датчик освещенности у меня в единственном экземпляре есть. А датчиков такого типа, но получше, зовущихся OPT3001, у меня целая лента, хоть и небольшая. Делают оба датчика одно и то же, интерфейс один и тот же, но я даже не знаю, представлен ли OPT3001  в драйверах... или библиотеках... в БАСКОМе.

Указанных в выделенном сведений вполне достаточно для работы с датчиком силами BASCOM ;)
Надо только даташит погрызть...

Mantrid написал(а):

В теории, можно было бы и разобраться, но ради одной конструкции, увы, не буду вникать. Просто не пригодится потом.

Как знать...
Я тоже был такого мнения про многие вещи когда-то... ;)
Оказалось, что энергетику по образованию придется и плитку класть и из пистолета стрелять...

0

26

Nord написал(а):

Оказалось, что энергетику по образованию придется и плитку класть и из пистолета стрелять...

Энергетик это кошерно, а что делать чистой воды гуманитарию, волею судьбы имеющему два технических образования? А Вы говорите - атмега. Дайте лучше мне мастерок и две обоймы :(

0

27

Mantrid написал(а):

Завтра сперва  сковырну китайские "максы", еще парочка непаянных где-то должна быть. Затем сдую "часы": BME280 через популярную китайскую развязку уровней на 2N7002 уже давно отключена. Кстати, знаете ли Вы, что если не подключать резисторы подтяжки на линии i2c-интерфейса, но вызвать библиотеку в коде и инициализировать ее, то цикл вообще не начинается?  Я вот тоже не знал, недавно выяснил, блин... Затем гляну, мигнет ли это дело  чем-нибудь. Хотя, если и мигнет, то чем? "Часы" отпаяны, данных с них нет; плюс к тому, секундный импульс с "часов" поступает на вход атмеги и участвует в работе программы. И что тогда мне думать?  Задача любопытная, конечно, но если завтра за полдня не решу, то закину в шкаф, вернувшись к делам более серьезным.

Сковырнув "максы" вы ничего не измените.
Они управляются только МК, а вот информацию дают датчики.

Микрухи можно бы и не снимать, достаточно "оборвать" дорожки.
Перемычку поставить потом недолго.

Про "подтяжки" и "перекрестах" на шине I2C на Форуме - уже "притча воязыцех"... ;)

Импульс от часов для испытаний можно имитировать кнопкой.
Точность на этом этапе совсем не важна.

0

28

Nord написал(а):

Сковырнув "максы" вы ничего не измените.

Это в плане замены на другие, для чистоты эксперимента.

Nord написал(а):

Микрухи можно бы и не снимать, достаточно "оборвать" дорожки.

Смысл их рвать, если они нигде не замкнуты? Подозрение только на дохлый "макс" осталось. Да и писал я, вроде, что активности на шинах нет вообще: даже SCK не дышит! И на SPI тишина, на всех трех линиях. Откуда и был сделан вывод о том, что программа не в цикле, что-то ей не дает закольцеваться.

Отредактировано Mantrid (2025-03-20 21:51:40)

0

29

Mantrid написал(а):

Да и писал я, вроде, что активности на шинах нет вообще: даже SCK не дышит! И на SPI тишина, на всех трех линиях. Откуда и был сделан вывод о том, что программа не в цикле, что-то ей не дает закольцеваться.

Собственно, "активности" на шинах быть и не должно.
Они "активны", когда МК начинает обрабатывать прерывание, вызванное секундным импульсом.
А так прога "крутится" в ожидании нажатия кнопок (цикл Do ... Loop)...

Главный цикл

'*********** Программа ****************************************************************

Enable Int0
Enable Interrupts

Gosub Power_up_bh1750                                       'Запускаем BH1750
'--------------- BME280 exist
Temp(1) = &HD0                                              'ID register address
I2creceive Slave , Temp(1) , 1 , 1
If Temp(1) = &H60 Then Gosub Bme280_init                    'Инициализация BME280
Wait 1
On_all_max7219                                              'Включение всех чипов MAX7219

Do
      If Key_choice = 0 Then                                'Кнопка "Выбор"
         Idle_time = 1
         Incr Correct
         If Correct > 6 Then Correct = 1
         Waitms 250
      End If

      If Key_up = 0 Or Key_down = 0 Then Key_change = 1     'Кнопки "+" или "-"

Loop
End

Так что на индикаторах хоть что-то но должно высвечиваться, пусть даже "0" повсюду...

0

30

Nord написал(а):

Собственно, "активности" на шинах быть и не должно.

Не, ну как это?  i2c-шина чисто аппаратная, там SCK все время быть должно. В свое время именно эта "аппаратность" и доставила немало проблем при решении одной узкоспецифической задачи: шину по факту никак нельзя программно отключить, только скинуть скорость до нестандартной, да и то не всегда удается. Аппартно ее рвать - еще хуже, некоторые устройства при восстановлении шины не переинициализируются. Это я к тому, что i2c живучая, как борщевик Сосновского, ее фиг убьешь. И уж если она не дышит, значит либо программист уровня "бог", либо что-то очень сильно не так. Категориями ардуины оперирую, разумеется. Если в БАСКОМЕ есть способ i2c программно "глушить" без всяких там условий, то "Париж стоит мессы!" (с), как говаривал один товарищ.

Nord написал(а):

Они "активны", когда МК начинает обрабатывать прерывание, вызванное секундным импульсом.

"Вон оно что, Михалыч!"  (с) Хех, это, стало быть, "часы" ежесекундно немаскируемое прерывание организуют? Хех, и правда! INT0, а я даже и не обратил внимания, думал, нафига секундный импульс на обычный порт подавать? А как инфа в "максах" сохраняется в промежутках, там разве есть статический буфер, "защелка"? Глубоко их не изучал, слишком "шумные" они для моих задач, не применяю давно. А когда применял, то не задумывался об этом.

Отредактировано Mantrid (2025-03-20 22:30:18)

0