Innholdsfortegnelse:

HackerBox 0047: Old School: 12 trinn
HackerBox 0047: Old School: 12 trinn

Video: HackerBox 0047: Old School: 12 trinn

Video: HackerBox 0047: Old School: 12 trinn
Video: #83 HackerBox 0047 Old School 2024, Juli
Anonim
HackerBox 0047: Old School
HackerBox 0047: Old School

Hilsen HackerBox Hackere rundt om i verden! Med HackerBox 0047 eksperimenterer vi med tastaturgrensesnitt for mikrokontrollere, generering av VGA -videosignal, old school BASIC ROM -datamaskiner, microSD -lagringsenheter, låsesportverktøy og oppstartbare Ubuntu Linux USB -pinner.

Denne instruksen inneholder informasjon om hvordan du kommer i gang med HackerBox 0047, som kan kjøpes her så lenge lageret rekker. Hvis du ønsker å motta en HackerBox som denne rett i postkassen din hver måned, kan du abonnere på HackerBoxes.com og bli med i revolusjonen!

HackerBoxes er den månedlige abonnementstjenesten for entusiaster innen elektronikk og datateknologi - Hardware Hackers - The Dreamers of Dreams.

Trinn 1: Innholdsliste for HackerBox 0047

  • Eksklusivt Old School VGA PC -sett
  • To Arduino Nano -moduler 5V 16MHz
  • 200 -delers LED -sett i plastboks
  • Aluminium USB Flash -stasjon 8 GB
  • 6-i-1 Pocket Locksport-verktøy
  • Precision Wire Cutters
  • MicroSD Breakout -modul
  • MicroSD USB -leser
  • To 40 -pins mannlige Breakaway -overskrifter
  • Kvinne-hunn 10 cm DuPont-gensere
  • Ubuntu Linux -dekal

Noen andre ting som vil være nyttige:

  • Loddejern, lodde og grunnleggende loddeverktøy
  • Datamaskin for kjøring av programvareverktøy
  • Berget VGA -skjerm (prøv en bruktbutikk eller gammel bod på jobben)
  • PS/2 -tastatur (prøv en bruktbutikk eller et gammelt bod på jobben)

Viktigst av alt, trenger du en følelse av eventyr, hackerånd, tålmodighet og nysgjerrighet. Å bygge og eksperimentere med elektronikk, selv om det er veldig givende, kan være vanskelig, utfordrende og til og med frustrerende til tider. Målet er fremgang, ikke perfeksjon. Når du fortsetter og liker eventyret, kan du få mye tilfredshet fra denne hobbyen. Ta hvert trinn sakte, vær oppmerksom på detaljene, og ikke vær redd for å be om hjelp.

Det er et vell av informasjon for nåværende og potensielle medlemmer i HackerBoxes FAQ. Nesten alle de ikke-tekniske support-e-postene vi mottar, er allerede besvart der, så vi setter stor pris på at du tar deg noen minutter til å lese vanlige spørsmål.

Trinn 2: Låsesport

Locksport
Locksport

Locksport er sporten eller rekreasjonen til å beseire låser. Entusiaster lærer en rekke ferdigheter, inkludert låseplukking, låsestøt og andre teknikker som tradisjonelt brukes av låsesmeder og andre sikkerhetsfagfolk. Låssportentusiaster liker utfordringen og spenningen ved å lære å beseire alle former for låser, og samles ofte i idrettsgrupper for å dele kunnskap, utveksle ideer og delta i en rekke fritidsaktiviteter og konkurranser.

For en hyggelig introduksjon, sjekk MIT Guide to Lock Picking.

Se også denne videoen og sjekk ut de fantastiske koblingene i beskrivelsen av videoen.

TOOOL (The Open Organization Of Lockpickers) er en organisasjon av enkeltpersoner som engasjerer seg i Locksports hobby, i tillegg til å utdanne sine medlemmer og publikum om sikkerheten (eller mangelen på det) gitt av vanlige låser. "Målet med TOOOL er å fremme allmenn kunnskap om låser og låsing. Ved å undersøke låser, safe og annen slik maskinvare og ved å diskutere våre funn offentlig håper vi å fjerne mysteriet som så mange av disse produktene er gjennomsyret av."

ETISKE VURDERINGER:

Gjennomgå, og ta seriøs inspirasjon fra, TOOOLs strenge etiske kodeks som er oppsummert i følgende tre regler:

  1. Aldri velg eller manipuler med det formål å åpne en lås som ikke tilhører deg, med mindre du har fått eksplisitt tillatelse fra låsens rettmessige eier.
  2. Spred aldri kunnskap eller verktøy for låseplukking til personer du kjenner eller som har grunn til å mistenke ville søke å bruke slike ferdigheter eller utstyr på en kriminell måte.
  3. Vær oppmerksom på de relevante lovene angående låseplukker og relatert utstyr i alle land, delstater eller kommuner der du ønsker å drive med låsing og hobbylåsing.

Trinn 3: Trim alle elektroder

Trim alle leder
Trim alle leder

Ved lodding er det alltid ledninger til å være trimmer. For ikke å snakke om å kutte den grønne ledningen mens du deaktiverer farlige filmrekvisitter.

Bruk dette verktøyet med god helse. Vær oppmerksom på advarslene som vises her fra produsenten om alltid å bruke øyevern. De vil ikke at du skal stikke ut noen av øynene dine. Heller ikke vi.

Trinn 4: Arduino Nano mikrokontrollerplattform

Arduino Nano mikrokontroller plattform
Arduino Nano mikrokontroller plattform

Vi elsker alle Arduino Nano, og denne måneden trenger vi to av dem! De medfølgende Arduino Nano -brettene kommer med toppnål, men de er ikke loddet til modulene. La pinnene være av for nå. Utfør disse første testene på begge Arduino Nano -modulene før lodding på toppnålene. Alt som trengs er en microUSB -kabel og begge Arduino Nano -kortene akkurat som de kommer ut av posen.

Arduino Nano er et overflatemontert, brødbrettvennlig, miniatyrisert Arduino-bord med integrert USB. Det er utrolig fullt utstyrt og lett å hacke.

Funksjoner:

  • Mikrokontroller: Atmel ATmega328P
  • Spenning: 5V
  • Digitale I/O -pinner: 14 (6 PWM)
  • Analoge inngangspinner: 8
  • Likestrøm per I/O -pinne: 40 mA
  • Flash -minne: 32 KB (2 KB for oppstartslaster)
  • SRAM: 2 KB
  • EEPROM: 1 KB
  • Klokkehastighet: 16 MHz
  • Dimensjoner: 17 mm x 43 mm

Denne spesielle varianten av Arduino Nano er den svarte Robotdyn Nano. Inneholder en innebygd MicroUSB-port koblet til en CH340G USB/seriell brobrikke. Detaljert informasjon om CH340 (og drivere, om nødvendig) finner du her.

Når du først kobler Arduino Nano til en USB -port på datamaskinen, skal den grønne strømlampen lyse og kort tid etter skal den blå LED -en begynne å blinke sakte. Dette skjer fordi Nano er forhåndslastet med BLINK-programmet, som kjører på den splitter nye Arduino Nano.

PROGRAMVARE: Hvis du ennå ikke har Arduino IDE installert, kan du laste den ned fra Arduino.cc

Koble Nano til MicroUSB -kabelen og den andre enden av kabelen til en USB -port på datamaskinen. Start Arduino IDE -programvaren. Velg "Arduino Nano" i IDE under verktøy> bord og "ATmega328P (gammel oppstartslaster)" under verktøy> prosessor. Velg riktig USB -port under verktøy> port (det er sannsynligvis et navn med "wchusb" i den).

Last til slutt opp et eksempel på kode: Fil-> Eksempler-> Grunnleggende-> Blink

Blink er faktisk koden som var forhåndslastet på Nano og burde kjøre akkurat nå for sakte å blinke den blå LED -en. Følgelig, hvis vi laster inn denne eksempelkoden, vil ingenting endres. I stedet, la oss endre koden litt.

Når du ser nøye ut, kan du se at programmet slår på LED -en, venter 1000 millisekunder (ett sekund), slår av LED -en, venter et sekund til og deretter gjør alt igjen - for alltid.

Endre koden ved å endre begge "forsinkelser (1000)" -uttalelsene til "forsinkelse (100)". Denne endringen vil føre til at LED -en blinker ti ganger raskere, ikke sant?

La oss laste den endrede koden inn i Nano ved å klikke på UPLOAD -knappen (pilikonet) like over den endrede koden. Se under koden for statusinformasjon: "kompilering" og deretter "opplasting". Til slutt skal IDE indikere "Opplasting fullført", og LED -lampen din skal blinke raskere.

Gratulerer i så fall! Du har nettopp hacket ditt første stykke innebygd kode.

Når hurtigblink-versjonen er lastet og kjører, hvorfor ikke se om du kan endre koden igjen slik at LED-en blinker raskt to ganger og deretter vente et par sekunder før du gjentar den? Gi det et forsøk! Hva med noen andre mønstre? Når du først har lykkes med å visualisere et ønsket resultat, kodet det og observert at det fungerer som planlagt, har du tatt et enormt skritt mot å bli en kompetent maskinvarehacker.

Før du lodder noe til dem, må du teste begge Arduino Nano -modulene ved å laste inn et tilpasset program på hver og sikre at det kjører riktig.

Hvis du ønsker ytterligere introduksjonsinformasjon for arbeid i Arduino -økosystemet, foreslår vi at du sjekker guiden for HackerBoxes Starter Workshop, som inneholder flere eksempler og en lenke til en PDF Arduino -lærebok.

Trinn 5: Old School VGA PC Kit

Old School VGA PC -sett
Old School VGA PC -sett

Old School VGA PC Kit Innhold:

  • Old School VGA PC Printed Circuit Board
  • To Arduino Nano mikrokontroller moduler
  • HD15 VGA -kontakt
  • Mini-DIN PS/2 tastaturkontakt
  • To 68 Ohm motstander
  • To 470 Ohm motstander
  • Piezo summer

I løpet av de neste trinnene vil du sette sammen og utforske Old School VGA PC Kit. Dette vil åpenbart kreve litt lodding. Det er mange flotte guider og videoer på nettet om lodding (for eksempel). Hvis du føler at du trenger ekstra hjelp, kan du prøve å finne en lokal beslutningstakergruppe eller hackerplass i ditt område. Amatørradioklubber er også alltid gode kilder til elektronikkekspertise.

Noen få designnotater: Det foreslås at når begge Nanos er installert, må du bare koble en av dem om gangen til USB -strøm, aldri begge samtidig. På samme måte kan begge Nanos drive summeren fra A0 -pinnen. Konfigurer bare en av A0 -pinnene som en utgang, aldri begge samtidig. Det er en rad med I/O -pinner (topptekst J1) like under de to MCU -ene (se skjematisk oversikt over pin -tildelinger). Den nedre raden (overskrift J2) er bare et "breadboarding space", og den kobler seg ikke til noe på PCB.

Trinn 6: Old School PC - PS/2 -tastatur

Old School PC - PS/2 -tastatur
Old School PC - PS/2 -tastatur

For å teste ut tastaturgrensesnittet og biblioteket, fyll først ut bare to elementer på kretskortet:

  1. Hoved MCU (Arduino Nano)
  2. Mini-DIN PS/2-kontakt

Main MCU krever de to lange svarte topptekstene. Sekspinners (2x3) topptekst brukes ikke.

Installer Paul Stoffregen PS2Keyboard Library for Arduino.

I Arduino IDE åpner du Fil> Eksempler> PS2Keyboard> Simple_Test

Fra PCB -skjematikken i forrige trinn kan du se at KBCLK er på pin D3 (ikke D5 som antatt i eksemplet), så sørg for at pin -definisjonene i eksemplene er satt til:

const int DataPin = 8; const int IRQpin = 3;

Deretter programmerer du koden til Main MCU, kobler til et PS/2 -tastatur, åpner Arduino Serial Monitor til 9600 bps, og begynn å skrive.

Tastaturskannekoder avmystifisert

Vær oppmerksom på at de fleste eldre USB -tastaturer er kombinert USB- og PS/2 -tastaturer og kan brukes med en adapter eller kobles til en PS/2 -port. Disse tastaturene med to grensesnitt kom vanligvis med en liten USB-til-PS/2-adapterplugg. Imidlertid vil nyere USB -tastaturer som ikke fulgte med en PS/2 -adapter vanligvis ikke gi PS/2 -signalene og vil ikke fungere med en slik adapter.

Trinn 7: Old School -PC - VGA -videoutgang

Old School PC - VGA -videoutgang
Old School PC - VGA -videoutgang

Lodd opp den andre Arduino Nano (VIDEO MCU), de fire motstandene (merk at det er to forskjellige verdier), summeren og VGA -kontakten. Nok en gang brukes ikke seks (2x3) pin -overskriften til MCU.

Installer Sandro Maffiodos VGAX -bibliotek for Arduino. Koble til en VGA -skjerm. Nyt eksempelfilene under fil> eksempler> VGAX

Git -repoen for VGAX -biblioteket har noen svært pedagogiske opplysninger og bruker undervisning i hvordan den ydmyke Arduino blir hacket til å generere et VGA (ish) videosignal.

Trinn 8: Old School PC - BASIC Programming Language

Image
Image

Disse tastatur-, video- og MCU-prosessblokkene kan kombineres til en enkel, men elegant, 8-biters VGA-PC som kan støtte BASIC programmeringsspråk. Rekvisitter til Rob Cai for å sette alle disse brikkene sammen.

BASIC (Beginner's All-purpose Symbolic Instruction Code) er et generelt, høyt nivå programmeringsspråk som vektlegger brukervennlighet. Nesten universelt hadde hjemmemaskiner på 1980-tallet en BASIC-tolk som var bosatt i ROM, og maskinene startet opp direkte. Disse gamle skolemikroene inkluderer forskjellige typer Apple II, Commodore, TRS-80, Atari og Sinclair-maskiner. (wikipedia)

De doble MCU -designene bruker en første Arduino som MAIN MCU, der TinyBasic Plus og PS2 tastaturbibliotek lastes opp. Den andre VIDEO MCU brukes som en grafisk displaygenerator som kjører VGAX -biblioteket. VIDEO MCU kan generere 4 farger, 10 rader x 24 kolonner med ASCII -tegn.

Arduino I/O kan kjøres direkte fra BASIC -programmer. Som vist i denne videoen, er en LED som blinker drevet av noen få programlinjer. BASIC -koden kan til og med lagres i MCUs EEPROM.

KODEN: Skissert for både MCUer og forskjellige andre detaljer er tilgjengelig i Rob Cai's Instructable for prosjektet.

PROGRAMMERING MERK: Når du programmerer MCU -modulene etter at de er på PCB, oppstår det noen ganger problemer siden de serielle grensesnittene er koblet til og kan forstyrre programmeringen. Bare hold nullstillingsknappen på Main MCU mens USB -kabelen programmerer Video MCU, og omvendt mens USB -kabelen programmerer Main MCU.

Trinn 9: Kjør Ubuntu Linux via USB Stick

MicroSD TF Breakout -modul
MicroSD TF Breakout -modul

Ubuntu er en gratis og åpen kildekode Linux-distribusjon basert på Debian. Ubuntu lanseres hvert halvår, med langtidssupport (LTS) hvert annet år. Ubuntu er utviklet av Canonical og brukermiljøet. Ubuntu er oppkalt etter den afrikanske filosofien om ubuntu, som Canonical oversetter som "menneskeheten til andre" eller "Jeg er hva jeg er på grunn av hvem vi alle er". (wikipedia)

Hvorfor ikke prøve Ubuntu på en USB -pinne?

  • Installer eller oppgrader Ubuntu
  • Test Ubuntu -skrivebordsopplevelsen uten å berøre PC -konfigurasjonen
  • Start opp Ubuntu på en lånt maskin eller fra en internettkafé
  • Bruk verktøy installert som standard på USB -pinnen for å reparere eller fikse en ødelagt konfigurasjon

Å lage en oppstartbar Ubuntu USB -pinne er veldig enkelt, spesielt fra Ubuntu selv. Prosessen dekkes i få trinn her.

ADVARSEL: Gjør det til en vane å aldri stole på tilfeldige USB -lagringsenheter. Ja, til og med den som er inkludert i denne boksen. Ikke la noe kjøre automatisk fra en ukjent lagringsenhet. De fleste operativsystemer tillater ikke AutoRun som en del av standard sikkerhetspraksis, men på en Windows -boks bør du deaktivere AutoRun/AutoPlay. Ikke kjør eller åpne noe du finner på lagringsenheten. Hvis du vil bruke lagringsenheten, tørker du den og formaterer den på nytt.

Trinn 10: MicroSD TF Breakout -modul

Hva er forskjellen mellom et TF -kort og et MicroSD -kort? (kilde)

Den lille mobile lagringsenheten kjent som MicroSD -kort ble først produsert av SanDisk Corporation under navnet TransFlash, tilbake i 2004, og den gang ble den introdusert som den minste eksterne eksterne minneenheten i verden. Etter suksessen i mobiltelefonmarkedet ble TransFlash -kortet formelt vedtatt av den nåværende myndigheten for digital lagring, SD Card Association, som en del av den tredje kategorien digital lagringsenhet i den offisielle paraplyen Secure Digital. De to andre enhetene er MiniSD og SD -minnekort. På et eller annet tidspunkt underveis endret SanDisk Corporation enhetens navn til MicroSD -kort og begynte å produsere det vi nå bruker som en standard minnelagringsbrikke, som de fleste mobiltelefoner er designet for å imøtekomme.

Vær oppmerksom på at MicroSD -minneenheter er 3.3V -enheter, så den enkle breakout -modulen som vises her, bør brukes i 3.3V -systemer. For eksempel med 3,3V mikrokontroller. Du vil ofte finne forekomster i naturen (eksempel ett, eksempel to) av prosjekter som bare stopper 5V I/O -signaler til MicroSD -kort. Disse fungerer vanligvis hvis du liker å leve farlig, men de kan være mindre stabile og kan til og med skade MicroSD -kortet. Mer korrekte/robuste løsninger for bruk av MicroSD-kort med 5V mikrokontrollere inkluderer nivåskifter eller spenningsdeler-nettverk (begge diskutert her).

Trinn 11: Mandelbrot Zoom - Ikke fall inn

Image
Image

Bilder av Mandelbrot-settet viser en forseggjort og uendelig komplisert grense som avslører gradvis stadig finere rekursive detaljer ved økende forstørrelser. "Stilen" til denne gjentagende detaljen avhenger av området i settet som skal undersøkes. Settets grense inneholder også mindre versjoner av hovedformen, så fraktalegenskapen til selvlikhet gjelder for hele settet, og ikke bare for dets deler. Mandelbrot -settet har blitt populært utenfor matematikken både på grunn av sin estetiske appell og som et eksempel på en kompleks struktur som skyldes bruk av enkle regler. Det er et av de mest kjente eksemplene på matematisk visualisering og matematisk skjønnhet. (wikipedia)

  • manuelt zoomverktøy
  • så mye kode
  • rekursjon: n. se rekursjon

Trinn 12: HackLife

Vi håper du nyter denne månedens HackerBox -eventyr innen elektronikk og datateknologi. Nå ut og del suksessen din i kommentarene nedenfor eller på HackerBoxes Facebook Group. Husk også at du når som helst kan sende en e -post til [email protected] hvis du har spørsmål eller trenger hjelp.

Hva blir det neste? Bli med på revolusjonen. Lev HackLife. Få en kul boks med hackbart utstyr levert rett i postkassen din hver måned. Surf over til HackerBoxes.com og registrer deg for ditt månedlige HackerBox -abonnement.

Anbefalt: