Все прочитали, вроде даже поняли, взяли паяльник - а нифига не получается? Скорее сюда! Поможем. Чем можем...
Ответить

ДУ для Электроники 004

Вс авг 07, 2022 19:19:00

Может кто помочь с конфигурацией портов ATMega32A?
Как настроить и управлять пинами микроконтроллера, чтобы они были как "открытый коллектор" и садили пин на массу? Как должен быть выставлен PORTx и DDRx? Не смог точно разобраться в даташите. :(
Есть плата управления на логике с 8 кнопками, притянутыми к питанию 5кОм резисторами. Параллельно кнопкам будут подключены пины микроконтроллера. Он должен эмулировать нажатие кнопок, т.е. садить вывод логической микросхемы на массу. Питание МК и платы логики +5В, но оно раздельное и у каждого своё. Поэтому может быть разбежка в 0,2-0,3В в любую сторону.

Re: Мелкие практические вопросы

Пн авг 08, 2022 09:18:27

Насколько я ничего не помню, там нет режима выходов "открытый сток". Но его можно эмулировать, выдавая ноль, когда должен быть выдан ноль, и в прыжке переобуться... переконфигурировать лапу на ввод, можно со внутренней подтяжкой, а можно и без неё, когда требуется выдать единицу.
Остальное просто. Если не трогать бит PUD в регистре SFIOR, то:
DDRx.y = 0 - ввод,
DDRx.y = 1 - вывод,
PORTx.y = 0: при выводе - вывод нуля, при вводе - подтяжка отключена,
PORTx.y = 1: при выводе - вывод единицы, при вводе - подтяжка включена.
Последний раз редактировалось mickbell Пн авг 08, 2022 22:33:16, всего редактировалось 1 раз.

Re: Мелкие практические вопросы

Пн авг 08, 2022 09:47:47

mickbell, да, чистого открытого стока там нет. Только эмуляция. PUD тоже лучше не трогать, т.к. он отключит подтяжки по всем портам.
Получается надо в DDR выставить на выход и в PORT поставить на 0, а для закрытия надо выставить на ввод и включить подтяжки?
Мне главное, чтобы можно было на пины подавать напряжение большее, чем питание МК.

Re: Мелкие практические вопросы

Пн авг 08, 2022 11:47:43

Мне главное, чтобы можно было на пины подавать напряжение большее, чем питание МК.
Не-не-не, так нельзя. Только внешний ключ. Внутри есть защитные диоды, которые откроются и - ага, пойдёт по жилам меги ваше повышенное напряжение. Всем хана, занавес.

Re: Мелкие практические вопросы

Пн авг 08, 2022 13:36:53

mickbell, да, чистого открытого стока там нет. Только эмуляция. PUD тоже лучше не трогать, т.к. он отключит подтяжки по всем портам.
Получается надо в DDR выставить на выход и в PORT поставить на 0, а для закрытия надо выставить на ввод и включить подтяжки?
Мне главное, чтобы можно было на пины подавать напряжение большее, чем питание МК.

да, выключаемый(запираемый) fet верхнего плеча никуда не исчезает даже при принудительном запирании :)) и в схеме остается его канальный переход (ака защитный диод )) который и откроется при Vgpio>~0.6+Vcc. и вниз тожесамое. короче только делителями сжимать интересующий входной динамический диапазон в ~ 0..Vcc. или просто ограничивать ток через эти переходы резистором до гдето 10..15mA max.

Re: Мелкие практические вопросы

Пн авг 08, 2022 13:59:37

mickbell, AlexS4,
понятно, раскрою сразу тему. я делаю дистанционное управление для Электроники 004 на ATMega32a. штатное гнездо для ДУ заменю на 12 пиновое. У меня нет разъёма под стандартное и заодно выведу кнопку "<->" и ещё какой-нибудь сигнал. к примеру +5В магнитофона, чтобы определять включён он или нет, либо импульсы для счётчика.
данный вопрос возник из-за того, что питание +5В у МК и магнитофона раздельное и может не совпадать, но не думаю, что разница будет больше 500мВ.
раздельное питание будет из-за того, что я планирую использовать ВЛИ. он из какого-то старого видеомагнитофона и отлично подойдёт для индикатора ДУ.
да, как вариант поставить 8 резисторов на 33ом.
Вложения
indicator.jpg
(48.33 KiB) Скачиваний: 35
2.jpg
(199.06 KiB) Скачиваний: 37

Re: Мелкие практические вопросы

Пн авг 08, 2022 14:07:12

данный вопрос возник из-за того, что питание +5В у МК и магнитофона раздельное и может не совпадать, но не думаю, что разница будет больше 500мВ.
раздельное питание будет из-за того, что я планирую использовать ВЛИ.
И никак не получится взять те самые 5 В? Или они по параметрам не устраивают (пульсации там, нестабильность...)? Или оно бывает не всегда? Ну тогда можно запитать вашу мегу с двух сторон через две шоттки: или своим питанием, или тем, снаружи, тогда превышения не будет (падением на шоттке пренебрежём ввиду малости).

Re: Мелкие практические вопросы

Пн авг 08, 2022 14:30:11

mickbell, оно не всегда бывает. у ДУ будет дежурный режим и сделаю включение магнитофона через реле в нём. только пока не уверен, хватит ли у меня пинов меги для всего этого. пока есть PA7 и PC3, но с магнитофона также идёт аудио сигнал для наушников. может получится ещё впихнуть Bluetooth передатчик для беспроводных наушников с цифровым управлением громкостью :roll: ...
тем более, что там для кнопок приходит не чистые 5В, а через те же подтягивающие резисторы в 5кОм.
проверку "включённости" аппарата можно проверять наличием напряжения +5В на всех выводах, подключённых к кнопкам.
но думаю резисторы на 33ома между пином МК и выводом в разъём на кнопку не будут лишними...
Вложения
38 39 Блок управления — копия.jpg
(252.79 KiB) Скачиваний: 31

Re: Мелкие практические вопросы

Пн авг 08, 2022 16:43:49

Xatrix, а зачем кнопки зачитывать в adc?? не проще 8 диодов с порта на котором разряды перебираются и тот же вход но цифровой (если все кнопки обьединены общим проводом)
или матрица 3x3 тоесть 3 диода и 3 входа.

а gpio ноги легко освободить применив двоичный демультиплексор для разрдов. до ~18V есть такие в серии 40xx (561/564/...) (2 корпуса по 8x2 выходов, управляемые 4 gpio)

насчет питания через шоттки - безразницы ж всегда ли есть питание на обоих источниках или нет, если нет питания с магнитофона то и уровни в интерфейсе с ним безразличны.
и не зная как устроены интерфейсы на другой стороне - порекомендовал бы 100..510ohm на каждый провод между mcu и разьемом, это скорее всего здорово повысит живучесть схемы да и помехоустойчивость тоже вероятно.

Re: ДУ для Электроники 004

Пн авг 08, 2022 21:35:42

AlexS4, сделал по другому. один фиг обратной связи нет. Мне всё равно пришлось бы опрашивать порт, чтобы следить не нажал ли пользователь кнопку на самом магнитофоне вместо кнопки на пульте. А так освободился ещё один пин.
Вложения
2.jpg
(204.39 KiB) Скачиваний: 37

Re: ДУ для Электроники 004

Вт авг 09, 2022 12:00:58

может кто-нибудь посоветовать платку Bluetooth аудио передатчика с цифровым управлением через I2C или на крайняк UART на Али? чтобы можно было микроконтроллером управлять громкостью и подключением к девайсам.
есть передатчики, где регулировка громкости и подключение выведены на отдельные 3 вывода платки, но дёргать вслепую пинами контроллера, как для магнитофона, не очень хочется...
Ответить