Indholdsfortegnelse:

HackerBox 0040: PIC of Destiny: 9 trin
HackerBox 0040: PIC of Destiny: 9 trin

Video: HackerBox 0040: PIC of Destiny: 9 trin

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

Hilsen til HackerBox Hackere rundt om i verden. HackerBox 0040 får os til at eksperimentere med PIC -mikrokontrollere, breadboarding, LCD -skærme, GPS og mere. Denne instruktion indeholder oplysninger om, hvordan du kommer i gang med HackerBox 0040, som kan købes her, så længe lager haves. Hvis du gerne vil modtage en HackerBox som denne direkte i din postkasse hver måned, skal du abonnere på HackerBoxes.com og deltage i revolutionen!

Emner og læringsmål for HackerBox 0040:

  • Udvikle integrerede systemer med PIC Microcontrollers
  • Udforsk in-circuit programmering af integrerede systemer
  • Test strømforsyning og clockmuligheder for integrerede systemer
  • Tilslut en PIC -mikrokontroller til et LCD -udgangsmodul
  • Eksperimenter med en integreret GPS -modtager
  • Brug PIC of Destiny

HackerBoxes er den månedlige abonnementskassetjeneste til DIY -elektronik og computerteknologi. Vi er hobbyfolk, producenter og eksperimenterende. Vi er drømmernes drømmere.

HACK PLANET

Trin 1: Indholdsliste til 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 headerledninger til PICkit 3
  • GPS -modul med indbygget antenne
  • 16x2 alfanumerisk LCD -modul
  • Breadboard strømforsyning med MicroUSB
  • 16,00MHz krystaller (HC-49)
  • Taktile øjeblikkelige knapper
  • Spredte RØDE 5 mm lysdioder
  • 5K Ohm trimmerpotentiometer
  • 18pF keramiske kondensatorer
  • 100nF keramiske kondensatorer
  • 1K Ohm 1/4W modstande
  • 10K Ohm 1/4W modstande
  • 830 punkt (stort) loddefrit brødbræt
  • Formet Jumper Wire Kit med 140 stykker
  • Celluloid Guitar Picks
  • Eksklusiv PIC16C505 Die Decal

Nogle andre ting, der vil være nyttige:

  • Loddejern, lodde og grundlæggende loddeværktøjer
  • Computer til at køre softwareværktøjer

Vigtigst af alt har du brug for en følelse af eventyr, hackerånd, tålmodighed og nysgerrighed. At bygge og eksperimentere med elektronik, selvom det er meget givende, kan til tider være svært, udfordrende og endda frustrerende. Målet er fremskridt, ikke perfektion. Når du vedvarer og nyder eventyret, kan der opnås stor tilfredshed fra denne hobby. Tag hvert trin langsomt, vær opmærksom på detaljerne, og vær ikke bange for at bede om hjælp.

Der er et væld af oplysninger til nuværende og potentielle medlemmer i HackerBoxes ofte stillede spørgsmål. Næsten alle de ikke-tekniske support-e-mails, vi modtager, besvares allerede der, så vi sætter stor pris på, at du tager et par minutter på at læse FAQ.

Trin 2: PIC -mikrokontrollere

Programmering af PIC -mikrokontrollere med PICkit 3
Programmering af PIC -mikrokontrollere med PICkit 3

PIC -familien af mikrokontrollere er fremstillet af Microchip Technology. Navnet PIC refererede oprindeligt til Peripheral Interface Controller, men blev senere korrigeret til programmerbar intelligent computer. De første dele i familien udkom i 1976. I 2013 var der blevet afsendt mere end tolv milliarder individuelle PIC -mikrokontrollere. PIC-enheder er populære hos både industrielle udviklere og hobbyfolk på grund af deres lave omkostninger, bred tilgængelighed, store brugerbase, omfattende samling af applikationsnotater, tilgængelighed af billige eller gratis udviklingsværktøjer, seriel programmering og genprogrammerbar Flash-hukommelsesfunktion. (Wikipedia)

HackerBox 0040 indeholder to PIC -mikrokontrollere, der midlertidigt sidder til transport i et ZIF -stik (zero insertion force). Det første trin er at fjerne de to PIC'er fra ZIF -stikket. Gør det nu!

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

Eksemplerne her bruger PIC16F628A, men PIC12F675 fungerer på samme måde. Vi opfordrer dig til at prøve det i et eget projekt. Dens lille størrelse giver en effektiv løsning, når du kun har brug for et lille antal I/O -ben.

Trin 3: Programmering af PIC -mikrokontrollere med PICkit 3

Der er mange konfigurationstrin, der skal behandles, når du bruger PIC -værktøjerne, så her er et temmelig grundlæggende eksempel:

  • Installer MPLAB X IDE -softwaren fra Microchip
  • I slutningen af installationen vil du blive præsenteret for et link til installation af MPLAB XC8 C Compiler. Sørg for at vælge det. XC8 er den kompilator, vi vil bruge.
  • Sæt PIC16F628A (DIP18) -chippen i ZIF -stikket. Bemærk placeringen og retningen, der er angivet på bagsiden af ZIF -målkortet.
  • Indstil jumperkontakterne som angivet på bagsiden af ZIF-målkortet (B, 2-3, 2-3).
  • Slut den fem-benede programmeringshoved på ZIF-målkortet til PICkit 3-headeren.
  • Tilslut PICkit 3 til computeren ved hjælp af det røde miniUSB -kabel.
  • Kør MPLAB X IDE.
  • Vælg menuindstillingen for at oprette et nyt projekt.
  • Konfigurer: mikrochip integreret selvstændigt projekt, og tryk på NÆSTE.
  • Vælg enhed: PIC16F628A, og tryk på NÆSTE
  • Vælg fejlfinding: Ingen; Hardware værktøjer: PICkit 3; Kompiler: XC8
  • Indtast projektnavnet: blink.
  • Højreklik på kildefiler, og vælg ny main under ny. C
  • Giv c -filen et navn som "blink"
  • Naviger til vindue> tag hukommelsesvisning> config bits
  • Sæt FOSC -bit til INTOSCIO og alt andet til OFF.
  • Tryk på knappen "generer kildekode".
  • Indsæt den genererede kode i din blink.c -fil ovenfor
  • Indsæt også dette i c -filen: #define _XTAL_FREQ 4000000
  • Tidligere i hovedblokken med c -kode herunder:

void main (void)

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

  • Tryk på hammerikonet for at kompilere
  • Naviger til produktion> indstil projektkonfiguration> tilpas
  • Vælg PICkit 3 i venstre panel i popup -vinduet og derefter Strøm fra rullemenuen øverst.
  • Klik på feltet "effektmål", indstil målspændingen til 4.875V, tryk på Anvend.
  • Tilbage på hovedskærmen skal du trykke på det grønne pilikon.
  • En advarsel om spænding vil dukke op. Hit fortsæt.
  • Du skulle til sidst få "Programmering/Verificer fuldført" i statusvinduet.
  • Hvis programmereren ikke opfører sig, kan det hjælpe at lukke IDE'en og bare køre den igen. Alle dine valgte indstillinger bør bevares.

Trin 4: Breadboarding af PIC programmeret med blink. C

Breadboarding af PIC programmeret med blink. C
Breadboarding af PIC programmeret med blink. C

Når PIC'en er programmeret (forrige trin), kan den tabes på et loddet brødbræt til test.

Da den interne oscillator blev valgt, behøver vi kun at tilslutte tre ben (strøm, jord, LED).

Strøm kan leveres til brødbrættet ved hjælp af strømforsyningsmodulet. Tips til brug af strømforsyningsmodulet:

  • Læg lidt mere loddemateriale på sideflikene på microUSB -stikket, før det går i stykker - ikke efter.
  • Sørg for, at de "sorte stifter" går ind i jordskinnen, og de "hvide stifter" ind i strømskinnen. Hvis de er vendt, er du i den forkerte ende af brødbrættet.
  • Vend begge kontakter til 5V for de medfølgende PIC -chips.

Når du har placeret PIC -mikrokontrolleren, skal du være opmærksom på pin 1 -indikatoren. Stifterne er nummereret fra pin 1 mod uret. Trådstift 5 (VSS) til GND, pin 14 (VDD) til 5V og pin 2 (RA3) til LED'en. Bemærk i din kode, I/O -pin RA3 bliver cyklet til og fra for at blinke LED'en. Den længere pin på LED'en skal forbindes til PIC, mens den kortere pin skal tilsluttes en 1K modstand (brun, sort, rød). Den modsatte ende af modstanden skal tilsluttes GND -skinnen. Modstanden fungerer simpelthen som en strømgrænse, så LED'en ikke ligner en kort mellem 5V og GND og trækker for meget strøm.

Trin 5: Programmering af kredsløb

Programmering i kredsløb
Programmering i kredsløb

PICkit 3-donglen kan bruges til at programmere PIC-chippen i kredsløbet. Donglen kan også levere strøm til kredsløbet (brødbrætmålet), ligesom vi gjorde med ZIF -målet.

  • Fjern strømforsyningen fra brødbrættet.
  • Tilslut PICkit 3 -ledningerne til brødbrættet ved 5V, GND, MCLR, PGC og PGD.
  • Skift forsinkelsesnumre i C -koden.
  • Genkompiler (hammerikon), og programmer derefter PIC.

Da forsinkelsesnumrene blev ændret, skulle LED'en blinke anderledes nu.

Trin 6: Brug af en ekstern krystaloscillator

Brug af en ekstern krystaloscillator
Brug af en ekstern krystaloscillator

For dette PIC-eksperiment skal du skifte fra den interne oscillator til en højhastigheds ekstern krystaloscillator. Den eksterne krystaloscillator er ikke kun hurtigere 16MHz i stedet for 4MHz), men den er meget mere præcis.

  • Skift FOSC -konfigurationsbit fra INTOSCIO til HS.
  • Skift både FOSC IDE -indstillingen og #define i koden.
  • Skift #define _XTAL_FREQ 4000000 fra 4000000 til 16000000.
  • Omprogrammer PIC (måske ændre forsinkelsesnumrene igen)
  • Kontroller driften med den eksterne krystal.
  • Hvad sker der, når du trækker krystallen fra brødbrættet?

Trin 7: Kørsel af et LCD -udgangsmodul

Kørsel af et LCD -udgangsmodul
Kørsel af et LCD -udgangsmodul

PIC16F628A kan bruges til at drive output til et 16x2 alfanumerisk LCD -modul (data), når det er forbundet som vist her. Den vedhæftede fil picLCD.c giver et enkelt eksempelprogram til at skrive tekstoutput til LCD -modulet.

Trin 8: GPS -tid og placeringsmodtager

GPS -tid og placeringsmodtager
GPS -tid og placeringsmodtager

Dette GPS -modul kan bestemme tid og placering ganske præcist fra signaler modtaget fra rummet til sin lille integrerede antenne. Der kræves kun tre ben til grundlæggende drift.

Den røde "Power" LED lyser, når den rigtige strøm er tilsluttet. Når satellitsignalerne er opnået, begynder den grønne "PPS" LED med puls.

Der leveres strøm til GND- og VCC -benene. VCC kan fungere på 3,3V eller 5V.

Den tredje pin, der er nødvendig, er TX -pin. TX-pin sender en seriel stream, der kan fanges ind i en computer (via TTL-USB-adapter) eller til en mikrokontroller. Der er mange eksempler på projekter til modtagelse af GPS -data til en Arduino.

Denne git repo indeholder pdf -dokumentation for denne type GPS -modul. Tjek også u-center.

Dette projekt og denne video demonstrerer et eksempel på at fange dato og klokkeslæt med høj nøjagtighed fra et GPS -modul til en PIC16F628A mikrokontroller.

Trin 9: Lev HackLife

Live HackLife
Live HackLife

Vi håber, at du har nydt denne måneds rejse til DIY -elektronik. Nå ud og del din succes i kommentarerne herunder eller på HackerBoxes Facebook Group. Lad os bestemt vide det, hvis du har spørgsmål eller har brug for hjælp til noget.

Deltag i revolutionen. Live HackLife. Du kan få en kølig æske med hackbar elektronik og computerteknologiske projekter leveret direkte til din postkasse hver måned. Bare surf over til HackerBoxes.com og tilmeld dig den månedlige HackerBox -service.

Anbefalede: