Inhaltsverzeichnis:

Generic Switch Hijacker - Gunook
Generic Switch Hijacker - Gunook

Video: Generic Switch Hijacker - Gunook

Video: Generic Switch Hijacker - Gunook
Video: What To Do When Your Listed Gets Hijacked + Amazon FBA Q&A 2024, November
Anonim
Generischer Switch-Hijacker
Generischer Switch-Hijacker

In diesem Artikel wird beschrieben, wie Sie ein Solid-State-Mikrocontrollergerät erstellen, das physische Schalter steuert. Es ist sehr günstig zu machen (4 $ oder so), vorausgesetzt, Sie haben einen Mikrocontroller-Programmierer. Die Schaltung selbst ist von trivialer Komplexität.

Dieses Projekt ist sehr einfach und beinhaltet keine atemberaubenden neuen Techniken. Es wäre ein gutes erstes Mikrocontroller-Projekt. Der Assembly-Quellcode wird Ihnen in diesem Artikel zur Verfügung gestellt. Ich habe einen wirklich coolen Chef bei der Arbeit. Manchmal spielen wir uns gegenseitig gerne Streiche. Leider für ihn bin ich ein Wissenschaftler. Mein Ziel hier ist es, verschiedene Geräte am Arbeitsplatz für kurze Zeit auf mysteriöse Weise einschalten zu lassen. Radios, laute Drucker, sogar diese nervigen musikalischen Geburtstagskarten, die in einem gewöhnlichen Gegenstand versteckt sind. Darüber hinaus ist das Projekt ein Beispiel dafür, wie Sie mit einem AVR schwerere Lasten steuern, als die Ausgangspins selbst bewältigen können. Dies ist eine Vielzahl von Dingen, da die Ausgangspins nur eine kleine Spannung und einen sehr begrenzten Strom liefern. Diese Schaltung könnte mit einem Relais erweitert werden, um tatsächlich einige sehr schwere Lasten zu steuern.

Schritt 1: Design und Schaltung

Design und Schaltung
Design und Schaltung

Für dieses Projekt können Sie fast jeden Mikrocontroller, 5-V-Spannungsregler und NPN-Transistor verwenden. Ich benutzte:

1x ATtiny26L-8PU (~2$) 1x TL780 5V Spannungsregler (~0,7$) 1x N2222 Transistor (~0,07$) 1x 9V Batterie oder 12V Batterie der Fernbedienung um Platz zu sparen …und natürlich mein treuer STK500, jetzt mit ZIF Steckdosen hinzugefügt! Der Grundaufbau ist folgender: Der Mikrocontroller durchläuft zwei Zeitschleifen. Eine lange Schleife, um zu bestimmen, wann das Gerät eingeschaltet werden soll, und eine kurze Schleife, um zu bestimmen, wie lange das Gerät eingeschaltet bleiben soll. Wenn es Zeit ist, Probleme zu verursachen, sendet der Mikrocontroller einen logischen High-Ausgang an Pin 14 (Least Significant Bit of PORTA). Dadurch wird der Transistor gezündet. Wenn Sie die Klemmen an die Kabel eines Schalters angeschlossen haben, sinkt der Widerstand am Schalter plötzlich von sehr hoch auf weniger als 1 Ohm, was für die meisten Geräte ausreicht, um den Schalter als eingeschaltet zu betrachten. Denken Sie daran, dass Transistoren auch Dioden sind. Wenn es also nicht funktioniert … ist die Polarität der Klemmen wahrscheinlich falsch, schalten Sie sie um! Außerdem benötigt dieses Gerät eine anständige 9-V-Batterie, sagen wir mit über 8-V-Potential übrig … abgesehen davon, dass es nicht viel Strom verbraucht. Es gibt viele ungenutzte Pins, so dass man sie natürlich verwenden könnte, um mehr Schalter für mehr Chaos zu steuern, aber das war für meine Zwecke ausreichend. Der nächste Schritt ist der Quellcode, den ich geschrieben habe, um dieses Ding zum Laufen zu bringen. Die Standardlängen für die Zustände "Ein" und "Aus" betragen ca. 10 Sekunden bzw. 13 Minuten. Der Code enthält Kommentare zum Ändern dieser Werte. Entschuldigen Sie abschließend bitte die ausgiebige Verwendung der "nop"-Funktion (sie verbringt einen CPU-Zyklus damit, nichts zu tun), um die Timer zu optimieren. Es ist unelegant, da es die rjmp-Funktion zerstören kann, wenn Sie nicht aufpassen, wie viele Sie verwenden!

Schritt 2: Quellcode

ANFANG:

. INCLUDE "tn26def.inc"; Definitionsdatei. Google danach, wenn Sie eine Kopie benötigen. clr r30 clr r29 clr r28 clr r27 ldi r28, 0b00000000 ldi r27, 0b11111111 ldi r26, 0b00000000 clr r25 aus DDRA, r27 aus PORTA, r28 TIMER: inc r30 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 inc r29 TIMER3 q TIMEr 111, q TIMEr3 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; 0x00, BREQ FUNC2 Dezember r28 clr r30 clr r29 clr r25 aus PORTA, r28 rjmp TIMER FUNC2: nop nop inc r28 aus 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 nop nop nop cpi r30, 0b11111111 breq TIMER5 rjmp TIMER4 TIMER5: 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; Erhöhen Sie diese Zahl, um die "Ein"-Zeit zu erhöhen breq FUNC rjmp TIMER4

Schritt 3: Letzte Anmerkung

Viel Spaß, aber denken Sie daran, dass der Transistor Grenzen hat, wie viel Leistung Sie durch ihn pumpen können. Das bedeutet keine Netzspannung! Abgesehen von der Tatsache, dass es den Transistor sehr schnell überlasten würde, wird dieses Gerät Wechselsignale nicht gut steuern … es sei denn, Sie wenden die unten beschriebene Modifikation an * und* fügen ein Relais hinzu: Wenn Sie sich über die Polarität der Klemme Sorgen machen, schalten Sie einfach einen zweiten Transistor mit ein die Basisplatte ist mit derselben Source wie der erste Transistor verbunden, aber mit Kollektor und Emitter in der entgegengesetzten Konfiguration. Auf diese Weise wird, egal wie Sie die Klemmen anbringen, ein logisches High, das aus dem Mikrocontroller kommt, den Schalter immer "einschalten". Denken Sie daran, dass der Leckstrom in diesem System ausreichen kann, um einige empfindliche Schalter wie Tastaturmatrizen zu aktivieren. Möglicherweise müssen Sie für diese Anwendung einen Widerstand in Reihe schalten. Denken Sie daran, dass Sie das Zielgerät mit Strom versorgen können, anstatt eine Batterie zu verwenden. Schließlich … habe ich das Gerät in einem alten Buchhaltungsrechner installiert, der über Druckfunktionen verfügt. Ich habe die Tastaturmatrix mit einer Büroklammer nachgebaut, um zu bestimmen, welche IC-Pins beim Verbinden den Papiereinzug verursachen würden, und die richtigen Pins zusammen mit dem Gerät verbunden. Dann habe ich den Schalter deaktiviert, mit dem Sie die Druckfunktion ausschalten können. Ich halte die Maschine für richtig untergraben. Es schaltet den ziemlich lauten Papiereinzug alle 10 Minuten für 10 Sekunden ein, wenn das Gerät eingeschaltet ist. Es funktionierte auch gut mit der Schaltung von einer dieser hyper-abscheulichen musikalischen Geburtstagskarten. Mein Arbeitsplatz ist jetzt bizarrer!

Empfohlen: