Πίνακας περιεχομένων:

HackerBox 0040: PIC of Destiny: 9 Βήματα
HackerBox 0040: PIC of Destiny: 9 Βήματα

Βίντεο: HackerBox 0040: PIC of Destiny: 9 Βήματα

Βίντεο: HackerBox 0040: PIC of Destiny: 9 Βήματα
Βίντεο: HackerBoxes 0009 Virtual Worlds 2024, Ιούλιος
Anonim
HackerBox 0040: PIC of Destiny
HackerBox 0040: PIC of Destiny

Χαιρετισμούς στους HackerBox Hackers σε όλο τον κόσμο. Το HackerBox 0040 μας πειραματίζεται με τους μικροελεγκτές PIC, το breadboarding, τις οθόνες LCD, το GPS και πολλά άλλα. Αυτό το Εγχειρίδιο περιέχει πληροφορίες για να ξεκινήσετε με το HackerBox 0040, οι οποίες μπορείτε να τις αγοράσετε εδώ μέχρι εξαντλήσεως των αποθεμάτων. Αν θα θέλατε να λαμβάνετε ένα HackerBox όπως αυτό ακριβώς στο γραμματοκιβώτιό σας κάθε μήνα, εγγραφείτε στο HackerBoxes.com και λάβετε μέρος στην επανάσταση!

Θέματα και μαθησιακοί στόχοι για το HackerBox 0040:

  • Αναπτύξτε ενσωματωμένα συστήματα με μικροελεγκτές PIC
  • Εξερευνήστε τον προγραμματισμό σε κύκλωμα ενσωματωμένων συστημάτων
  • Δοκιμάστε τις επιλογές τροφοδοσίας και χρονισμού για ενσωματωμένα συστήματα
  • Συνδέστε έναν μικροελεγκτή PIC σε μια μονάδα εξόδου LCD
  • Πειραματιστείτε με ενσωματωμένο δέκτη GPS
  • Ασύρματο το PIC του Destiny

Το HackerBoxes είναι η μηνιαία υπηρεσία συνδρομής για ηλεκτρονικά είδη DIY και τεχνολογία υπολογιστών. Είμαστε χομπίστες, κατασκευαστές και πειραματιστές. Είμαστε οι ονειροπόλοι των ονείρων.

ΧΑΚ ΣΤΟΝ ΠΛΑΝΗΤΗ

Βήμα 1: Λίστα περιεχομένου για το HackerBox 0040

Image
Image
  • Μικροελεγκτής PIC PIC16F628 (DIP 18)
  • Μικροελεγκτής PIC PIC12F675 (DIP 8)
  • PICkit 3 In-Circuit Programmer and Debugger
  • Στόχος προγραμματισμού υποδοχών ZIF για το PICkit 3
  • Καλώδιο USB και καλώδια κεφαλίδας για PICkit 3
  • Μονάδα GPS με ενσωματωμένη κεραία
  • Αλφαριθμητική μονάδα LCD 16x2
  • Τροφοδοτικό Breadboard με MicroUSB
  • Κρύσταλλοι 16.00MHz (HC-49)
  • Απτά στιγμιαία κουμπιά
  • Διάχυτα LED RED 5mm
  • Ποτενσιόμετρο Trimmer 5K Ohm
  • Κεραμικοί πυκνωτές 18pF
  • Κεραμικοί πυκνωτές 100nF
  • Αντιστάσεις 1K Ohm 1/4W
  • Αντιστάσεις 10K Ohm 1/4W
  • 830 Point (Large) Solderless Breadboard
  • Σετ Jumper Wire Kit με 140 Τεμάχια
  • Επιλογές κιθάρας κυτταρίτιδας
  • Αποκλειστικό PIC16C505 Χαλκομανία

Κάποια άλλα πράγματα που θα σας βοηθήσουν:

  • Συγκολλητικό σίδερο, συγκόλληση και βασικά εργαλεία συγκόλλησης
  • Υπολογιστής για τη λειτουργία εργαλείων λογισμικού

Το πιο σημαντικό, θα χρειαστείτε μια αίσθηση περιπέτειας, πνεύμα χάκερ, υπομονή και περιέργεια. Το να χτίζεις και να πειραματίζεσαι με τα ηλεκτρονικά, αν και είναι πολύ ανταποδοτικό, μπορεί να είναι δύσκολο, προκλητικό, ακόμη και απογοητευτικό κατά καιρούς. Ο στόχος είναι η πρόοδος και όχι η τελειότητα. Όταν επιμένεις και απολαμβάνεις την περιπέτεια, μπορεί να προκύψει μεγάλη ικανοποίηση από αυτό το χόμπι. Κάντε κάθε βήμα αργά, προσέξτε τις λεπτομέρειες και μην φοβάστε να ζητήσετε βοήθεια.

Υπάρχει μια πληθώρα πληροφοριών για τα τρέχοντα και τα υποψήφια μέλη στις Συνήθεις Ερωτήσεις για τα HackerBoxes. Σχεδόν όλα τα μηνύματα ηλεκτρονικής υποστήριξης που λαμβάνουμε έχουν ήδη απαντηθεί εκεί, γι 'αυτό εκτιμούμε πραγματικά τον χρόνο που αφιερώσατε για να διαβάσετε τις Συνήθεις Ερωτήσεις.

Βήμα 2: Μικροελεγκτές PIC

Προγραμματισμός μικροελεγκτών PIC με PICkit 3
Προγραμματισμός μικροελεγκτών PIC με PICkit 3

Η οικογένεια μικροελεγκτών PIC είναι κατασκευασμένη από την τεχνολογία Microchip. Το όνομα PIC αναφερόταν αρχικά στο Peripheral Interface Controller, αλλά αργότερα διορθώθηκε σε προγραμματιζόμενο ευφυή υπολογιστή. Τα πρώτα μέρη της οικογένειας κυκλοφόρησαν το 1976. Μέχρι το 2013, είχαν αποσταλεί περισσότερα από δώδεκα δισεκατομμύρια μεμονωμένοι μικροελεγκτές PIC. Οι συσκευές PIC είναι δημοφιλείς τόσο στους βιομηχανικούς προγραμματιστές όσο και στους χομπίστες λόγω του χαμηλού κόστους, της μεγάλης διαθεσιμότητας, της μεγάλης βάσης χρηστών, της εκτεταμένης συλλογής σημειώσεων εφαρμογών, της διαθεσιμότητας χαμηλού κόστους ή δωρεάν εργαλείων ανάπτυξης, του σειριακού προγραμματισμού και της δυνατότητας επανασχεδιασμού μνήμης Flash. (Wikipedia)

Το HackerBox 0040 περιλαμβάνει δύο μικροελεγκτές PIC που κάθονται προσωρινά για μεταφορά σε πρίζα ZIF (μηδενική δύναμη εισαγωγής). Το πρώτο βήμα είναι να αφαιρέσετε τα δύο PIC από την υποδοχή ZIF. Παρακαλώ κάντε το τώρα!

Οι δύο μικροελεγκτές είναι ένα PIC16F628A (φύλλο δεδομένων) σε ένα πακέτο DIP18 και ένα PIC12F675 (φύλλο δεδομένων) σε ένα πακέτο DIP 8.

Τα παραδείγματα εδώ χρησιμοποιούν το PIC16F628A, ωστόσο το PIC12F675 λειτουργεί παρόμοια. Σας ενθαρρύνουμε να το δοκιμάσετε σε ένα δικό σας έργο. Το μικρό του μέγεθος καθιστά μια αποτελεσματική λύση όταν χρειάζεστε μόνο έναν μικρό αριθμό ακίδων εισόδου/εξόδου.

Βήμα 3: Προγραμματισμός μικροελεγκτών PIC με PICkit 3

Υπάρχουν πολλά βήματα διαμόρφωσης που πρέπει να αντιμετωπιστούν κατά τη χρήση των εργαλείων PIC, οπότε εδώ είναι ένα αρκετά βασικό παράδειγμα:

  • Εγκαταστήστε το λογισμικό MPLAB X IDE από το Microchip
  • Στο τέλος της εγκατάστασης, θα εμφανιστεί ένας σύνδεσμος για την εγκατάσταση του μεταγλωττιστή MPLAB XC8 C. Φροντίστε να το επιλέξετε. Το XC8 είναι ο μεταγλωττιστής που θα χρησιμοποιήσουμε.
  • Τοποθετήστε το τσιπ PIC16F628A (DIP18) στην υποδοχή ZIF. Σημειώστε τη θέση και τον προσανατολισμό που αναγράφονται στην πίσω πλευρά του PCB στόχου ZIF.
  • Ρυθμίστε τους διακόπτες βραχυκυκλωτήρων όπως υποδεικνύεται στην πίσω πλευρά του PCB στόχου ZIF (B, 2-3, 2-3).
  • Συνδέστε την κεφαλίδα προγραμματισμού πέντε ακίδων της πλακέτας στόχου ZIF στην κεφαλίδα PICkit 3.
  • Συνδέστε το PICkit 3 στον υπολογιστή χρησιμοποιώντας το κόκκινο καλώδιο miniUSB.
  • Εκτελέστε το MPLAB X IDE.
  • Επιλέξτε την επιλογή μενού για να δημιουργήσετε ένα νέο έργο.
  • Διαμόρφωση: ενσωματωμένο αυτόνομο έργο μικροτσίπ και πατήστε ΕΠΟΜΕΝΟ.
  • Επιλέξτε συσκευή: PIC16F628A και πατήστε ΕΠΟΜΕΝΟ
  • Επιλογή εντοπισμού σφαλμάτων: Κανένα. Εργαλεία υλικού: PICkit 3; Μεταγλωττιστής: XC8
  • Εισαγάγετε το όνομα του έργου: αναβοσβήνει.
  • Κάντε δεξί κλικ στα αρχεία προέλευσης και κάτω από το νέο επιλέξτε νέο main.c
  • Δώστε στο αρχείο c ένα όνομα όπως "blink"
  • Μεταβείτε στο παράθυρο> προβολή μνήμης ετικετών> bit ρυθμίσεων
  • Ρυθμίστε το bit FOSC σε INTOSCIO και όλα τα άλλα σε OFF.
  • Πατήστε το κουμπί "δημιουργία πηγαίου κώδικα".
  • Επικολλήστε τον κωδικό που δημιουργήθηκε στο παραπάνω αρχείο blink.c
  • Επικολλήστε επίσης αυτό στο αρχείο c: #define _XTAL_FREQ 4000000
  • Παρελθόν στο κύριο μπλοκ του κώδικα c παρακάτω:

κενό κενό (κενό)

{TRISA = 0b00000000; ενώ (1) {PORTAbits. RA3 = 1; _ καθυστέρηση_ms (300); PORTAbits. RA3 = 0; _ καθυστέρηση_ms (300); }}

  • Πατήστε το εικονίδιο σφυρί για μεταγλώττιση
  • Μεταβείτε στην παραγωγή> ορίστε τη διαμόρφωση έργου> προσαρμόστε
  • Επιλέξτε PICkit 3 στο αριστερό πλαίσιο του αναδυόμενου παραθύρου και, στη συνέχεια, τροφοδοσία από το αναπτυσσόμενο πεδίο στο επάνω μέρος.
  • Κάντε κλικ στο πλαίσιο "στόχος ισχύος", ορίστε την τάση στόχου στα 4.875V, πατήστε Εφαρμογή.
  • Πίσω στην κύρια οθόνη, πατήστε το εικονίδιο με το πράσινο βέλος.
  • Θα εμφανιστεί μια προειδοποίηση σχετικά με την τάση. Πατήστε συνέχεια.
  • Θα πρέπει τελικά να λάβετε "Προγραμματισμός/Επαλήθευση Ολοκληρώθηκε" στο παράθυρο κατάστασης.
  • Εάν ο προγραμματιστής δεν συμπεριφέρεται, μπορεί να σας βοηθήσει να κλείσετε το IDE και να το εκτελέσετε ξανά. Όλες οι επιλεγμένες ρυθμίσεις θα πρέπει να διατηρηθούν.

Βήμα 4: Breadboarding του PIC που έχει προγραμματιστεί με Blink.c

Breadboarding του PIC που έχει προγραμματιστεί με το Blink.c
Breadboarding του PIC που έχει προγραμματιστεί με το Blink.c

Μόλις προγραμματιστεί ο PIC (προηγούμενο βήμα), μπορεί να πέσει σε δοκιμαστικό τεμάχιο χωρίς κόλλα.

Δεδομένου ότι επιλέχθηκε ο εσωτερικός ταλαντωτής, χρειάζεται μόνο να συνδέσουμε τρεις ακίδες (ισχύος, γείωση, LED).

Η τροφοδοσία μπορεί να παρέχεται στο breadboard χρησιμοποιώντας τη μονάδα τροφοδοσίας. Υποδείξεις για τη χρήση της μονάδας τροφοδοσίας:

  • Τοποθετήστε λίγο άλλο συγκολλητικό στις πλευρικές γλωττίδες της υποδοχής microUSB πριν σπάσει - όχι μετά.
  • Βεβαιωθείτε ότι οι "μαύρες καρφίτσες" εισέρχονται στη ράγα εδάφους και οι "λευκές καρφίτσες" στη ράγα τροφοδοσίας. Αν αντιστραφούν, βρίσκεστε σε λάθος άκρο του ψωμιού.
  • Γυρίστε και τους δύο διακόπτες στα 5V για τα τσιπ PIC που περιλαμβάνονται.

Αφού τοποθετήσετε τον μικροελεγκτή PIC, σημειώστε την ένδειξη ακίδας 1. Οι ακίδες αριθμούνται από τον πείρο 1 κατά αριστερόστροφο τρόπο. Ασύρματη ακίδα 5 (VSS) σε GND, ακίδα 14 (VDD) έως 5V και ακίδα 2 (RA3) στο LED. Σημειώστε στον κωδικό σας, η ακίδα εισόδου/εξόδου RA3 ενεργοποιείται και απενεργοποιείται για να αναβοσβήνει το LED. Ο μακρύτερος πείρος της λυχνίας LED πρέπει να συνδέεται με το PIC, ενώ ο μικρότερος πείρος πρέπει να συνδέεται με μια αντίσταση 1Κ (καφέ, μαύρο, κόκκινο). Το αντίθετο άκρο της αντίστασης πρέπει να συνδέεται με τη ράγα GND. Η αντίσταση λειτουργεί απλά ως όριο ρεύματος, έτσι ώστε η λυχνία LED να μην μοιάζει με βραχυκύκλωμα μεταξύ 5V και GND και να αντλεί πολύ ρεύμα.

Βήμα 5: Προγραμματισμός In Circuit

Προγραμματισμός In Circuit
Προγραμματισμός In Circuit

Το dongle PICkit 3 μπορεί να χρησιμοποιηθεί για τον προγραμματισμό του τσιπ PIC σε κύκλωμα. Το dongle μπορεί επίσης να τροφοδοτήσει το κύκλωμα (ο στόχος του breadboard) όπως κάναμε με τον στόχο ZIF.

  • Αφαιρέστε το τροφοδοτικό από το breadboard.
  • Συνδέστε τους αγωγούς PICkit 3 σε breadboard σε 5V, GND, MCLR, PGC και PGD.
  • Αλλάξτε τους αριθμούς καθυστέρησης στον κωδικό C.
  • Ανασυγκολλήστε (εικονίδιο σφυριού) και, στη συνέχεια, προγραμματίστε το PIC.

Δεδομένου ότι οι αριθμοί καθυστέρησης άλλαξαν, η λυχνία LED θα αναβοσβήνει διαφορετικά τώρα.

Βήμα 6: Χρήση εξωτερικού ταλαντωτή κρυστάλλου

Χρήση εξωτερικού ταλαντωτή κρυστάλλου
Χρήση εξωτερικού ταλαντωτή κρυστάλλου

Για αυτό το πείραμα PIC, μεταβείτε από τον εσωτερικό ταλαντωτή σε έναν εξωτερικό ταλαντωτή κρυστάλλων υψηλής ταχύτητας. Όχι μόνο ο εξωτερικός ταλαντωτής κρυστάλλων είναι ταχύτερος 16MHz αντί για 4MHz), αλλά είναι πολύ πιο ακριβής.

  • Αλλάξτε το bit διαμόρφωσης FOSC από INTOSCIO σε HS.
  • Αλλάξτε τόσο τη ρύθμιση FOSC IDE όσο και το #define στον κώδικα.
  • Αλλάξτε #define _XTAL_FREQ 4000000 από 4000000 σε 16000000.
  • Επαναπρογραμματισμός του PIC (ίσως αλλάξετε ξανά τους αριθμούς καθυστέρησης)
  • Επαληθεύστε τη λειτουργία με τον εξωτερικό κρύσταλλο.
  • Τι συμβαίνει όταν τραβάτε τον κρύσταλλο από το breadboard;

Βήμα 7: Οδήγηση μονάδας εξόδου LCD

Οδήγηση μονάδας εξόδου LCD
Οδήγηση μονάδας εξόδου LCD

Το PIC16F628A μπορεί να χρησιμοποιηθεί για να οδηγήσει την έξοδο σε μια Αλφαριθμητική μονάδα LCD 16x2 (δεδομένα) όταν είναι συνδεδεμένη όπως φαίνεται εδώ. Το συνημμένο αρχείο picLCD.c δίνει ένα απλό παράδειγμα προγράμματος για την εγγραφή εξόδου κειμένου στη μονάδα LCD.

Βήμα 8: Δέκτης ώρας και τοποθεσίας GPS

Δέκτης ώρας και τοποθεσίας GPS
Δέκτης ώρας και τοποθεσίας GPS

Αυτή η μονάδα GPS μπορεί να καθορίσει τον χρόνο και τη θέση με μεγάλη ακρίβεια από τα σήματα που λαμβάνονται από το διάστημα στη μικρή ενσωματωμένη κεραία της. Απαιτούνται μόνο τρεις ακίδες για βασική λειτουργία.

Το κόκκινο LED "Power" θα ανάψει όταν συνδεθεί η σωστή τροφοδοσία. Μόλις ληφθούν τα δορυφορικά σήματα, η πράσινη λυχνία LED "PPS" με έναρξη παλμού.

Τροφοδοτείται με ρεύμα στις ακίδες GND και VCC. Το VCC μπορεί να λειτουργήσει σε 3.3V ή 5V.

Ο τρίτος πείρος που είναι απαραίτητος είναι ο πείρος TX. Ο πείρος TX εξάγει μια σειριακή ροή που μπορεί να καταγραφεί σε έναν υπολογιστή (μέσω προσαρμογέα TTL-USB) ή σε έναν μικροελεγκτή. Υπάρχουν πολλά παραδείγματα έργων για τη λήψη δεδομένων GPS σε ένα Arduino.

Αυτό το git repo περιλαμβάνει τεκμηρίωση pdf για αυτόν τον τύπο μονάδας GPS. Ελέγξτε επίσης το u-center.

Αυτό το έργο και το βίντεο παρουσιάζει ένα παράδειγμα λήψης ημερομηνίας και ώρας υψηλής ακρίβειας από μια μονάδα GPS σε έναν μικροελεγκτή PIC16F628A.

Βήμα 9: Ζήστε το HackLife

Ζήστε το HackLife
Ζήστε το HackLife

Ελπίζουμε να απολαύσατε το ταξίδι αυτού του μήνα στα DIY ηλεκτρονικά. Απευθυνθείτε και μοιραστείτε την επιτυχία σας στα παρακάτω σχόλια ή στην Ομάδα Facebook HackerBoxes. Σίγουρα ενημερώστε μας εάν έχετε απορίες ή χρειάζεστε βοήθεια για οτιδήποτε.

Ελάτε στην επανάσταση. Ζήστε το HackLife. Μπορείτε να λαμβάνετε ένα δροσερό κουτί ηλεκτρονικών έργων με δυνατότητα hacking και τεχνολογίας υπολογιστών που παραδίδονται απευθείας στο γραμματοκιβώτιό σας κάθε μήνα. Απλώς σερφάρετε στο HackerBoxes.com και εγγραφείτε στη μηνιαία υπηρεσία HackerBox.

Συνιστάται: