Talaan ng mga Nilalaman:

HackerBox 0040: PIC ng Destiny: 9 Mga Hakbang
HackerBox 0040: PIC ng Destiny: 9 Mga Hakbang

Video: HackerBox 0040: PIC ng Destiny: 9 Mga Hakbang

Video: HackerBox 0040: PIC ng Destiny: 9 Mga Hakbang
Video: HackerBox 0040 - "PIC of Destiny" unboxing video 2024, Hulyo
Anonim
HackerBox 0040: PIC ng Tadhana
HackerBox 0040: PIC ng Tadhana

Pagbati sa mga HackerBox Hacker sa buong mundo. Ang HackerBox 0040 ay nag-eksperimento sa amin ng PIC Microcontrollers, breadboarding, LCD display, GPS, at marami pa. Naglalaman ang Instructable na ito ng impormasyon para sa pagsisimula sa HackerBox 0040, na mabibili dito habang tumatagal ang mga supply. Kung nais mong makatanggap ng isang HackerBox tulad ng karapatang ito sa iyong mailbox bawat buwan, mangyaring mag-subscribe sa HackerBoxes.com at sumali sa rebolusyon!

Mga Paksa at Mga Layunin sa Pag-aaral para sa HackerBox 0040:

  • Bumuo ng mga naka-embed na system na may PIC Microcontrollers
  • Galugarin ang in-circuit na programa ng mga naka-embed na system
  • Subukan ang mga pagpipilian sa supply ng kuryente at orasan para sa mga naka-embed na system
  • Mag-interface ng isang PIC Microcontroller sa isang module ng output ng LCD
  • Eksperimento sa isang pinagsamang GPS receiver
  • Wield ang PIC ng Destiny

Ang HackerBoxes ay ang buwanang serbisyo sa kahon ng subscription para sa DIY electronics at computer technology. Kami ay mga libangan, gumagawa, at eksperimento. Kami ang nangangarap ng mga pangarap.

HACK ANG PLANET

Hakbang 1: Listahan ng Nilalaman para sa HackerBox 0040

Image
Image
  • PIC Microcontroller PIC16F628 (DIP 18)
  • PIC Microcontroller PIC12F675 (DIP 8)
  • PICkit 3 In-Circuit Programmer at Debugger
  • Target ng Programming ng ZIF Socket para sa PICkit 3
  • USB Cable at Header Wires para sa PICkit 3
  • Module ng GPS na may Onboard Antenna
  • 16x2 Alphanumeric LCD Module
  • Ang Power Supply ng Breadboard na may MicroUSB
  • 16.00MHz Crystals (HC-49)
  • Mahusay na Sandali na Button
  • Diffuse RED 5mm LEDs
  • 5K Ohm Trimmer Potentiometer
  • 18pF Ceramic Capacitors
  • 100nF Ceramic Capacitors
  • 1K Ohm 1 / 4W Resistors
  • 10K Ohm 1 / 4W Resistors
  • 830 Point (Malaki) Solderless Breadboard
  • Bumuo ng Jumper Wire Kit na may 140 piraso
  • Mga Pinili ng Guitar ng Celluloid
  • Eksklusibong PIC16C505 Die Decal

Ilang iba pang mga bagay na makakatulong:

  • Panghinang, bakal, at pangunahing mga tool sa paghihinang
  • Computer para sa pagpapatakbo ng mga tool ng software

Pinakamahalaga, kakailanganin mo ang isang pakiramdam ng pakikipagsapalaran, espiritu ng hacker, pasensya, at pag-usisa. Ang pagbuo at pag-eksperimento sa electronics, habang napaka-rewarding, ay maaaring maging nakakalito, mapaghamong, at kahit nakakainis minsan. Ang layunin ay pag-unlad, hindi pagiging perpekto. Kapag nagpumilit ka at nasisiyahan sa pakikipagsapalaran, maraming kasiyahan ang maaaring makuha mula sa libangan na ito. Dahan-dahang gawin ang bawat hakbang, isipin ang mga detalye, at huwag matakot na humingi ng tulong.

