Оглавление:

Универсальный угонщик коммутатора: 3 шага
Универсальный угонщик коммутатора: 3 шага

Видео: Универсальный угонщик коммутатора: 3 шага

Видео: Универсальный угонщик коммутатора: 3 шага
Видео: Обзор трех бюджетных PoE коммутаторов: YOSO SF0820FB4L, HRUI HR901-AF-82GN и китайский нонейм 2024, Июль
Anonim
Универсальный угонщик коммутатора
Универсальный угонщик коммутатора

В этой статье описывается, как создать твердотельный микроконтроллер, который управляет физическими переключателями. Его изготовление очень недорого (около 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 секунд, когда устройство включено. Также он хорошо работал со схемой одной из этих отвратительных музыкальных поздравительных открыток. Мое рабочее место теперь еще более странное!

Рекомендуемые: