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

5 Transistor PIC Programmer *Σχηματική προσθήκη στο βήμα 9 !: 9 βήματα
5 Transistor PIC Programmer *Σχηματική προσθήκη στο βήμα 9 !: 9 βήματα

Βίντεο: 5 Transistor PIC Programmer *Σχηματική προσθήκη στο βήμα 9 !: 9 βήματα

Βίντεο: 5 Transistor PIC Programmer *Σχηματική προσθήκη στο βήμα 9 !: 9 βήματα
Βίντεο: Getting Started with Programming PIC Microcontroller 12F675 With PICkit 3 + PIC Programming Adapter 2024, Ιούνιος
Anonim
5 Transistor PIC Programmer *Σχηματική προσθήκη στο βήμα 9!
5 Transistor PIC Programmer *Σχηματική προσθήκη στο βήμα 9!
5 Transistor PIC Programmer *Σχηματική προσθήκη στο βήμα 9!
5 Transistor PIC Programmer *Σχηματική προσθήκη στο βήμα 9!
5 Transistor PIC Programmer *Σχηματική προσθήκη στο βήμα 9!
5 Transistor PIC Programmer *Σχηματική προσθήκη στο βήμα 9!

Φτιάξτε τον δικό σας προγραμματιστή PIC για την παράλληλη θύρα του υπολογιστή σας. Αυτή είναι μια παραλλαγή του κλασικού σχεδιασμού του David Tait. Είναι πολύ αξιόπιστο και υπάρχει καλό λογισμικό προγραμματισμού διαθέσιμο δωρεάν. Μου αρέσει ο προγραμματιστής IC-Prog και PICpgm. Το καλύτερο από όλα, χρησιμοποιεί μόνο δύο ρυθμιστές τάσης και 5 τρανζίστορ! *** Πρόσθεσα μια φωτογραφία του τελικού αποτελέσματος και φωτογραφίες του νέου μου μίνι προγραμματιστή με καθαρή κορυφή. Κάντε κλικ στις μικρότερες εικόνες παρακάτω! ** Αυτή είναι μια νέα παραλλαγή και δεν λειτούργησε 100% σωστά στην πρώτη προσπάθεια. Υποθέτω ότι ξεπέρασα τον εαυτό μου.. Έχω δημιουργήσει αρκετές παραλλαγές και νόμιζα ότι ήμουν πάνω από τα πράγματα.:) Υπάρχουν μερικές αλλαγές, αλλά όλα λειτούργησαν στο τέλος. Έπρεπε να προσθέσω ένα επιπλέον τρανζίστορ npn και να αλλάξω μερικές τιμές αντίστασης. Αυτές οι αλλαγές αντικατοπτρίζονται ήδη σε αυτήν τη λίστα, αλλά δεν ενημερώνονται σε όλες τις φωτογραφίες. Δείτε το βήμα 7 για φωτογραφίες του λογισμικού που χρησιμοποιώ και πώς να ρυθμίσετε τον προγραμματιστή. Χρειάζεστε: Αρσενικό DB25 socket4x NPN τρανζίστορ, όπως το τρανζίστορ 2n39041x PNP, όπως ο ρυθμιστής τάσης 2n39061x 78051x ρυθμιστής τάσης LM317 (και κατάλληλες αντιστάσεις σε κατασκευή 12.5V) 1x 10k SIP αντιστάσεων 4x 10k αντιστάσεις 1x 22k αντίσταση* ενημέρωση για βήμα 31x 5k αντίσταση 1x 1k αντίσταση* ενημέρωση για βήμα 31x μηχανήματα-τσιπ πρίζες συγκολλητικό σίδερο, protoboard, καλώδιο περιτυλίγματος, εργαλείο περιτυλίγματος, πιστόλι κόλλας.

Βήμα 1: Κάρτα ευρετηρίου

Κάρτα ευρετηρίου
Κάρτα ευρετηρίου
Κάρτα ευρετηρίου
Κάρτα ευρετηρίου

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

Στη συνέχεια, λυγίστε τα πόδια του δικτύου αντιστάσεων SIP και κολλήστε όπως φαίνεται.

Βήμα 2: Θύρα ICSP

Θύρα ICSP
Θύρα ICSP
Θύρα ICSP
Θύρα ICSP

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

Τώρα κολλήστε τη θύρα προς τα κάτω. Τώρα είναι επίσης μια καλή στιγμή για να κολλήσετε τα τρανζίστορ σας. Μπορείτε επίσης να κολλήσετε τον εκπομπό των τρανζίστορ npn στο επίπεδο γείωσης, τώρα. Έχω επισημάνει κάθε σκοπό τρανζίστορ εδώ. Τα τρία τρανζίστορ npn θα είναι ενσύρματα ως μετατροπείς. Ουσιαστικά θα "απομακρύνουν την ισχύ" από την αντίστοιχη αντίσταση έλξης όταν τοποθετηθεί ένα ρεύμα στον πείρο της βάσης τους. Το τρανζίστορ PNP (ανάποδα) θα ελέγχει την τάση προγραμματισμού. Θα ανατρέψει επίσης το σήμα του. ** EDIT: Μόλις συνειδητοποίησα μια παράλειψη σε αυτό το σχέδιο. Θα πρέπει να υπάρχει ένα επιπλέον τρανζίστορ npn που χρησιμοποιείται για την οδήγηση του τρανζίστορ PNP. Αυτό θα προστατεύσει τη θύρα του υπολογιστή σας από τις τάσεις στη βάση του pnp. Λάθος μου. Αυτό θα καταργήσει επίσης το σήμα. Δείτε το βήμα 8.

Βήμα 3: Αντιστάσεις βάσης

Αντιστάσεις βάσης
Αντιστάσεις βάσης
Αντιστάσεις βάσης
Αντιστάσεις βάσης

Χρησιμοποίησα αντιστάσεις βάσης 10k. Συγκολλητής όπου κυκλώθηκε. Χάλασα το τρανζίστορ pnp σε αυτήν την εικόνα. Αγνοήστε την κατάλευκη περιοχή.

** ΕΠΕΞΕΡΓΑΣΙΑ: η αντίσταση βάσης για το "data in" tranny πρέπει να είναι 22k. Επίσης, δεν πρέπει να αντλούνται δεδομένα από το δίκτυο αντίστασης 10k. Αντ 'αυτού, τραβήξτε το με μια αντίσταση 1k. Μόλις συνειδητοποίησα ότι αυτές οι δύο αντιστάσεις θα σχηματίσουν ένα διαχωριστή τάσης και αν το καθένα είναι 10k υψηλό, τα δεδομένα θα είναι 2,5V … δεν είναι καλό. (Εναλλακτικά, μπορείτε απλώς να αφήσετε τα πράγματα όπως είναι, αλλά να συνδέσετε τον συλλέκτη τρανζίστορ Data Out σε όλα τα υπόλοιπα 5 10k pullups. Αυτό κάνει το διαχωριστικό 2/10, το οποίο θα πρέπει ακόμα να αρκεί. Στο συγκεκριμένο κύκλωμά μου, αυτό έκανα και καταγράφει 4,24V ως υψηλό, το οποίο πρέπει να είναι αρκετό.) Εικόνα 2: Το τρανζίστορ pnp παίρνει δύο αντιστάσεις βάσης ενσύρματες ως διαχωριστικό. Συγκολλήστε την αντίσταση 10k μεταξύ εκπομπής και βάσης. Συγκολλήστε το ένα άκρο του 5k (στην πραγματικότητα χρησιμοποίησα 3,3k γιατί το είχα ξαπλωμένο) στη βάση. Μπορείτε να συνδέσετε τον συλλέκτη στην καρφίτσα Vpp, τώρα, επειδή είναι κοντά. Τελικά, θα συνδέσετε τον πομπό στην πηγή 12,5V. Η αντίσταση 10k διατηρεί τη βάση υψηλή - έτσι απενεργοποιείται η τάση προγραμματισμού. Όταν ο πείρος 5 της παράλληλης θύρας σας χαμηλώνει, τραβά τη βάση χαμηλά, μέσω της αντίστασης 5k. Το σχήμα που χρησιμοποίησα έδειξε επίσης μια αντίσταση 10k μεταξύ συλλέκτη και γείωσης. Δεν είμαι σίγουρος σε τι χρησιμεύει. Νομίζω ότι είναι για να διασφαλιστεί ότι ο πείρος MCLR του PIC δεν επιπλέει. Αλλά αυτό θα ήταν ανόητο, δεδομένου ότι το MCLR συνήθως πρόκειται να συνδεθεί με εξωτερικό τράβηγμα, ούτως ή άλλως. Επιπλέον, ο πείρος MCLR είναι ένας ενεργός νεροχύτης μερικών μικροαμπέρ. Δεν επιπλέει. Σε κάθε περίπτωση, έχω παραλείψει απερίσκεπτα αυτήν την αντίσταση. Μπόνους πόντους για όποιον μπορεί να μου πει γιατί είναι κακή ιδέα.