Mayroong isang kayamanan ng impormasyon para sa kasalukuyan at mga prospective na kasapi sa HackerBoxes FAQ. Halos lahat ng mga email na hindi pang-teknikal na suporta na natanggap namin ay sinasagot na doon, kaya talagang pinahahalagahan namin ang iyong paglalaan ng ilang minuto upang basahin ang FAQ.

Hakbang 2: Mga PIC Microcontroller

Programming PIC Microcontrollers Sa PICkit 3
Programming PIC Microcontrollers Sa PICkit 3

Ang pamilya PIC ng mga microcontroller ay ginawa ng Microchip Technology. Ang pangalang PIC ay paunang tinukoy sa Peripheral Interface Controller, ngunit kalaunan ay naitama sa Programmable Intelligent Computer. Ang mga unang bahagi ng pamilya ay lumabas noong 1976. Noong 2013, higit sa labindalawang bilyong indibidwal na mga PIC microcontroller ang naipadala. Ang mga aparato ng PIC ay popular sa parehong mga pang-industriya na developer at hobbyist dahil sa kanilang mababang gastos, malawak na kakayahang magamit, malaking base ng gumagamit, malawak na koleksyon ng mga tala ng aplikasyon, pagkakaroon ng mababang gastos o libreng mga tool sa pag-unlad, serial programming, at muling ma-program na kakayahan ng Flash-memory. (Wikipedia)

Ang HackerBox 0040 ay may kasamang dalawang PIC Microcontroller na pansamantalang nakaupo para sa transportasyon sa isang socket ng ZIF (zero force insertion). Ang unang hakbang dito upang alisin ang dalawang PIC mula sa socket ng ZIF. Mangyaring gawin iyon ngayon!

Ang dalawang microcontrollers ay isang PIC16F628A (datasheet) sa isang pakete DIP18 at isang PIC12F675 (datasheet) sa isang pakete ng DIP 8.

Ang mga halimbawa dito ay gumagamit ng PIC16F628A, subalit ang PIC12F675 ay gumagana nang katulad. Hinihikayat ka naming subukan ito sa isang proyekto mo. Ang maliit na sukat nito ay gumagawa para sa isang mahusay na solusyon kung kakailanganin mo lamang ng isang maliit na bilang ng mga I / O na pin.

Hakbang 3: Programming PIC Microcontrollers Sa PICkit 3

Mayroong maraming mga hakbang sa pagsasaayos na kailangang matugunan kapag gumagamit ng mga tool ng PIC, kaya narito ang isang medyo pangunahing halimbawa:

  • I-install ang MPLAB X IDE software mula sa Microchip
  • Sa pagtatapos ng pag-install, bibigyan ka ng isang link upang mai-install ang MPLAB XC8 C Compiler. Siguraduhin na piliin iyon. Ang XC8 ay ang tagatala na gagamitin namin.
  • Ipasok ang chip ng PIC16F628A (DIP18) sa socket ng ZIF. Tandaan ang posisyon at oryentasyong nakalista sa reverse ng ZIF target PCB.
  • Itakda ang mga switch ng jumper tulad ng ipinahiwatig sa reverse ng target na PCB ng ZIF (B, 2-3, 2-3).
  • I-plug ang limang-pin na header ng programa ng target na board ng ZIF sa header ng PICkit 3.
  • Ikonekta ang PICkit 3 sa computer gamit ang pulang miniUSB cable.
  • Patakbuhin ang MPLAB X IDE.
  • Piliin ang pagpipilian sa menu upang lumikha ng isang bagong proyekto.
  • I-configure: naka-embed na independyenteng proyekto ang microchip, at pindutin ang SUSUNOD.
  • Piliin ang aparato: PIC16F628A, at pindutin ang SUSUNOD
  • Piliin ang debugger: Wala; Mga tool sa hardware: PICkit 3; Tagatala: XC8
  • Ipasok ang pangalan ng proyekto: blink.
  • Pag-click sa kanan ng mga file ng mapagkukunan, at sa ilalim ng bagong pumili ng bagong main.c
  • Bigyan ang c file ng isang pangalan tulad ng "blink"
  • Mag-navigate sa window> view ng memory ng tag> config bits
  • Itakda ang FOSC bit sa INTOSCIO at lahat ng iba pa upang ma-OFF.
  • Pindutin ang pindutan na "bumuo ng source code".
  • I-paste ang nabuong code sa iyong blink.c file sa itaas
  • I-paste din ito sa c file: #define _XTAL_FREQ 4000000
  • Nakaraan sa pangunahing bloke ng c code sa ibaba:

walang bisa (walang bisa)

{TRISA = 0b00000000; habang (1) {PORTAbits. RA3 = 1; _delay_ms (300); PORTAbits. RA3 = 0; _delay_ms (300); }}

  • Pindutin ang icon ng martilyo upang mag-ipon
  • Mag-navigate sa produksyon> itakda ang pagsasaayos ng proyekto> ipasadya
  • Piliin ang PICkit 3 sa kaliwang panel ng popup window at pagkatapos Power mula sa dropdown na patlang sa itaas.
  • I-click ang kahon na "target ng kuryente", itakda ang target na boltahe sa 4.875V, pindutin ang Ilapat.
  • Bumalik sa pangunahing screen, pindutin ang berdeng icon ng arrow.
  • Ang isang babala tungkol sa tungkol sa boltahe ay pop up. Hit magpatuloy.
  • Sa kalaunan ay makakakuha ka ng "Programming / Verify Kumpleto" sa window ng katayuan.
  • Kung ang programmer ay hindi kumikilos, makakatulong itong i-shut down ang IDE at patakbuhin itong muli. Ang lahat ng iyong napiling mga setting ay dapat na panatilihin.

Hakbang 4: Ang Breadboarding ng PIC na Naka-Program Sa Blink.c

Ang Breadboarding ng PIC na Programmed With Blink.c
Ang Breadboarding ng PIC na Programmed With Blink.c

Kapag na-program ang PIC (nakaraang hakbang), maaari itong ibagsak sa isang solderless breadboard para sa pagsubok.

Dahil napili ang panloob na oscillator, kailangan lamang naming mag-wire up ng tatlong mga pin (lakas, lupa, LED).

Ang kapangyarihan ay maaaring ibigay sa breadboard gamit ang power supply module. Mga pahiwatig para sa paggamit ng module ng power supply:

  • Maglagay ng higit pang panghinang sa mga tab sa gilid ng microUSB socket bago ito masira - hindi matapos.
  • Siguraduhin na ang "mga itim na pin" ay pumapasok sa ground rail, at ang "puting mga pin" sa power rail. Kung baligtarin ang mga ito, nasa maling dulo ka ng breadboard.
  • I-flip ang parehong switch sa 5V para sa mga kasamang PIC chips.

Matapos ang pagpoposisyon ng PIC microcontroller, tandaan ang pin 1 tagapagpahiwatig. Ang mga pin ay bilang mula sa pin 1 sa isang counter-clockwise na mode. Wire pin 5 (VSS) sa GND, pin 14 (VDD) hanggang 5V, at pin 2 (RA3) sa LED. Pansinin sa iyong code, ang I / O pin RA3 ay binibisikleta at naka-on upang pumikit ang LED. Ang mas mahabang pin ng LED ay dapat kumonekta sa PIC, habang ang mas maikling pin ay dapat kumonekta sa isang resistor ng 1K (kayumanggi, itim, pula). Ang kabaligtaran na dulo ng risistor ay dapat kumonekta sa GND rail. Ang risistor ay gumaganap lamang bilang isang kasalukuyang limitasyon upang ang LED ay hindi mukhang isang maikling sa pagitan ng 5V at GND at gumuhit ng masyadong maraming kasalukuyang.

Hakbang 5: Programming In-Circuit

Program-In-Circuit
Program-In-Circuit

Ang PICkit 3 dongle ay maaaring magamit upang mai-program ang PIC chip in-circuit. Ang dongle ay maaari ring magbigay ng lakas sa circuit (ang target ng breadboard) tulad ng ginawa namin sa target na ZIF.

  • Alisin ang power supply mula sa breadboard.
  • Ikonekta ang mga lead ng PICkit 3 sa breadboard sa 5V, GND, MCLR, PGC, at PGD.
  • Baguhin ang mga numero ng pagkaantala sa C code.
  • Muling kumpunihin (icon ng martilyo) at pagkatapos ay Program ang PIC.

Dahil nabago ang mga numero ng pagkaantala, ang LED ay dapat na magkaiba ngayon.

Hakbang 6: Paggamit ng isang Panlabas na Crystal Oscillator

Paggamit ng isang Panlabas na Crystal Oscillator
Paggamit ng isang Panlabas na Crystal Oscillator

Para sa eksperimentong PIC na ito, lumipat mula sa panloob na oscillator patungo sa isang mataas na bilis ng panlabas na oscillator ng kristal. Hindi lamang ang panlabas na kristal oscillator na mas mabilis na 16MHz sa halip na 4MHz), ngunit ito ay mas tumpak.

  • Baguhin ang pagsasaayos ng FOSC mula sa INTOSCIO patungong HS.
  • Baguhin ang parehong setting ng FOSC IDE at ang # tukuyin sa code.
  • Palitan ang # tukuyin _XTAL_FREQ 4000000 mula 4000000 hanggang 16000000.
  • Reprogramang muli ang PIC (baka palitan ulit ang mga pagka-antala)
  • I-verify ang pagpapatakbo gamit ang panlabas na kristal.
  • Ano ang mangyayari kapag hinugot mo ang kristal mula sa breadboard?

Hakbang 7: Pagmamaneho ng isang LCD Output Module

Pagmamaneho ng isang LCD Output Module
Pagmamaneho ng isang LCD Output Module

Ang PIC16F628A ay maaaring magamit upang maghimok ng output sa isang 16x2 Alphanumeric LCD Module (data) kapag naka-wire tulad ng ipinakita dito. Ang nakalakip na file picLCD.c ay nagbibigay ng isang simpleng halimbawa ng programa para sa pagsusulat ng output ng teksto sa module na LCD.

Hakbang 8: Oras ng GPS at Tagatanggap ng Lokasyon

Oras ng GPS at Tagatanggap ng Lokasyon
Oras ng GPS at Tagatanggap ng Lokasyon

Ang module ng GPS na ito ay maaaring matukoy ang oras at lokasyon nang lubos na tumpak mula sa mga signal na natanggap mula sa kalawakan hanggang sa maliit na isinamang antena nito. Tatlong mga pin lamang ang kinakailangan para sa pangunahing operasyon.

Ang pulang "Power" LED ay mag-iilaw kapag ang tamang lakas ay konektado. Kapag nakuha na ang mga signal ng satellite, ang berde na "PPS" LED na nagsisimula sa pulso.

Ang lakas ay ibinibigay sa mga pin ng GND at VCC. Maaaring gumana ang VCC sa 3.3V o 5V.

Ang pangatlong pin na kinakailangan ay ang TX pin. Ang pin ng TX ay naglalabas ng isang serial stream na maaaring makuha sa isang computer (sa pamamagitan ng TTL-USB adapter) o sa isang microcontroller. Mayroong maraming mga halimbawang proyekto para sa pagtanggap ng data ng GPS sa isang Arduino.

Kasama sa git repo na ito ang dokumentasyon ng pdf para sa ganitong uri ng module ng GPS. Suriin din ang u-center.

Ang proyektong ito at video ay nagpapakita ng isang halimbawa ng pagkuha ng mataas na petsa at oras ng katumpakan mula sa isang module ng GPS sa isang PIC16F628A microcontroller.

Hakbang 9: Live ang HackLife

Live ang HackLife
Live ang HackLife

Inaasahan namin na nasiyahan ka sa paglalayag ngayong buwan sa DIY electronics. Abutin at ibahagi ang iyong tagumpay sa mga komento sa ibaba o sa HackerBoxes Facebook Group. Tiyak na ipaalam sa amin kung mayroon kang anumang mga katanungan o kailangan ng tulong sa anumang bagay.

Sumali sa rebolusyon. Live ang HackLife. Maaari kang makakuha ng isang cool na kahon ng mga hackable electronics at computer tech na mga proyekto na naihatid mismo sa iyong mailbox bawat buwan. Mag-surf lamang sa HackerBoxes.com at mag-subscribe sa buwanang serbisyo ng HackerBox.

Inirerekumendang: