Indholdsfortegnelse:

Generisk Switch Hijacker: 3 trin
Generisk Switch Hijacker: 3 trin

Video: Generisk Switch Hijacker: 3 trin

Video: Generisk Switch Hijacker: 3 trin
Video: The Bus Hijack - Part 1 | C.I.D | सीआईडी | Real Heroes 2024, November
Anonim
Generisk Switch Hijacker
Generisk Switch Hijacker

Denne artikel beskriver, hvordan du opbygger en solid state -mikrokontroller -enhed, der styrer fysiske switches. Det er meget billigt at lave (4 $ eller deromkring), forudsat at du har en mikrokontroller programmerer. Selve kredsløbet er af triviel kompleksitet.

Dette projekt er meget enkelt og involverer ingen fantastiske nye teknikker. Det ville tjene som et godt første mikrokontrollerprojekt. Monteringskildekoden får du i denne artikel. Jeg har en virkelig sej chef på arbejdet. Nogle gange kan vi lide at spille praktiske vittigheder om hinanden. Desværre for ham er jeg en videnskabsmand. Mit formål her er at få forskellige enheder på arbejdspladsen til at tænde mystisk i korte perioder. Radioer, støjende printere, selv de irriterende musikalske fødselsdagskort gemt i et almindeligt objekt. Udover det er projektet et eksempel på, hvordan du styrer tungere belastninger med en AVR, end outputstifterne kan klare sig selv. Dette er en lang række ting, da udgangsstifterne kun giver dig en lille spænding og meget begrænset strøm. Dette kredsløb kan udvides med et relæ til faktisk at styre nogle meget tunge belastninger.

Trin 1: Design og kredsløb

Design og kredsløb
Design og kredsløb

Til dette projekt kan du bruge næsten enhver mikrokontroller, 5v spændingsregulator og NPN -transistor. Jeg brugte:

1x ATtiny26L-8PU (~ 2 $) 1x TL780 5v spændingsregulator (~ 0.7 $) 1x N2222 transistor (~ 0.07 $) 1x 9v batteri eller 12v fjernbetjeningsbatteri for at spare plads … og selvfølgelig min troværdige STK500, nu med ZIF stikkontakter tilføjet! Det grundlæggende design er dette: Mikrocontrolleren går gennem to timing -sløjfer. En lang sløjfe til bestemmelse af, hvornår enheden skal tændes, og en kort sløjfe til at bestemme, hvor længe enheden skal holdes tændt. Når det er tid til at forårsage problemer, sender mikrokontrolleren en logik high out pin 14 (mindst signifikant bit PORTA). Dette affyrer transistoren. Hvis du har tilsluttet klemmerne til ledningerne på en switch, får det modstanden på tværs af kontakten til pludselig at falde fra meget høj til mindre end 1 ohm, hvilket er nok til at de fleste enheder overvejer at tænde for kontakten. Husk, at transistorer også er dioder, så hvis det ikke virker … er polariteten af klemmerne sandsynligvis forkert, skift dem! Denne enhed kræver også et anstændigt 9v batteri, siger med over 8v potentiale tilbage … bortset fra at det ikke bruger meget strøm. Der er mange ubrugte stifter, så selvfølgelig kunne du bruge dem til at styre flere kontakter for mere kaos, men dette var tilstrækkeligt til mine formål. Det næste trin er kildekoden, jeg skrev for at få denne ting i gang. Standardlængderne for tilstandene "tændt" og "slukket" er henholdsvis cirka 10 sekunder og 13 minutter. Der er kommentarer i koden om, hvordan man ændrer disse værdier. Endelig, undskyld venligst den omfattende brug af "nop" -funktionen (den bruger en CPU -cyklus til ikke at gøre noget) for at justere timerne. Det er uelegant, da det kan bryde rjmp -funktionen, hvis du ikke er forsigtig med, hvor mange du bruger!

Trin 2: Kildekode

START:

. INCLUDE "tn26def.inc"; Definitionsfil. Google til det, hvis du har brug for en kopi. clr r30 clr r29 clr r28 clr r27 ldi r28, 0b00000000 ldi r27, 0b11111111 ldi r26, 0b00000000 clr r25 ud DDRA, r27 ud PORTA, r28 TIMER: inc r30 nop nop nop 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 inc r29 cpi r29, 0b111131 brp TIM nej nej nej nej nøj nej nøj nej nøj nøj nikke nikke nikke nikke nikke nikke nikke nikke nikke nikke nikke nøgle nøgle ringe 25 ppi r25, 0b11111111; Sænk dette tal for at reducere "off" time 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 nej nej nej nej nej nej nøj nej cpi r30, 0b11111111 breq TIMER5 rjmp TIMER4 TIMER5: nej nej nej nej nej nej nej nøj nej nop nop inc r29 cpi r29, 0b11111 111 breq TIMER6 rjmp TIMER4 TIMER6: inkl r25 cpi r25, 0b00000011; Forøg dette tal for at øge "on" time breq FUNC rjmp TIMER4

Trin 3: Endelig note

God fornøjelse, men husk, at transistoren har grænser for, hvor meget strøm du kan pumpe igennem den. Det betyder ingen netspænding! Udover det faktum, at det ville overbelaste transistoren meget hurtigt, vil denne enhed ikke styre vekslende signaler godt … medmindre du anvender modifikationen beskrevet nedenfor * og * tilføjer et relæ: Hvis du bekymrer dig om klemmepolaritet, generer du bare en anden transistor med bundpladen er forbundet til den samme kilde som den første transistor, men med kollektoren og emitteren i den modsatte konfiguration. På den måde, uanset hvordan du fastgør klemmerne, vil en logisk høj, der kommer ud af mikrokontrolleren, altid "tænde" kontakten. Husk på, at lækstrømmen i dette system kan være nok til at aktivere nogle følsomme kontakter som tastaturmatricer, du skal muligvis tilføje en modstand i serie til denne applikation. Husk, at du kan tømme strøm fra målenheden i stedet for at bruge et batteri. Endelig … Jeg installerede enheden inde i en gammel regnskabsberegner, typen der har udskrivningsfunktioner. Jeg reverse-manipulerede tastaturmatrixen ved hjælp af et papirclips for at bestemme, hvilke IC-ben, når de var tilsluttet, der ville forårsage papirindføring, og tilsluttede de korrekte ben sammen med enheden. Derefter deaktiverede jeg kontakten, der giver dig mulighed for at deaktivere udskrivningsfunktionen. Jeg anser maskinen korrekt undergravet. Det tænder for den ret støjende papirindføring hvert 10. minut i 10 sekunder, når enheden er tændt. Det fungerede også godt med kredsløbet fra et af de hyper-modbydelige musikalske fødselsdagskort. Min arbejdsplads er nu mere bizar!

Anbefalede: