Innholdsfortegnelse:

HackerBox 0040: PIC of Destiny: 9 trinn
HackerBox 0040: PIC of Destiny: 9 trinn

Video: HackerBox 0040: PIC of Destiny: 9 trinn

Video: HackerBox 0040: PIC of Destiny: 9 trinn
Video: HackerBox 0040 PIC of Destiny 2024, Juli
Anonim
HackerBox 0040: PIC of Destiny
HackerBox 0040: PIC of Destiny

Hilsen HackerBox Hackere rundt om i verden. HackerBox 0040 lar oss eksperimentere med PIC -mikrokontrollere, breadboarding, LCD -skjermer, GPS og mer. Denne instruksen inneholder informasjon om hvordan du kommer i gang med HackerBox 0040, 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!

Emner og læringsmål for HackerBox 0040:

  • Utvikle innebygde systemer med PIC -mikrokontrollere
  • Utforsk in-circuit programmering av innebygde systemer
  • Test strømforsyning og klokkealternativer for innebygde systemer
  • Koble en PIC -mikrokontroller til en LCD -utgangsmodul
  • Eksperimenter med en integrert GPS -mottaker
  • Bruk PIC of Destiny

HackerBoxes er den månedlige abonnementstjenesten for DIY -elektronikk og datateknologi. Vi er hobbyfolk, produsenter og eksperimenter. Vi er drømmerne om drømmer.

HAKK PLANETEN

Trinn 1: Innholdsliste for HackerBox 0040

Image
Image
  • PIC mikrokontroller PIC16F628 (DIP 18)
  • PIC mikrokontroller PIC12F675 (DIP 8)
  • PICkit 3 In-Circuit Programmer og Debugger
  • ZIF Socket -programmeringsmål for PICkit 3
  • USB -kabel og toppleder for PICkit 3
  • GPS -modul med innebygd antenne
  • 16x2 alfanumerisk LCD -modul
  • Strømforsyning til brødbrett med MicroUSB
  • 16,00MHz krystaller (HC-49)
  • Taktile øyeblikkelige knapper
  • Spredte RØDE 5 mm lysdioder
  • 5K ohm trimmerpotensiometer
  • 18pF keramiske kondensatorer
  • 100nF keramiske kondensatorer
  • 1K Ohm 1/4W motstander
  • 10K Ohm 1/4W motstander
  • 830 punkt (stort) loddefritt brødbrett
  • Formet Jumper Wire Kit med 140 deler
  • Celluloid gitarvalg
  • Eksklusiv PIC16C505 Die Decal

Noen andre ting som vil være nyttige:

  • Loddejern, lodde og grunnleggende loddeverktøy
  • Datamaskin for kjøring av programvareverktøy

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: PIC -mikrokontrollere

Programmering av PIC -mikrokontrollere med PICkit 3
Programmering av PIC -mikrokontrollere med PICkit 3

PIC -familien av mikrokontrollere er laget av Microchip Technology. Navnet PIC refererte opprinnelig til perifer grensesnittkontroller, men ble senere korrigert til programmerbar intelligent datamaskin. De første delene i familien kom ut i 1976. I 2013 hadde mer enn tolv milliarder individuelle PIC -mikrokontrollere blitt sendt. PIC-enheter er populære blant både industrielle utviklere og hobbyister på grunn av lave kostnader, bred tilgjengelighet, stor brukerbase, omfattende samling av applikasjonsnotater, tilgjengelighet til lave kostnader eller gratis utviklingsverktøy, serieprogrammering og omprogrammerbar Flash-minne. (Wikipedia)

HackerBox 0040 inkluderer to PIC -mikrokontrollere midlertidig plassert for transport i en ZIF -kontakt (null innsettingskraft). Det første trinnet er å fjerne de to bildene fra ZIF -kontakten. Vennligst gjør det nå!

De to mikrokontrollerne er en PIC16F628A (datablad) i en DIP18 -pakke og en PIC12F675 (datablad) i en DIP 8 -pakke.

Eksemplene her bruker PIC16F628A, men PIC12F675 fungerer på samme måte. Vi oppfordrer deg til å prøve det i et eget prosjekt. Den lille størrelsen gir en effektiv løsning når du bare trenger et lite antall I/O -pinner.

Trinn 3: Programmering av PIC -mikrokontrollere med PICkit 3

Det er mange konfigurasjonstrinn som må tas opp når du bruker PIC -verktøyene, så her er et ganske grunnleggende eksempel:

  • Installer MPLAB X IDE -programvaren fra Microchip
  • På slutten av installasjonen vil du bli presentert med en lenke for å installere MPLAB XC8 C Compiler. Sørg for å velge det. XC8 er kompilatoren vi skal bruke.
  • Sett PIC16F628A (DIP18) -brikken inn i ZIF -kontakten. Legg merke til posisjonen og retningen som er oppført på baksiden av ZIF -mål -PCB.
  • Still inn jumperbryterne som angitt på baksiden av ZIF-målkortet (B, 2-3, 2-3).
  • Koble den fem-pinners programmeringsoverskriften til ZIF-målkortet til PICkit 3-hodet.
  • Koble PICkit 3 til datamaskinen ved hjelp av den røde miniUSB -kabelen.
  • Kjør MPLAB X IDE.
  • Velg menyalternativet for å opprette et nytt prosjekt.
  • Konfigurer: mikrochip innebygd frittstående prosjekt, og trykk NESTE.
  • Velg enhet: PIC16F628A, og trykk NESTE
  • Velg feilsøkingsprogram: Ingen; Maskinvareverktøy: PICkit 3; Kompilator: XC8
  • Skriv inn prosjektnavnet: blink.
  • Høyreklikk på kildefiler, og velg ny main under ny. C
  • Gi c -filen et navn som "blink"
  • Naviger til vindu> tag minnevisning> konfigurasjonsbiter
  • Sett FOSC -biten til INTOSCIO og alt annet til AV.
  • Trykk på "generer kildekode" -knappen.
  • Lim inn den genererte koden i din blink.c -fil ovenfor
  • Lim også inn denne i c -filen: #define _XTAL_FREQ 4000000
  • Tidligere i hovedblokken med c -kode nedenfor:

void main (void)

{TRISA = 0b00000000; mens (1) {PORTAbits. RA3 = 1; _forsinkelse_ms (300); PORTAbits. RA3 = 0; _forsinkelse_ms (300); }}

  • Trykk på hammerikonet for å kompilere
  • Naviger til produksjon> angi prosjektkonfigurasjon> tilpass
  • Velg PICkit 3 i venstre panel i popup -vinduet og deretter Strøm fra rullegardinmenyen øverst.
  • Klikk på "power target" -boksen, sett målspenningen til 4.875V, trykk Apply.
  • Tilbake på hovedskjermen trykker du på det grønne pilikonet.
  • En advarsel om spenning vil dukke opp. Trykk fortsett.
  • Du bør til slutt få "Programmering/bekreft fullført" i statusvinduet.
  • Hvis programmereren ikke oppfører seg, kan det hjelpe å slå av IDE og bare kjøre den igjen. Alle de valgte innstillingene bør beholdes.

Trinn 4: Breadboarding av PIC programmert med blink. C

Breadboarding PIC Programmed With Blink. C
Breadboarding PIC Programmed With Blink. C

Når PIC er programmert (forrige trinn), kan den slippes på et loddfritt brødbrett for testing.

Siden den interne oscillatoren ble valgt, trenger vi bare å koble til tre pinner (strøm, jord, LED).

Strøm kan leveres til brødbrettet ved hjelp av strømforsyningsmodulen. Tips for bruk av strømforsyningsmodulen:

  • Legg litt mer loddetinn på sideflikene på microUSB -kontakten før den bryter av - ikke etter.
  • Sørg for at de "svarte pinnene" går inn i bakkeskinnen, og de "hvite pinnene" inn i kraftskinnen. Hvis de er reversert, er du på feil ende av brødbrettet.
  • Snu begge bryterne til 5V for de medfølgende PIC -brikkene.

Etter å ha plassert PIC -mikrokontrolleren, merk pinne 1 -indikatoren. Pinnene er nummerert fra pinne 1 mot klokken. Koble pin 5 (VSS) til GND, pin 14 (VDD) til 5V, og pin 2 (RA3) til LED -en. Legg merke til i koden din, I/O -pin RA3 blir syklet på og av for å blinke LED -en. Den lengre pinnen på LED -en bør koble til PIC, mens den kortere pinnen skal koble til en 1K -motstand (brun, svart, rød). Den motsatte enden av motstanden skal kobles til GND -skinnen. Motstanden fungerer ganske enkelt som en strømgrense, slik at LED -en ikke ser ut som en kort mellom 5V og GND og trekker for mye strøm.

Trinn 5: Programmering i krets

Programmering i krets
Programmering i krets

PICkit 3-dongelen kan brukes til å programmere PIC-brikken i kretsen. Dongelen kan også levere strømkretsen (brødbrettmålet) akkurat som vi gjorde med ZIF -målet.

  • Fjern strømforsyningen fra brødbrettet.
  • Koble PICkit 3 -lederne til brødbrettet på 5V, GND, MCLR, PGC og PGD.
  • Endre forsinkelsesnumrene i C -koden.
  • Kompil på nytt (hammerikon) og programmer deretter PIC.

Siden forsinkelsestallene ble endret, burde LED -en blinke annerledes nå.

Trinn 6: Bruke en ekstern krystalloscillator

Bruke en ekstern krystalloscillator
Bruke en ekstern krystalloscillator

For dette PIC-eksperimentet, bytt fra den interne oscillatoren til en høyhastighets ekstern krystalloscillator. Ikke bare er den eksterne krystalloscillatoren raskere 16MHz i stedet for 4MHz), men den er mye mer nøyaktig.

  • Endre FOSC -konfigurasjonsbiten fra INTOSCIO til HS.
  • Endre både FOSC IDE -innstillingen og #define i koden.
  • Endre #define _XTAL_FREQ 4000000 fra 4000000 til 16000000.
  • Omprogrammer PIC (kanskje endre forsinkelsestallene igjen)
  • Kontroller driften med den eksterne krystallen.
  • Hva skjer når du trekker krystallet fra brødbrettet?

Trinn 7: Kjøring av en LCD -utgangsmodul

Kjøring av en LCD -utgangsmodul
Kjøring av en LCD -utgangsmodul

PIC16F628A kan brukes til å drive utgang til en 16x2 alfanumerisk LCD -modul (data) når den er koblet til som vist her. Den vedlagte filen picLCD.c gir et enkelt eksempelprogram for skriving av tekstutgang til LCD -modulen.

Trinn 8: GPS -tid og posisjonsmottaker

GPS -tid og posisjonsmottaker
GPS -tid og posisjonsmottaker

Denne GPS -modulen kan bestemme tid og plassering ganske nøyaktig fra signaler mottatt fra verdensrommet til den lille integrerte antennen. Bare tre pinner kreves for grunnleggende drift.

Den røde "Power" -lampen lyser når riktig strøm er tilkoblet. Når satellittsignalene er oppnådd, begynner den grønne "PPS" -LEDEN med puls.

Strøm leveres til GND- og VCC -pinnene. VCC kan operere på 3,3V eller 5V.

Den tredje pinnen som er nødvendig er TX -pinnen. TX-pinnen sender ut en seriell strøm som kan fanges opp i en datamaskin (via TTL-USB-adapter) eller til en mikrokontroller. Det er mange eksempler på prosjekter for å motta GPS -data til en Arduino.

Denne git -repoen inneholder pdf -dokumentasjon for denne typen GPS -moduler. Sjekk også ut u-senteret.

Dette prosjektet og videoen demonstrerer et eksempel på å fange dato og klokkeslett med høy nøyaktighet fra en GPS -modul til en PIC16F628A mikrokontroller.

Trinn 9: Lev HackLife

Lev HackLife
Lev HackLife

Vi håper du har hatt glede av denne måneds reise til DIY -elektronikk. Nå ut og del suksessen din i kommentarene nedenfor eller på HackerBoxes Facebook Group. Gi oss beskjed hvis du har spørsmål eller trenger hjelp med noe.

Bli med på revolusjonen. Lev HackLife. Du kan få en kul boks med hackbar elektronikk og datatekniske prosjekter levert rett i postkassen din hver måned. Bare surf over til HackerBoxes.com og abonner på den månedlige HackerBox -tjenesten.

Anbefalt: