Оглавление:
Видео: Универсальный угонщик коммутатора: 3 шага
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:54
В этой статье описывается, как создать твердотельный микроконтроллер, который управляет физическими переключателями. Его изготовление очень недорого (около 4 долларов), если у вас есть программатор микроконтроллера. Сама схема тривиальной сложности.
Этот проект очень прост и не требует новых потрясающих техник. Это послужило бы хорошим первым проектом микроконтроллера. Исходный код сборки будет предоставлен вам в этой статье. У меня на работе действительно крутой начальник. Иногда нам нравится подшучивать друг над другом. К несчастью для него, я ученый. Моя цель здесь - заставить различные устройства на рабочем месте загадочным образом включаться на короткое время. Радиоприемники, шумные принтеры, даже эти надоедливые музыкальные поздравительные открытки, спрятанные в каком-то обычном предмете. Кроме того, этот проект является примером того, как вы управляете более тяжелыми нагрузками с помощью AVR, чем выходные контакты могут справиться сами с собой. Это широкий спектр вещей, поскольку выходные контакты дают вам только небольшое напряжение и очень ограниченный ток. Эта схема может быть расширена с помощью реле для управления очень большими нагрузками.
Шаг 1: Дизайн и схема
Для этого проекта вы можете использовать практически любой микроконтроллер, стабилизатор напряжения 5 В и транзистор NPN. Я использовал:
1x ATtiny26L-8PU (~ 2 $) 1x регулятор напряжения TL780 5v (~ 0,7 $) 1x транзистор N2222 (~ 0,07 $) 1x батарея 9v или батарея дистанционного управления 12v для экономии места … и, конечно же, мой верный STK500, теперь с ZIF сокеты добавлены! Базовая конструкция такова: микроконтроллер проходит через два цикла синхронизации. Длинный цикл для определения того, когда включать устройство, и короткий цикл, чтобы определить, как долго устройство должно оставаться включенным. Когда пришло время вызвать проблемы, микроконтроллер отправляет высокий логический вывод 14 (наименьший значащий бит PORTA). Это запускает транзистор. Если вы подключили зажимы к выводам переключателя, сопротивление на переключателе внезапно упадет с очень высокого до менее 1 Ом, чего достаточно для большинства устройств, чтобы считать переключатель включенным. Имейте в виду, что транзисторы также являются диодами, поэтому, если это не работает … полярность зажимов, вероятно, неправильная, переключите их! Кроме того, для этого устройства требуется приличная батарея на 9 В, скажем, с оставшимся потенциалом более 8 В … кроме этого, оно не потребляет много энергии. Есть много неиспользуемых контактов, поэтому, конечно, вы можете использовать их для управления большим количеством переключателей, чтобы создать еще больший хаос, но этого было достаточно для моих целей. Следующий шаг - это исходный код, который я написал, чтобы все заработало. По умолчанию продолжительность состояний «включено» и «выключено» составляет приблизительно 10 секунд и 13 минут соответственно. В коде есть комментарии о том, как изменить эти значения. Наконец, прошу прощения за широкое использование функции "nop" (она тратит цикл процессора на бездействие) для настройки таймеров. Это неэлегантно, поскольку может сломать функцию rjmp, если вы не будете осторожны с тем, сколько вы используете!
Шаг 2: Исходный код
НАЧНИТЕ:
. ВКЛЮЧАЙТЕ "tn26def.inc"; Файл определения. Google для этого, если вам нужна копия. clr r30 clr r29 clr r28 clr r27 ldi r28, 0b00000000 ldi r27, 0b11111111 ldi r26, 0b00000000 clr r25 out DDRA, r27 out PORTA, r28 ТАЙМЕР: inc r30 nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop cpi r30, 0b11111111 breq TIMER2 rjmp TIMER TIMER2: nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop inc r29 cpi r29, BREJB1111: nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop inc r25 cpi r25, 0b11111111; Уменьшите это число, чтобы уменьшить время выключения breq FUNC rjmp TIMER FUNC: nop nop cpi r28, 0x00 breq FUNC2 dec r28 clr r30 clr r29 clr r25 out PORTA, r28 rjmp TIMER FUNC2: nop nop inc r28 out PORTA, r28 clr r25 clr r30 clr r29 rjmp TIMER4 TIMER4: inc r30 nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop cpi r30, 0b11111111 breq TIMER5 rjmp TIMER4 TIMER5: nop nop nop nop nop nop nop nop nop nop nop nop inc r29 cpi r29, 0b11111 111 breq TIMER6 rjmp TIMER4 TIMER6: inc r25 cpi r25, 0b00000011; Увеличьте это число, чтобы увеличить время включения breq FUNC rjmp TIMER4
Шаг 3: Заключительное примечание
Получайте удовольствие, но помните, что у транзистора есть ограничения на то, сколько мощности вы можете через него прокачать. Это означает отсутствие сетевого напряжения! Помимо того факта, что оно очень быстро перегружает транзистор, это устройство не будет хорошо управлять переменными сигналами … если вы не примените модификацию, описанную ниже * и * не добавите реле: если вас беспокоит полярность зажима, просто подключите второй транзистор с базовая пластина подключена к тому же источнику, что и первый транзистор, но с коллектором и эмиттером в противоположной конфигурации. Таким образом, независимо от того, как вы прикрепляете зажимы, высокий логический уровень, исходящий из микроконтроллера, всегда будет «включать» переключатель. Имейте в виду, что тока утечки в этой системе может быть достаточно для активации некоторых чувствительных переключателей, таких как матрицы клавиатуры, вам может потребоваться добавить резистор последовательно для этого приложения. Помните, что вы можете черпать энергию из целевого устройства вместо использования батареи. Наконец … Я установил устройство внутри древнего калькулятора бухгалтерского учета, типа, который имеет функции печати. Я перепроектировал матрицу клавиатуры с помощью скрепки, чтобы определить, какие контакты IC при подключении вызовут подачу бумаги, и подключил правильные контакты вместе с устройством. Затем я отключил переключатель, который позволяет вам выключить функцию печати. Я считаю, что аппарат правильно испорчен. Он включает довольно шумную подачу бумаги каждые 10 минут, на 10 секунд, когда устройство включено. Также он хорошо работал со схемой одной из этих отвратительных музыкальных поздравительных открыток. Мое рабочее место теперь еще более странное!
Рекомендуемые:
Универсальный клиент / подчиненное устройство Arduino 1-wire (датчик): 4 шага
Общий клиент / подчиненное устройство Arduino 1-wire (датчик): прочтите Введение и шаг 2 моих инструкций о том, как построить 1-проводный дисплей Arduino (144 символа), чтобы получить дополнительную информацию о ситуации и доступных библиотеках. Как объяснялось там, мы будем использовать библиотеку OneWire-Hub
Использование модуля TTP223 в качестве коммутатора: 5 шагов
Использование модуля TTP223 в качестве коммутатора: это руководство посвящено емкостному сенсорному модулю TTP223. Все, что вам нужно, это базовые знания в области электроники и программирования Arduino. Если у вас есть какие-либо вопросы или проблемы, вы можете связаться со мной по электронной почте: [email protected] . Вот ссылка на видео м
Универсальный портативный универсальный аккумулятор: 11 шагов (с изображениями)
Универсальный портативный универсальный блок питания: отключение нагрузки или постоянное отключение электроэнергии - очень частое явление в развивающихся странах, таких как Индия, Южная Африка, Бангладеш и т. Д. Сезон отключения нагрузки не является любимым временем для кого-либо. Это сильно влияет на нашу повседневную деятельность и, в основном, на наше мычание
Универсальный пульт дистанционного управления: 3 шага
Универсальный пульт дистанционного управления: универсальный инфракрасный (ИК) пульт дистанционного управления может управлять любым устройством, которое использует ИК-связь для удаленного управления. Этот пульт дистанционного управления использует gen4-uLCD-35DCT в качестве основного интерфейса для отправки ИК-команд. Этот проект очень настраиваемый
Карманная заявка на участие в конкурсе на скорость: универсальный футляр для переноски! Хватит забывать: 3 шага
Карманная заявка на участие в конкурсе на скорость: универсальный футляр для переноски! Хватит забывать: это «универсальный чехол для переноски» для sd, mmc, флешек, xd, CF, memory stik / pro … отлично подходит для всех ваших потребностей в памяти! И ОНА УСТАНАВЛИВАЕТСЯ В ВАШЕМ КАРМАНЕ !!! Это запись на "Карманный конкурс скорости" (конкурс закрывается в мой День Рождения, поэтому, пожалуйста, v