Дисплеи, датчики и прочие функциональные узлы, управляемые МК.
Чт май 26, 2022 11:42:42
Привет котаны! Нужна консультация, т.к. в этом вопросе не особо знаний/пониманий. Нужно чтобы один мк принимал сигнал низкого уровня длительностью 1сек. от другого мк. Есть готовое устройство на Atmega8 на картинке обозначен МК2. Настройка его порта - вход с подтягивающим резистором, плюс указана обвязка вокруг порта на рисунке из резистора на VCC, диода и конденсатора. Хочу дополнить расширить МК2 приставкой на МК1 тоже с использование Atmega8, выход с подтяжкой к питанию VCC. Смысл по событию МК1 будет выдавать импульс низкого уровня длительностью 1сек. который и будет ловить МК2. Вопрос нужна ли еще какая либо доработка по обвязке вокруг порта МК1? ...но обвязку у МК2 не хотелось бы трогать!
- Вложения
-
- мк1 мк2.jpg
- (59.96 KiB) Скачиваний: 115
Последний раз редактировалось
neid Чт май 26, 2022 11:51:04, всего редактировалось 1 раз.
Чт май 26, 2022 11:50:51
если речь о передаче 1ных импулсоф не вижу причин неработы узла вот если нудна оганизовать обмен по обшей шине с реверсом то там боюсь все не так просто будет...и без чегото вроде мултимастер шины CAN не обойтись
Чт май 26, 2022 11:54:37
если речь о передаче 1ных импулсоф не вижу причин неработы узла
нет просто импульс, ну максимум может увеличу его длительность низкого уровня с 1сек. до 3-5 минут, и все. Тут задает уже готовое устройство на МК2, куда лезть не хотелось бы.
Чт май 26, 2022 12:06:51
ну так в чём трудность-то? всё, что от Вас требуется - это определиться с моментом наступления события, по какому из фронтов сигнала его регистрировать то есть, смотреть документацию на тему External Interrupt pin configured as “Interrupt on Rising Edge, Falling Edge, or Any Logic Change on Pin”
Если хочется очень надёжно - регистрируете оба фронта, то есть:
1. настраиваете порт на Interrupt on Falling Edge
2. как только это событие произошло запускаете таймер и перенастраиваете порт на Interrupt on Rising Edge.
3. как только пришло новое событие останавливаете таймер
4. смотрите, сколько насчитал таймер, если около 1 секунды - считаем сигнал нашим, предпринимаем действия и возвращаемся к пункту 1.
В случае очень большого расстояния озаботиться аппаратной реализацией связи, так как в зависимости от условий на этом проводке чёрти-что может оказаться
Чт май 26, 2022 12:18:11
ну так в чём трудность-то? всё, что от Вас требуется - это определиться с моментом наступления события, по какому из фронтов сигнала его регистрировать то есть, смотреть документацию на тему External Interrupt pin configured as “Interrupt on Rising Edge, Falling Edge, or Any Logic Change on Pin”
Если хочется очень надёжно - регистрируете оба фронта, то есть:
Меня обвязка вокруг порта МК1 интересует и все! МК2 на ATmega8, устройство уже созданное и очень гибкое по настройке и обработке сигнала, его не нужно перенастраивать или дописывать код. Так уж расписал более подробно.
Чт май 26, 2022 12:44:21
ну тогда воткните супрессор хотя бы, если предполагается на линии возможность бяки. Вы ж не написали среду обитания, может это всё в пределах спичечного коробка, тогда и Ваши детальки не нужны, а может линия с километр длиной да ещё в грозовом районе, тогда вообще иной подход желателен.
Чт май 26, 2022 14:30:26
Вопрос нужна ли еще какая либо доработка по обвязке вокруг порта МК1? ...но обвязку у МК2 не хотелось бы трогать!
Да нужна… нужно в линию (под вопросом) поставить резистор 130 Ом… то есть, между конденсатором МК2 и выводом МК1. Если убрать конденсатор, то резистор не нужен.
Чт май 26, 2022 14:38:08
нужна ли еще какая либо доработка по обвязке вокруг порта МК1?
В общем случае -
не нужна. А конденсатор вообще убрать.
Чт май 26, 2022 16:11:04
Если по минимуму, то внешние элементы не нужны вообще. Если питание МК1 и МК2 раздельное, то нужно программно организовать открытый коллектор на МК1. Понимаете?
Чт май 26, 2022 16:33:45
Если по минимуму, то внешние элементы не нужны вообще. Если питание МК1 и МК2 раздельное, то нужно программно организовать открытый коллектор на МК1. Понимаете?
Питание от одного источника 12в, далее у каждого своя КРЕНка на 5в. Длинна этой линии 10см максимум! Не совсем пока, почитаю))
Чт май 26, 2022 16:35:13
Простенького 4N35 (оптрона) или какого другого вполне достаточно для любого варианта питания...
Чт май 26, 2022 16:37:09
ну тогда воткните супрессор хотя бы, если предполагается на линии возможность бяки. Вы ж не написали среду обитания, может это всё в пределах спичечного коробка, тогда и Ваши детальки не нужны, а может линия с километр длиной да ещё в грозовом районе, тогда вообще иной подход желателен.
Ну возможно я тут и упустил что то, вообще длинна от платы до платы от 5см до 10см, все... До ближайшей проводки 220в более 1м.
Чт май 26, 2022 16:39:30
neid,
У вас там нормальная рабочая схема. Просто конденсатор уберите и всё.
Чт май 26, 2022 16:39:57
Питание от одного источника 12в, далее у каждого своя КРЕНка на 5в. Длинна этой линии 10см максимум! Не совсем пока, почитаю))
Если один БП, то не нужно никаких изгалений. И никаких доп. элементов.
Чт май 26, 2022 23:31:32
Питание от одного источника 12в, далее у каждого своя КРЕНка на 5в. Длинна этой линии 10см максимум! Не совсем пока, почитаю))
Если обвязка МК2 сделана только для подключения МК1 (без дополнительной периферии), то по сути она лишняя. Если настроить вывод МК2 на вход с подтяжкой внутреннего резистора, то этого будет достаточно. Настройка вывода МК1 останется по умолчанию (настроен на вход без подтяжки внутреннего резистора). Для управления данной линией (прижатие её к общей шине) по какому-то событию, у МК1 потребуется всего лишь перевести данный вывод из режима входа в режим выхода и вывод МК2 будет прижат к общей шине. Затем переводите вывод МК1 вновь на вход и линия (вывод МК2) отпускается. При такой конфигурации выводов дополнительной обвязки не требуется, даже в том случае если бы у Вас один МК питался бы от 3,3 В, а другой от 5 В.
Единственное условие – общая шина у обоих МК должна быть соединена. А так как питание у Вас осуществляется от одного общего БП, то условие с соединением общих шин обоих МК выполнено.
Пт май 27, 2022 10:18:07
Если обвязка МК2 сделана только для подключения МК1 (без дополнительной периферии), то по сути она лишняя.
МК2 - делалось универсальным устройством, и входы у МК2 можно настроить на сколько это позволяет даташит Atmega8, но плата когда то уже была разведена именно под такую обвязку и стоить давно в корпусе, лазить сейчас туда и кроить что то там не особо хотелось. Я повторял это устройство по стопам автора лет пять назад.
Настройка вывода МК1 останется по умолчанию (настроен на вход без подтяжки внутреннего резистора). Для управления данной линией (прижатие её к общей шине) по какому-то событию, у МК1 потребуется всего лишь перевести данный вывод из режима входа в режим выхода и вывод МК2 будет прижат к общей шине. Затем переводите вывод МК1 вновь на вход и линия (вывод МК2) отпускается. При такой конфигурации выводов дополнительной обвязки не требуется, даже в том случае если бы у Вас один МК питался бы от 3,3 В, а другой от 5 В.
Единственное условие – общая шина у обоих МК должна быть соединена. А так как питание у Вас осуществляется от одного общего БП, то условие с соединением общих шин обоих МК выполнено.
Действительно простое решение
Спасибо!
Котаны
спасибо ВСЕМ не равнодушным и откликнувшимся!
Пт май 27, 2022 12:29:31
стоит давно в корпусе, лазить сейчас туда и кроить что то там не особо хотелось.
Если обвязку МК2 не трогать, то поставь резистор 130 Ом и всё. Резистор нужен для ограничения тока при разряде конденсатора через порт МК1. Чтобы хоть и кратковременно но всё же не перегружать вывод МК1.
Пн сен 18, 2023 14:07:29
Всем привет, еще раз подниму данную тему! По вашим советам собрал, добавил резистор в 130ом и все это у меня прекрасно работает уже второй сезон. Но понадобилось поставить на место МК1 не атмегу8, а ESp8266, питание конечно же у ней 3.3V, вопрос что лучше сделать снизить питание MK2 atmga8 не могу, там питать только 5В. Преобразователь уровней с алишки поставить на полевых транзисторах, хотя эта схема является односторонней и работает 5в выход - 3.3в вход((( просто увеличить резистор вместо 130Ом поставить 10кОм или оптрон наверное лучше.
Пн сен 18, 2023 16:26:42
neid писал(а):Преобразователь уровней с алишки поставить на полевых транзисторах, хотя эта схема является односторонней и работает 5в выход - 3.3в вход
Они вообще то двунаправленные. Еще лет 20 назад ей уже согласовывали уровни 3,3 контроллеров и 5В например памяти 24C или тюнеров, аудиопроцессоров в теликах.
Пн сен 18, 2023 21:15:42
Они вообще то двунаправленные.
Да, извиняюсь, пересмотрел схему, статейку прочитал на
easyelectronics. Вопрос остался еще, по поводу если просто поставить резистор 10кОм?
Powered by phpBB © phpBB Group.
phpBB Mobile / SEO by Artodia.