Βήμα 4: Θύρα DB25

Θύρα DB25
Θύρα DB25
Θύρα DB25
Θύρα DB25

Το DB25 είναι ο προσδιορισμός μιας παράλληλης θύρας. Από όσο γνωρίζω, είναι συνώνυμα. Θέλετε το αρσενικό μέρος, καθώς το comp σας έχει θηλυκό βύσμα.

Μπορείτε να το κολλήσετε στην άκρη της κάρτας, προς το παρόν. Οχι περίμενε! Το κόλλησες πολύ σύντομα! Κάντε πρώτα τις καρφίτσες 18-25 κοινές, καθώς θα είναι κοινές καρφίτσες. Ω.. είναι εντάξει, γιατί η κάρτα μπορεί να λυγίσει. Στην πραγματικότητα, ένας καλύτερος τρόπος για να κάνετε αυτό το μέρος είναι να σκύψετε κάθε καρφίτσα στο γείτονά σας και στη συνέχεια να τις κολλήσετε. Προσπαθώ απλώς να εξηγήσω πώς πρέπει να πάνε οι συνδέσεις.

Βήμα 5: Συνδέσεις DB 25

Συνδέσεις DB 25
Συνδέσεις DB 25
Συνδέσεις DB 25
Συνδέσεις DB 25

Εντάξει. Η καρφίτσα 2 της θύρας DB25 είναι η ακίδα εξαγωγής δεδομένων. Συνδέστε το με την αντίσταση βάσης "data out". Το τελικό αποτέλεσμα: όταν αυτός ο πείρος ανέβει ψηλά, ο πείρος RB7/δεδομένων της εικόνας θα λάβει χαμηλό σήμα..

Η καρφίτσα 3 είναι η ακίδα ρολογιού. Συνδέστε το με την αντίσταση βάσης "ρολόι έξω". Εικόνα 2: η καρφίτσα 10 είναι η καρφίτσα δεδομένων IN. Συνδέστε το με την αντίσταση έλξης του τρανζίστορ "data in", όπως φαίνεται στους μπλε κύκλους. Το pin 5 είναι ο πείρος τάσης προγραμματισμού ή ο πείρος Vpp. Δείτε το βήμα 8. Θα χρειαστεί να προσθέσετε ένα τέταρτο τρανζίστορ npn και να συνδέσετε αυτήν τη γραμμή με την αντίσταση βάσης. Ο συλλέκτης του τρανζίστορ θα συνδεθεί με την αντίσταση βάσης 5k του τρανζίστορ pnp. Ο πομπός θα συνδεθεί με το επίπεδο γείωσης.

Βήμα 6: Πλευρά θύρας ICSP

Πλευρά θύρας ICSP
Πλευρά θύρας ICSP

Κατά τη ρύθμισή μου, επέλεξα να κάνω το ρολόι κάτω, τα δεδομένα πάνω και τη γείωση, Vdd και Vpp ενδιάμεσα. Αυτό είναι εντελώς αυθαίρετο.

Ο ακροδέκτης δεδομένων ICSP θα συνδέσει ΚΑΙ ΤΗΝ αντίσταση τράβηγμα για το τρανς "εξόδου δεδομένων" ΚΑΙ στη βασική αντίσταση του τρανς "δεδομένων σε". ΜΠΛΕ κύκλοι ** ΕΠΕΞΕΡΓΑΣΙΑ: τραβήξτε τα δεδομένα προς τα έξω είτε με αντίσταση 1k, είτε και με τα υπόλοιπα 5 τραβήγματα 10k στο δίκτυο αντιστάσεων. Η χρήση μόνο μιας αντίστασης 10k θα προκαλέσει τη διαίρεση υψηλού σήματος δεδομένων σε 2,5V. Αυτό δεν θα καταχωρηθεί τόσο ψηλά, καθώς τα μέρη CMOS που λειτουργούν στα 5V χρειάζονται περίπου 3,5V για να εγγραφούν σε υψηλό επίπεδο. Ο πείρος Vpp θα συνδεθεί με τον συλλέκτη του τρανζίστορ PNP. Ο πείρος Vdd θα συνδεθεί με τον πείρο αντίστασης δικτύου σας 1. ΠΟΡΤΟΚΑΛΙ κύκλοι Εάν θέλετε να ενεργοποιήσετε/απενεργοποιήσετε τον προγραμματιστή, τοποθετήστε τον ανάμεσα σε αυτά τα σημεία. Ο πείρος γείωσης θα συνδεθεί κάπου στη λωρίδα γείωσης. Ο πείρος του ρολογιού θα συνδεθεί με την αντίσταση έλξης του τρανζίστορ "ρολόι εξόδου". ΚΙΤΡΙΝΟΙ κύκλοι

Βήμα 7: Νέες εικόνες… Ολοκληρώθηκαν και δοκιμάστηκαν

Νέες εικόνες… Ολοκληρώθηκαν και δοκιμάστηκαν
Νέες εικόνες… Ολοκληρώθηκαν και δοκιμάστηκαν
Νέες εικόνες… Ολοκληρώθηκαν και δοκιμάστηκαν
Νέες εικόνες… Ολοκληρώθηκαν και δοκιμάστηκαν
Νέες εικόνες… Ολοκληρώθηκαν και δοκιμάστηκαν
Νέες εικόνες… Ολοκληρώθηκαν και δοκιμάστηκαν
Νέες εικόνες… Ολοκληρώθηκαν και δοκιμάστηκαν
Νέες εικόνες… Ολοκληρώθηκαν και δοκιμάστηκαν

Εδώ είναι ο τελειωμένος προγραμματιστής. Δεν μπορείτε να πείτε στην εικόνα, αλλά έκοψα ένα κομμάτι πρόχειρο στο σωστό μέγεθος και χρησιμοποίησα το Elmer για να κολλήσω την κάρτα στον πίνακα.

Έβγαλα την οθόνη LCD για μια γρήγορη δοκιμή. Διαβάζει, γράφει, σβήνει. Τι άλλο μπορείτε να ζητήσετε; Ελέγξτε τις φωτογραφίες για ένα στιγμιότυπο οθόνης του τρόπου ρύθμισης λογισμικών προγραμματισμού ICProg ή PICPgm. Ελέγξτε επίσης το βήμα 8 για λεπτομέρειες για μερικά διορθωτικά μέτρα που εμφανίζονται εδώ. Πρόσθεσα δύο lm317 για 5V και τάση προγραμματισμού.

Βήμα 8: Διόρθωση !

Διόρθωση!!!
Διόρθωση!!!
Διόρθωση!!!
Διόρθωση!!!

Ιδού η διόρθωση. Ωχ… ενημέρωση. Δείτε την επόμενη φωτογραφία.

Θα πρέπει να έχετε ένα άλλο τρανζίστορ npn για να αποθηκεύσετε τη θύρα από τις δυνητικά επικίνδυνες τάσεις στη βάση του pnp. Αυτό απεικονίζεται πάνω αριστερά. Ο συλλέκτης δεν προσαρτάται σε αντίσταση έλξης. Η βάση pnp έχει ήδη τραβηχτεί μέχρι Vpp. Ο εκπομπός είναι γειωμένος. Ο συλλέκτης συνδέεται με την αντίσταση βάσης 5k του τρανζίστορ pnp. Δείχνω επίσης την αντίσταση έλξης 10k που παρέλειψα νωρίτερα. Ακόμα δεν ξέρω σε τι χρησιμεύει, όμως.:) Επειδή κάνετε προσωρινή αποθήκευση με τη χρήση μετατροπέων, όταν χρησιμοποιείτε συμβατό λογισμικό προγραμματισμού TAIT, θα πρέπει να μεταβείτε στις ρυθμίσεις προγραμματιστή και να αντιστρέψετε το ρολόι, τα δεδομένα και τα δεδομένα. Επειδή αντιστρέψετε διπλά τη γραμμή Vpp, θα το αφήσεις μόνο του. FYI, το αρχικό TAIT χρησιμοποιεί το DB25 pin 4 για τον έλεγχο του Vdd. Δεν μου αρέσει αυτό, γιατί τότε δεν μπορείτε να εκτελέσετε την εικόνα σας από την πηγή τροφοδοσίας του προγραμματιστή. Έχω προσθέσει ένα χειροκίνητο διακόπτη σε μερικούς άλλους προγραμματιστές μου, αλλά δεν χρησιμοποιείται ποτέ. Γιατί θα πηγαίνατε πίσω από τον υπολογιστή σας για να ενεργοποιήσετε/απενεργοποιήσετε το κύκλωμά σας; Προσθέτω απλώς έναν διακόπτη στο breadboard/κύκλωμά μου για έλεγχο Vdd. Πρέπει να αποσυνδέσετε το ρεύμα ή το καλώδιο icsp όταν δεν το χρησιμοποιείτε, ωστόσο, για να αποφύγετε βραχυκύκλωμα ρεύματος και γείωσης.

Βήμα 9: Σχήμα, χρήση μπαταρίας 9V! και μια Gratuitous Kitty Photo:)

Schemmy, χρησιμοποιώντας μπαταρία 9V! και μια Gratuitous Kitty Photo:)
Schemmy, χρησιμοποιώντας μπαταρία 9V! και μια Gratuitous Kitty Photo:)
Schemmy, χρησιμοποιώντας μπαταρία 9V! και μια Gratuitous Kitty Photo:)
Schemmy, χρησιμοποιώντας μπαταρία 9V! και μια Gratuitous Kitty Photo:)

Εικόνα 1: Απλώς προσθέστε έναν διακόπτη ενεργοποίησης/απενεργοποίησης στην μπαταρία και αυτός ο προγραμματιστής είναι έτοιμος. Εάν το κύκλωμά σας αντλεί περισσότερη ισχύ από ό, τι μπορεί να χειριστεί η wimpy μπαταρία, προσθέστε διαφορετικό τροφοδοτικό μεταξύ 9 και 12,5V (ελέγξτε αν με πολύμετρο! 12V χωρίς ρύθμιση σημαίνει συνήθως 18-20V υπό χαμηλή κατανάλωση - και θα σκοτώσει την εικόνα σας). Εάν ο κοντινότερος κονδυλώματος τοίχου σας δίνει περισσότερο από 12,5V, τότε θα πρέπει να προσθέσετε έναν άλλο ρυθμιστή τάσης.

OR θα μπορούσατε να αφήσετε τη μπαταρία 9V συνδεδεμένη στο τρανζίστορ pnp, αλλά να την αποσυνδέσετε από το 7805. Στη συνέχεια, εισαγάγετε την εξωτερική πηγή ισχύος, μικρότερη από 35V, στο 7805. Λοιπόν, τώρα που καταλαβαίνετε πώς λειτουργεί ο προγραμματιστής (ναι, σωστά;), μπορείτε να το τροποποιήσετε με όποιον τρόπο θέλετε από εδώ. Η προσθήκη κάποιων ενδεικτικών λυχνιών LED μπορεί να είναι ωραία; Εικόνα 2: Στρουμφί. Σσσς, κοιμάται.

Συνιστάται: