Φτιάξτο μόνος σου καθολικός προγραμματιστής τσιπ USB. Universal USB προγραμματιστής

Ο προγραμματιστής είναι μια συσκευή υλικού-λογισμικού που χρησιμοποιείται για την ανάγνωση ή την εγγραφή πληροφοριών σε μια συσκευή αποθήκευσης (εσωτερικοί μικροελεγκτές). Εάν ένας ραδιοερασιτέχνης χρειάζεται να προγραμματίσει μια συσκευή μικροελεγκτή μία φορά, μπορείτε να χρησιμοποιήσετε έναν συμβατικό προγραμματιστή που συνδέεται σε θύρα COM ή LPT. Για παράδειγμα, ο απλούστερος προγραμματιστής AVR είναι ένα καλώδιο 6 και 4 αντιστάσεων (προγραμματιστής PonyProg).

Χρησιμοποιώντας έναν κανονικό προγραμματιστή, μπορείτε να φορτώσετε hex προγράμματα σε πολλούς μικροελεγκτές AVR χωρίς να χάνετε επιπλέον χρόνο και χρήματα. Επιπλέον, ο προγραμματιστής μπορεί να χρησιμοποιηθεί ως προγραμματιστής εντός κυκλώματος, ώστε να μπορείτε να προγραμματίσετε τον μικροελεγκτή AVR χωρίς να τον αφαιρέσετε από τη συσκευή.

Τέτοιοι προγραμματιστές συνδέονται με τον υπολογιστή χρησιμοποιώντας ένα ειδικό πρόγραμμα (που ονομάζεται επίσης προγραμματιστής). Εκπέμπει από και η συσκευή το γράφει μόνο στη μνήμη του τσιπ. Οι προγραμματιστές μπορούν να συνδεθούν μέσω σειριακής ή παράλληλης θύρας, μέσω υποδοχής USB κ.λπ. Οι σύγχρονοι προγραμματιστές συνδέονται συνήθως μέσω USB.

Ο προγραμματιστής USB έχει σχεδιαστεί για τον προγραμματισμό συσκευών μικροεπεξεργαστή μιας συγκεκριμένης εταιρείας (ανάλογα με τη μάρκα του προγραμματιστή) σε συναρμολογημένη μορφή. Απλοποιεί σημαντικά τη διαδικασία εγκατάστασης του λογισμικού.

Πώς να συνδέσετε έναν προγραμματιστή USB;

Για να χρησιμοποιήσετε τη συσκευή, πρέπει να τη συνδέσετε σε μία από τις θύρες USB του υπολογιστή σας. Μετά από αυτό, στον υπολογιστή θα εμφανιστεί ένα μήνυμα σχετικά με τη σύνδεση μιας νέας συσκευής USBasp USB και η λυχνία LED στον ίδιο τον προγραμματιστή θα ανάψει, πράγμα που σημαίνει ότι η συσκευή έχει συνδεθεί με επιτυχία.

Στη συνέχεια, πρέπει να εγκαταστήσετε προγράμματα οδήγησης, ώστε το λειτουργικό σύστημα να λειτουργεί σωστά με αυτήν τη συσκευή. Μετά από αυτό, μπορείτε να συνδέσετε τη συσκευή μικροεπεξεργαστή στη διεπαφή ISP. Κατά τη διάρκεια του προγραμματισμού, το δεύτερο LED θα ανάψει.

Κατά κανόνα, ο προγραμματιστής έχει δύο διεπαφές - μία για τη σύνδεση ενός μικροελεγκτή, η δεύτερη για τη σύνδεση με έναν υπολογιστή. Για να συνδέσετε τον μικροελεγκτή, μπορείτε να χρησιμοποιήσετε τη λειτουργία σειριακού προγραμματισμού ISP. Αυτή η συσκευή συνδέεται με έναν υπολογιστή μέσω μιας τυπικής υποδοχής USB.

Για να ελέγξετε τον προγραμματιστή, πρέπει να εγκαταστήσετε ειδικά προγράμματα. Είναι καλύτερο να χρησιμοποιείτε εφαρμογές με παράθυρο. Για παράδειγμα, για να εργαστείτε με τη συσκευή μπορείτε να χρησιμοποιήσετε τα ExtremeBurner, Khazama, avrguge και άλλα.

Αυτός ο προγραμματιστής δεν απαιτεί αρχικό προγραμματισμό - χαράσσετε την πλακέτα τυπωμένου κυκλώματος, τη συγκολλάτε και τη χρησιμοποιείτε. Ο συγγραφέας αυτής της συσκευής αναφέρεται στο τέλος του άρθρου, αλλά εδώ θα δώσω ένα σύντομο απόσπασμα από το εγχειρίδιο για να γίνει πιο σαφές για τι μιλάμε: ο σωστός προγραμματιστής USB είναι, στην πραγματικότητα, ένα καθολικό πράγμα. Μπορείτε να το συνδέσετε σε οποιονδήποτε σύγχρονο υπολογιστή και να ενημερώσετε εύκολα τον επιθυμητό μικροελεγκτή με οποιαδήποτε ποσότητα μνήμης FLASH σε αρκετά υψηλή ταχύτητα. Αλλά η λέξη κλειδί εδώ είναι το «σωστό», το οποίο λειτουργεί κανονικά χωρίς να κουρδίζεις και να χορεύεις με ένα ντέφι από πάνω του αμέσως μετά την εγκατάσταση και τη συναρμολόγηση των εξαρτημάτων. Το οποίο δεν παρουσιάζει πρόβλημα κατά τη μετακίνηση από έναν υπολογιστή σε άλλο ή την αλλαγή λειτουργικού συστήματος. Το σωστό είναι αυτό για το οποίο υπάρχουν προγράμματα οδήγησης για οποιαδήποτε σύγχρονη ευρέως χρησιμοποιούμενη έκδοση του λειτουργικού συστήματος και αυτά τα προγράμματα οδήγησης δεν είναι buggy. Ο καθένας θα καθορίσει μια ντουζίνα ακόμη κριτήρια ορθότητας για τον εαυτό του προσωπικά, αλλά τα παραπάνω είναι τα κύρια, χωρίς τα οποία θα είναι αδύνατο να εργαστείτε κανονικά με τον μικροελεγκτή κατ 'αρχήν.

Επί του παρόντος, το Διαδίκτυο είναι γεμάτο από διάφορα κυκλώματα προγραμματιστή USB για AVR. Συμβατικά, μπορούν να χωριστούν σε δύο μεγάλες ομάδες.

Πρώτη ομάδαπεριλαμβάνει προγραμματιστές κατασκευασμένους με βάση μικροελεγκτές (ιδίως AVR). Μάζεψα αρκετά κομμάτια προγραμματιστών από την Prottoss (AVR910), για μένα και τους φίλους μου, καθώς και αρκετά κομμάτια USBasp. Δύο από τους φίλους μου, προικισμένοι με αυτές τις συσκευές, είναι ενθουσιασμένοι. Εδώ και αρκετά χρόνια ράβουν με επιτυχία πέτρες. Για άλλους (συγκεκριμένα, για μένα προσωπικά), οι συναρμολογημένοι προγραμματιστές δεν προκάλεσαν μεγάλη χαρά. Δεν λέω ότι είναι κακοί, απλώς οι συνθήκες ήταν έτσι: λειτουργεί στον έναν υπολογιστή, αλλά όχι στον άλλο. Ή, αφού δούλεψαν για μερικές ώρες, αποδείχτηκαν αόρατα στο λογισμικό μέσω του οποίου ράβεται η πέτρα. Και πολλα ΑΚΟΜΑ. Επιτρέψτε μου να πω αμέσως ότι δεν κατάλαβα το υλικολογισμικό των ελεγκτών στους οποίους συναρμολογούνται αυτοί οι προγραμματιστές. Είναι αλήθεια ότι δοκίμασα ένα σωρό προγράμματα που αναβοσβήνουν, μέσω των οποίων αυτοί οι προγραμματιστές φαίνεται ότι μπορούν να ράψουν πέτρες χωρίς κανένα πρόβλημα. Ωστόσο, το αποτέλεσμα με τη μορφή συχνών δυσλειτουργιών δεν με ικανοποίησε ιδιαίτερα. Η μόνη εξαίρεση ήταν το πρόγραμμα AVRDUDE σε συνδυασμό με το γραφικό κέλυφος SinaProg, αλλά το έμαθα πολύ αργά. Παρεμπιπτόντως, παρατήρησα αυτή την τάση: όσο πιο παλιό είναι το υλικό του υπολογιστή, τόσο καλύτερα λειτουργούν αυτοί οι προγραμματιστές. Λοιπόν, η πιο δυσάρεστη στιγμή για όσους επέλεξαν τη δεύτερη επιλογή της εξοικείωσης με τους μικροελεγκτές AVR είναι ότι για να λειτουργήσει ο προγραμματιστής, πρέπει να αναβοσβήσετε την πέτρα που περιλαμβάνεται σε αυτό με κάτι. Δηλαδή, αποδεικνύεται έτσι: για να χρησιμοποιήσετε τον προγραμματιστή, πρέπει να φτιάξετε/βρείτε έναν προγραμματιστή για να αναβοσβήσετε τα μυαλά αυτού του προγραμματιστή. Αυτός είναι ένας τόσο φαύλος κύκλος.

Και η δεύτερη ομάδαΟι προγραμματιστές USB περιλαμβάνουν μια λύση που βασίζεται σε ένα εξειδικευμένο τσιπ FT232Rx. Κάποτε, αυτό το μικροκύκλωμα έγινε ένα είδος επανάστασης. Όχι μόνο μετατρέπει το USB σε UART χωρίς προβλήματα για τον προγραμματιστή (και, πιθανώς, το 95% των προγραμματιστών το χρησιμοποιεί ακριβώς για αυτόν τον σκοπό). Μπορεί επίσης να μιμηθεί μια πλήρη θύρα COM και η κατάσταση των "μικρών" γραμμών (όπως RTS, CTS, DTR, κ.λπ.) μπορεί να οριστεί/διαβαστεί όχι από μια εικονική θύρα COM, αλλά απευθείας μέσω του προγράμματος οδήγησης FTDI ( αναπτύχθηκε από την FT232Rx). Έτσι, εμφανίστηκε μια νέα λύση για μικροελεγκτές που αναβοσβήνουν, χωρίς να απαιτείται αρχικό υλικολογισμικό του εγκεφάλου του προγραμματιστή, και είναι αρκετά γρήγορη.

Σχηματικό διάγραμμα προγραμματιστή USB

Αυτό το κύκλωμα απλώς κατευθύνει τα σήματα MOSI, MISO, SCK και RESET, τα οποία παράγονται στις ακίδες DCD, DTR, RTS και DSR του τσιπ DD1 (FT232RL), αντίστοιχα, στις επιθυμητές ακίδες του μικροελεγκτή που αναβοσβήνει (δηλ. είναι στην πραγματικότητα ένα ανάλογο των «αρχαίων» προγραμματιστών) . Επιπλέον, αυτό το κάνει μόνο τη στιγμή του προγραμματισμού της πέτρας, άλλες φορές ο προγραμματιστής αποσυνδέεται από την πλακέτα που αναβοσβήνει λόγω των 4 στοιχείων buffer του τσιπ DD2 (74HC125D). Η κατάσταση των γραμμών MOSI, MISO, SCK και RESET ρυθμίζεται/διαβάζεται από το λογισμικό υλικολογισμικού στον υπολογιστή. Η μεταφορά δεδομένων μεταξύ του υπολογιστή και του τσιπ FT232RL πραγματοποιείται μέσω του διαύλου USB (από τον οποίο τροφοδοτείται επίσης ο προγραμματιστής).

Η λυχνία LED HL2 ("PWR") σηματοδοτεί ότι ο προγραμματιστής λαμβάνει ρεύμα από το δίαυλο USB. Η λυχνία LED HL1 ("PROG") υποδεικνύει τη διαδικασία αναβοσβήνει ο μικροελεγκτής (ανάβει μόνο όταν αναβοσβήνει). Αυτή, καταρχήν, είναι ολόκληρη η περιγραφή του ίδιου του διαγράμματος ηλεκτρικού κυκλώματος. Το μόνο πράγμα που θα ήθελα να σημειώσω είναι: πρώτον, για τη σύνδεση του προγραμματιστή στην πλακέτα που αναβοσβήνει, χρησιμοποιείται ένας σύνδεσμος IDC-10MR (XP2 "ISP"), το pinout του οποίου συμπίπτει με το εκτεταμένο pinout του συνδετήρα του προγραμματιστή
STK200/STK300:

Υποδοχή XP2 "ISP" για σύνδεση της συσκευής σε προγραμματιζόμενο μικροελεγκτή

Υποδοχή XP3 "MISC" για χρήση πρόσθετων λειτουργιών προγραμματιστή

Γενικά, το τσιπ FT232RL έχει αρκετά σοβαρές δυνατότητες για προγραμματιστή (για παράδειγμα, οι γραμμές διαύλου CBUS μπορούν να χρησιμοποιηθούν ως κανονικές γραμμές εισόδου/εξόδου μικροελεγκτή), επομένως θα ήταν ωραίο να έχετε πρόσβαση σε όλες τις ακίδες του. Λοιπόν, η πρόσβαση σε τάσεις +5,0 V και +3,3 V δεν θα είναι ποτέ περιττή. Επισυνάπτεται μια πλακέτα τυπωμένου κυκλώματος και μια πλήρης λεπτομερής περιγραφή. Ανάπτυξη και εγχειρίδιο - [email προστατευμένο] , δίκη - SssaHeKkk.

Σε αυτό το άρθρο θα περιγράψουμε τα στάδια κατασκευής βήμα προς βήμα. Προγραμματιστής USBasp για μικροελεγκτές AVR. Σε ξεχωριστά άρθρα θα παρέχουμε μια περιγραφή της εγκατάστασης προγραμμάτων οδήγησης για τα λειτουργικά συστήματα Windows XP και Windows 7 (x64/x86). Στο τέλος της ανάρτησης υπάρχει ένας σύνδεσμος με την απαραίτητη τεκμηρίωση για την κατασκευή ενός προγραμματιστή USBasp με τα χέρια σας.

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

Κύρια χαρακτηριστικά του προγραμματιστή USBasp

  • Λειτουργεί με πολλά λειτουργικά συστήματα - Linux, Mac OS X και Windows - συμπεριλαμβανομένων των Windows 8!
  • Δεν απαιτεί εξωτερική τροφοδοσία.
  • Μπορεί να προγραμματίσει σε ταχύτητες έως 5 kB/s
  • Υπάρχει μια επιλογή (διακόπτης 2) για μείωση της ταχύτητας προγραμματισμού - για επεξεργαστές με χαλαζία μικρότερο από 1,5 MHz
  • Παρέχει τάση προγραμματισμού (Διακόπτης 1) 5 βολτ
  • Υποδεικνύει τη λειτουργία του προγραμματιστή με χρήση LED

Πριν ξεκινήσετε την εργασία, αξίζει να εξοικειωθείτε με τη σειρά όλων των ενεργειών που εκτελούνται, και συγκεκριμένα:

  1. Επιλογή σχεδίου/μοτίβου πλακέτας κυκλώματος
  2. Μεταφορά του σχεδίου της πλακέτας τυπωμένου κυκλώματος σε φύλλο υαλοβάμβακα
  3. Χάραξη πλακέτας τυπωμένου κυκλώματος σε διάλυμα χλωριούχου σιδήρου
  4. Διάνοιξη οπών
  5. Τοποθέτηση στοιχείων (συγκόλληση)
  6. Προγραμματισμός προγραμματιστής Atmaga8
  7. Σύνδεση του προγραμματιστή σε υπολογιστή
  8. Εγκατάσταση προγραμμάτων οδήγησης – Windows XP, Windows 7
  9. Επιλογή προγράμματος που υποστηρίζει USBasp

Υπάρχουν πολλές εκδόσεις του προγραμματιστή USBasp, αλλά όλες βασίζονται στο κύριο κύκλωμα, με συγγραφέα τον Thomas Fischl. Το υλικολογισμικό του προγραμματιστή μικροελεγκτή είναι επίσης η συγγραφή του.

Αρχικό κύκλωμα προγραμματιστή:

Σε αυτή την περίπτωση, το αρχικό σχήμα επιλέχθηκε ως βάση. Δεδομένου ότι η χρήση βραχυκυκλωτικών στο αρχικό κύκλωμα δεν είναι απολύτως βολική, αποφασίστηκε να χρησιμοποιηθούν διακόπτες DIP. Ορισμένες τιμές αντίστασης άλλαξαν επίσης.
Επιπλέον, στο αρχικό κύκλωμα, οι γραμμές TxD και RxD δρομολογούνται στην υποδοχή ISP, αν και αυτό δεν είναι απαραίτητο (ακριβέστερα, δεν χρησιμοποιούνται στην πράξη).

Ακολουθεί ένα διάγραμμα με τις αλλαγές που έγιναν:

Κατασκευή προγραμματιστή USBasp

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

Δυστυχώς, λόγω της χρήσης διακοπτών DIP, ο σχεδιασμός της πλακέτας έγινε λίγο πιο περίπλοκος, γεγονός που οδήγησε στη χρήση 2 βραχυκυκλωτών για να διασφαλιστεί ότι το PCB ήταν ακόμα μονής όψης.

Παρακάτω είναι το αποτέλεσμα του PCB:

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

Λίστα στοιχείων που χρησιμοποιούνται στον προγραμματιστή USBasp:

  • R1: 10 χιλ
  • R2: 180
  • R3: 100
  • R5, R6: 68
  • R7: 2k2
  • C1, C2: 22p
  • Γ3: 10μ
  • C4: 100n
  • LED1: Κόκκινο LED 20mA
  • LED2: Πράσινο LED στα 20mA
  • D2, D3: δίοδοι zener στα 3,6V
  • X1: Υποδοχή USB τύπου Β
  • SV1: υποδοχή IDC-10
  • Q1: Quartz 12MHz, σώμα HC49-S
  • SW1: Διακόπτης βύθισης σε τρεις θέσεις
  • IC1: Atmega8 ( ΣΗΜΕΙΩΣΗ: Ο μικροελεγκτής Atmega8 - PU δεν πρέπει να χρησιμοποιείται λόγω του περιορισμού της μέγιστης ταχύτητας ρολογιού στα 8 MHz!)

Το σχέδιο της πλακέτας τυπωμένου κυκλώματος προγραμματιστή USBasp μεταφέρθηκε σε laminate από υαλοβάμβακα χρησιμοποιώντας τη μέθοδο LUT (). Δεν θα περιγράψουμε πώς να το κάνουμε αυτό, καθώς υπάρχουν πολλές από αυτές τις πληροφορίες στο Διαδίκτυο.

Ας πούμε εν συντομία ότι πρώτα ένα σχέδιο σε κλίμακα 1:1 τυπώνεται σε γυαλιστερό χαρτί, μετά εφαρμόζεται στην καθαρισμένη και απολιπανθείσα χάλκινη πλευρά του πολυστρωματικού υλικού από υαλοβάμβακα και στερεώνεται με χαρτοταινία. Στη συνέχεια, η πλευρά του χαρτιού λειαίνεται προσεκτικά με ένα σίδερο χρησιμοποιώντας ένα σίδερο 3 σημείων. Στη συνέχεια, το όλο πράγμα μουλιάζεται σε νερό και καθαρίζεται προσεκτικά από χαρτί.

Το επόμενο βήμα είναι η χάραξη της σανίδας σε διάλυμα χλωριούχου σιδήρου. Κατά τη χάραξη, είναι επιθυμητό να διατηρείται η θερμοκρασία του διαλύματος τουλάχιστον 40 C, επομένως βυθίστε το βάζο με το διάλυμα σε ζεστό νερό:


Αφού ολοκληρωθεί η διαδικασία χάραξης, πρέπει να αφαιρέσετε το τόνερ με ασετόν.

Το μόνο που μένει τώρα είναι να ανοίξουμε τις τρύπες. Αφού ολοκληρώσετε τη διαδικασία κατασκευής της πλακέτας, μπορείτε να ξεκινήσετε τη συγκόλληση των στοιχείων προγραμματιστή USBasp, ξεκινώντας από τους βραχυκυκλωτήρες.

Ένα σχέδιο PCB έτοιμο για εκτύπωση (σε μορφή PDF) βρίσκεται στο τέλος του άρθρου. Μπορείτε επίσης να βρείτε πολλές επιλογές στον επίσημο ιστότοπο του έργου.

Πρώτη κυκλοφορία του προγραμματιστή USBasp

Τώρα που όλα τα εξαρτήματα έχουν συγκολληθεί, το μόνο που μένει είναι να «φλασάρει» ο μικροελεγκτής Atmegę8 του ίδιου του προγραμματιστή. Για αυτό χρειάζεστε έναν ξεχωριστό προγραμματιστή, θα μπορούσε να είναι, για παράδειγμα, STK 200 (θύρα LPT), STK500, κ.λπ. Ο προγραμματιστής LPT συνδέεται στο USBasp μέσω της υποδοχής IDC-10.

Λάβετε υπόψη ότι η κατανομή των ακίδων στην υποδοχή του αρχικού προγραμματιστή (USBasp) βρίσκεται στα δεξιά, ενώ στην έκδοση που περιγράφεται σε αυτό το άρθρο βρίσκεται στα αριστερά:

Η κατανομή που φαίνεται στο σχήμα στα δεξιά αντιστοιχεί σε αυτές που χρησιμοποιεί η Atmel στους αρχικούς προγραμματιστές της. Αυτή η κατανομή μειώνει τον κίνδυνο παρεμβολής κατά τον προγραμματισμό στην περίπτωση μακριών καλωδίων από τον προγραμματιστή στον ελεγκτή, καθώς κάθε γραμμή σήματος είναι θωρακισμένη με γείωση, εκτός από το MOSI.

Κατά τη διάρκεια του προγραμματισμού, ενεργοποιήστε τη λειτουργία SELF στρέφοντας το διακόπτη DIP No. 3 στη θέση ON. Χάρη σε αυτό, καθίσταται δυνατός ο προγραμματισμός του Atmega8. Αφού ολοκληρωθεί ο προγραμματισμός, η θέση του διακόπτη (3) πρέπει να τεθεί στο OFF.

Μπορείτε να κατεβάσετε την πιο πρόσφατη έκδοση υλικολογισμικού από τον επίσημο ιστότοπο. Προτείνουμε την έκδοση για το Atmega8, η οποία βρίσκεται στο αρχείο: usbasp.2011-05-28.tar.gz.

Σημειώστε ότι πριν προγραμματίσετε το Atmega8 πρέπει να ρυθμίσετε τις ασφάλειες που έχουν τις ακόλουθες τιμές:

  • # για Atmega8: HFUSE=0xC9 LFUSE=0xEF
  • # για Atmega48: HFUSE=0xDD LFUSE=0xFF

Εάν ο προγραμματισμός είναι επιτυχής, συνδέστε τον προγραμματιστή στην υποδοχή USB του υπολογιστή, η κόκκινη λυχνία LED θα πρέπει να ανάψει και ο υπολογιστής θα πρέπει να ειδοποιήσει ότι έχει εντοπιστεί νέος εξοπλισμός.

Εγκατάσταση προγραμμάτων οδήγησης προγραμματιστή USBasp

Η μέθοδος εγκατάστασης προγραμμάτων οδήγησης προγραμματιστή περιγράφεται σε ξεχωριστά άρθρα και τα ίδια τα προγράμματα οδήγησης είναι επίσης διαθέσιμα εκεί. Παρακάτω είναι άμεσοι σύνδεσμοι σε αυτά τα άρθρα:

  • Εγκατάσταση προγραμμάτων οδήγησης για τον προγραμματιστή USBasp στα Windows XP
  • Εγκατάσταση προγραμμάτων οδήγησης για προγραμματιστή USBasp Windows 7 x64/x86

Προγράμματα για τη λειτουργία του προγραμματιστή USBasp

Το πιο δημοφιλές πρόγραμμα που υποστηρίζει τον προγραμματιστή USBasp είναι το πρόγραμμα κονσόλας AVRdude. Υπάρχουν επίσης πολλά παράγωγα προγράμματα, η χρήση των οποίων είναι πολύ πιο βολική. Παρουσιάζονται στο άρθρο Σύγκριση προγραμμάτων για την υποστήριξη του προγραμματιστή USBasp.

Αυτός ο προγραμματιστής δεν απαιτεί αρχικό προγραμματισμό - χαράσσετε την πλακέτα τυπωμένου κυκλώματος, τη συγκολλάτε και τη χρησιμοποιείτε. Ο συγγραφέας αυτής της συσκευής αναφέρεται στο τέλος του άρθρου, αλλά εδώ θα δώσω ένα σύντομο απόσπασμα από το εγχειρίδιο για να γίνει πιο σαφές για τι μιλάμε: ο σωστός προγραμματιστής USB είναι, στην πραγματικότητα, ένα καθολικό πράγμα. Μπορείτε να το συνδέσετε σε οποιονδήποτε σύγχρονο υπολογιστή και να ενημερώσετε εύκολα τον επιθυμητό μικροελεγκτή με οποιαδήποτε ποσότητα μνήμης FLASH σε αρκετά υψηλή ταχύτητα. Αλλά η λέξη κλειδί εδώ είναι το «σωστό», το οποίο λειτουργεί κανονικά χωρίς να κουρδίζεις και να χορεύεις με ένα ντέφι από πάνω του αμέσως μετά την εγκατάσταση και τη συναρμολόγηση των εξαρτημάτων. Το οποίο δεν παρουσιάζει πρόβλημα κατά τη μετακίνηση από έναν υπολογιστή σε άλλο ή την αλλαγή λειτουργικού συστήματος. Το σωστό είναι αυτό για το οποίο υπάρχουν προγράμματα οδήγησης για οποιαδήποτε σύγχρονη ευρέως χρησιμοποιούμενη έκδοση του λειτουργικού συστήματος και αυτά τα προγράμματα οδήγησης δεν είναι buggy. Ο καθένας θα καθορίσει μια ντουζίνα ακόμη κριτήρια ορθότητας για τον εαυτό του προσωπικά, αλλά τα παραπάνω είναι τα κύρια, χωρίς τα οποία θα είναι αδύνατο να εργαστείτε κανονικά με τον μικροελεγκτή κατ 'αρχήν.

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

Πρώτη ομάδαπεριλαμβάνει προγραμματιστές κατασκευασμένους με βάση μικροελεγκτές (ιδίως AVR). Μάζεψα αρκετά κομμάτια προγραμματιστών από την Prottoss (AVR910), για μένα και τους φίλους μου, καθώς και αρκετά κομμάτια USBasp. Δύο από τους φίλους μου, προικισμένοι με αυτές τις συσκευές, είναι ενθουσιασμένοι. Εδώ και αρκετά χρόνια ράβουν με επιτυχία πέτρες. Για άλλους (συγκεκριμένα, για μένα προσωπικά), οι συναρμολογημένοι προγραμματιστές δεν προκάλεσαν μεγάλη χαρά. Δεν λέω ότι είναι κακοί, απλώς οι συνθήκες ήταν έτσι: λειτουργεί στον έναν υπολογιστή, αλλά όχι στον άλλο. Ή, αφού δούλεψαν για μερικές ώρες, αποδείχτηκαν αόρατα στο λογισμικό μέσω του οποίου ράβεται η πέτρα. Και πολλα ΑΚΟΜΑ. Επιτρέψτε μου να πω αμέσως ότι δεν κατάλαβα το υλικολογισμικό των ελεγκτών στους οποίους συναρμολογούνται αυτοί οι προγραμματιστές. Είναι αλήθεια ότι δοκίμασα ένα σωρό προγράμματα που αναβοσβήνουν, μέσω των οποίων αυτοί οι προγραμματιστές φαίνεται ότι μπορούν να ράψουν πέτρες χωρίς κανένα πρόβλημα. Ωστόσο, το αποτέλεσμα με τη μορφή συχνών δυσλειτουργιών δεν με ικανοποίησε ιδιαίτερα. Η μόνη εξαίρεση ήταν το πρόγραμμα AVRDUDE σε συνδυασμό με το γραφικό κέλυφος SinaProg, αλλά το έμαθα πολύ αργά. Παρεμπιπτόντως, παρατήρησα αυτή την τάση: όσο πιο παλιό είναι το υλικό του υπολογιστή, τόσο καλύτερα λειτουργούν αυτοί οι προγραμματιστές. Λοιπόν, η πιο δυσάρεστη στιγμή για όσους επέλεξαν τη δεύτερη επιλογή της εξοικείωσης με τους μικροελεγκτές AVR είναι ότι για να λειτουργήσει ο προγραμματιστής, πρέπει να αναβοσβήσετε την πέτρα που περιλαμβάνεται σε αυτό με κάτι. Δηλαδή, αποδεικνύεται έτσι: για να χρησιμοποιήσετε τον προγραμματιστή, πρέπει να φτιάξετε/βρείτε έναν προγραμματιστή για να αναβοσβήσετε τα μυαλά αυτού του προγραμματιστή. Αυτός είναι ένας τόσο φαύλος κύκλος.

Και η δεύτερη ομάδαΟι προγραμματιστές USB περιλαμβάνουν μια λύση που βασίζεται σε ένα εξειδικευμένο τσιπ FT232Rx. Κάποτε, αυτό το μικροκύκλωμα έγινε ένα είδος επανάστασης. Όχι μόνο μετατρέπει το USB σε UART χωρίς προβλήματα για τον προγραμματιστή (και, πιθανώς, το 95% των προγραμματιστών το χρησιμοποιεί ακριβώς για αυτόν τον σκοπό). Μπορεί επίσης να μιμηθεί μια πλήρη θύρα COM και η κατάσταση των "μικρών" γραμμών (όπως RTS, CTS, DTR, κ.λπ.) μπορεί να οριστεί/διαβαστεί όχι από μια εικονική θύρα COM, αλλά απευθείας μέσω του προγράμματος οδήγησης FTDI ( αναπτύχθηκε από την FT232Rx). Έτσι, εμφανίστηκε μια νέα λύση για μικροελεγκτές που αναβοσβήνουν, χωρίς να απαιτείται αρχικό υλικολογισμικό του εγκεφάλου του προγραμματιστή, και είναι αρκετά γρήγορη.

Σχηματικό διάγραμμα προγραμματιστή USB

Αυτό το κύκλωμα απλώς κατευθύνει τα σήματα MOSI, MISO, SCK και RESET, τα οποία παράγονται στις ακίδες DCD, DTR, RTS και DSR του τσιπ DD1 (FT232RL), αντίστοιχα, στις επιθυμητές ακίδες του μικροελεγκτή που αναβοσβήνει (δηλ. είναι στην πραγματικότητα ένα ανάλογο των «αρχαίων» προγραμματιστών) . Επιπλέον, αυτό το κάνει μόνο τη στιγμή του προγραμματισμού της πέτρας, άλλες φορές ο προγραμματιστής αποσυνδέεται από την πλακέτα που αναβοσβήνει λόγω των 4 στοιχείων buffer του τσιπ DD2 (74HC125D). Η κατάσταση των γραμμών MOSI, MISO, SCK και RESET ρυθμίζεται/διαβάζεται από το λογισμικό υλικολογισμικού στον υπολογιστή. Η μεταφορά δεδομένων μεταξύ του υπολογιστή και του τσιπ FT232RL πραγματοποιείται μέσω του διαύλου USB (από τον οποίο τροφοδοτείται επίσης ο προγραμματιστής).

Η λυχνία LED HL2 ("PWR") σηματοδοτεί ότι ο προγραμματιστής λαμβάνει ρεύμα από το δίαυλο USB. Η λυχνία LED HL1 ("PROG") υποδεικνύει τη διαδικασία αναβοσβήνει ο μικροελεγκτής (ανάβει μόνο όταν αναβοσβήνει). Αυτή, καταρχήν, είναι ολόκληρη η περιγραφή του ίδιου του διαγράμματος ηλεκτρικού κυκλώματος. Το μόνο πράγμα που θα ήθελα να σημειώσω είναι: πρώτον, για τη σύνδεση του προγραμματιστή στην πλακέτα που αναβοσβήνει, χρησιμοποιείται ένας σύνδεσμος IDC-10MR (XP2 "ISP"), το pinout του οποίου συμπίπτει με το εκτεταμένο pinout του συνδετήρα του προγραμματιστή
STK200/STK300:

Υποδοχή XP2 "ISP" για σύνδεση της συσκευής σε προγραμματιζόμενο μικροελεγκτή

Υποδοχή XP3 "MISC" για χρήση πρόσθετων λειτουργιών προγραμματιστή

Γενικά, το τσιπ FT232RL έχει αρκετά σοβαρές δυνατότητες για προγραμματιστή (για παράδειγμα, οι γραμμές διαύλου CBUS μπορούν να χρησιμοποιηθούν ως κανονικές γραμμές εισόδου/εξόδου μικροελεγκτή), επομένως θα ήταν ωραίο να έχετε πρόσβαση σε όλες τις ακίδες του. Λοιπόν, η πρόσβαση σε τάσεις +5,0 V και +3,3 V δεν θα είναι ποτέ περιττή. Επισυνάπτεται μια πλακέτα τυπωμένου κυκλώματος και μια πλήρης λεπτομερής περιγραφή. Ανάπτυξη και εγχειρίδιο - [email προστατευμένο] , δίκη - SssaHeKkk.

Συζητήστε το άρθρο ΠΡΟΓΡΑΜΜΑΤΙΣΤΗΣ USB

Ποια πρώτα βήματα πρέπει να κάνει ένας ραδιοερασιτέχνης εάν αποφασίσει να συναρμολογήσει ένα κύκλωμα σε έναν μικροελεγκτή; Φυσικά, απαιτείται ένα πρόγραμμα ελέγχου - "υλικολογισμικό", καθώς και ένας προγραμματιστής.

Και αν δεν υπάρχουν προβλήματα με το πρώτο σημείο - το τελικό "υλικολογισμικό" συνήθως φορτώνεται από τους συντάκτες των κυκλωμάτων, τότε με τον προγραμματιστή τα πράγματα είναι πιο περίπλοκα.

Η τιμή των έτοιμων προγραμματιστών USB είναι αρκετά υψηλή και η καλύτερη λύση θα ήταν να τα συναρμολογήσετε μόνοι σας. Εδώ είναι ένα διάγραμμα της προτεινόμενης συσκευής (οι φωτογραφίες μπορούν να κάνουν κλικ).

Κύριο μέρος.

Πίνακας εγκατάστασης MK.

Το αρχικό διάγραμμα ελήφθη από τον ιστότοπο LabKit.ru με την άδεια του συγγραφέα, για το οποίο τον ευχαριστούμε πολύ. Αυτός είναι ένας λεγόμενος κλώνος του ιδιόκτητου προγραμματιστή PICkit2. Δεδομένου ότι η έκδοση της συσκευής είναι ένα «ελαφρύ» αντίγραφο του ιδιόκτητου PICkit2, ο συγγραφέας ονόμασε την ανάπτυξή του PICkit-2 Lite, που τονίζει την ευκολία συναρμολόγησης μιας τέτοιας συσκευής για αρχάριους ραδιοερασιτέχνες.

Τι μπορεί να κάνει ένας προγραμματιστής; Χρησιμοποιώντας τον προγραμματιστή, μπορείτε να αναβοσβήσετε τα πιο εύκολα διαθέσιμα και δημοφιλή MCU της σειράς PIC (PIC16F84A, PIC16F628A, PIC12F629, PIC12F675, PIC16F877A, κ.λπ.), καθώς και τσιπ μνήμης EEPROM της σειράς 24LC. Επιπλέον, ο προγραμματιστής μπορεί να λειτουργήσει σε λειτουργία μετατροπέα USB-UART και διαθέτει ορισμένες από τις λειτουργίες ενός λογικού αναλυτή. Μια ιδιαίτερα σημαντική λειτουργία που έχει ο προγραμματιστής είναι ο υπολογισμός της σταθεράς βαθμονόμησης της ενσωματωμένης γεννήτριας RC ορισμένων MCU (για παράδειγμα, όπως PIC12F629 και PIC12F675).

Απαραίτητες αλλαγές.

Υπάρχουν κάποιες αλλαγές στο κύκλωμα που είναι απαραίτητες ώστε με τη χρήση του προγραμματιστή PICkit-2 Lite να είναι δυνατή η εγγραφή/διαγραφή/ανάγνωση δεδομένων από τσιπ μνήμης EEPROM της σειράς 24Cxx.

Από τις αλλαγές που έγιναν στο σχήμα. Προστέθηκε σύνδεση από τον ακροδέκτη 6 του DD1 (RA4) στον ακροδέκτη 21 του πίνακα ZIF. Ο ακροδέκτης AUX χρησιμοποιείται αποκλειστικά για εργασία με τσιπ μνήμης 24LC EEPROM (24C04, 24WC08 και ανάλογα). Μεταδίδει δεδομένα, γι' αυτό επισημαίνεται με τη λέξη «Δεδομένα» στο διάγραμμα του πίνακα προγραμματισμού. Κατά τον προγραμματισμό μικροελεγκτών, η ακίδα AUX συνήθως δεν χρησιμοποιείται, αν και χρειάζεται κατά τον προγραμματισμό MK σε λειτουργία LVP.

Προστέθηκε επίσης μια pull-up αντίσταση 2 kOhm, η οποία συνδέεται μεταξύ των ακροδεκτών SDA και Vcc των τσιπ μνήμης.

Έχω ήδη κάνει όλες αυτές τις τροποποιήσεις στην πλακέτα τυπωμένου κυκλώματος, αφού συναρμολόγησα το PICkit-2 Lite σύμφωνα με το αρχικό διάγραμμα του συγγραφέα.

Τα τσιπ μνήμης 24Cxx (24C08, κ.λπ.) χρησιμοποιούνται ευρέως στον οικιακό ραδιοφωνικό εξοπλισμό και μερικές φορές πρέπει να αναβοσβήνουν, για παράδειγμα, κατά την επισκευή τηλεοράσεων CRT. Χρησιμοποιούν μνήμη 24Cxx για την αποθήκευση των ρυθμίσεων.

Οι τηλεοράσεις LCD χρησιμοποιούν διαφορετικό τύπο μνήμης (μνήμη Flash). Έχω ήδη μιλήσει για το πώς να αναβοσβήνει τη μνήμη μιας τηλεόρασης LCD. Αν κάποιος ενδιαφέρεται ας ρίξει μια ματιά.

Λόγω της ανάγκης να δουλέψω με μικροκυκλώματα της σειράς 24Cxx, έπρεπε να «τελειώσω» τον προγραμματιστή. Δεν χάραξα νέα πλακέτα τυπωμένου κυκλώματος, απλά πρόσθεσα τα απαραίτητα στοιχεία στην πλακέτα τυπωμένου κυκλώματος. Αυτό έγινε.

Ο πυρήνας της συσκευής είναι ένας μικροελεγκτής PIC18F2550-I/SP.

Αυτό είναι το μόνο τσιπ στη συσκευή. Το MK PIC18F2550 πρέπει να "αναβοσβήσει". Αυτή η απλή επέμβαση προκαλεί σύγχυση σε πολλούς, καθώς προκύπτει το λεγόμενο πρόβλημα «κοτόπουλου και αυγού». Θα σας πω πώς το έλυσα λίγο αργότερα.

Λίστα εξαρτημάτων για τη συναρμολόγηση του προγραμματιστή. Στην έκδοση για κινητά, σύρετε τον πίνακα προς τα αριστερά (σαρώστε αριστερά-δεξιά) για να δείτε όλες τις στήλες του.

Ονομα Ονομασία Βαθμολογία/Παράμετροι Μάρκα ή τύπος αντικειμένου
Για το κύριο μέρος του προγραμματιστή
Μικροελεγκτής DD1 Μικροελεγκτής 8 bit PIC18F2550-I/SP
Διπολικά τρανζίστορ VT1, VT2, VT3 KT3102
VT4 KT361
Δίοδος VD1 KD522, 1N4148
Δίοδος Schottky VD2 1N5817
LED HL1, HL2 οποιαδήποτε 3 βολτ, το κόκκινοΚαι πράσινοςχρώματα λάμψης
Αντιστάσεις R1, R2 300 Ohm
R3 22 kOhm
R4 1 kOhm
R5, R6, R12 10 kOhm
R7, R8, R14 100 Ohm
R9, R10, R15, R16 4,7 kOhm
R11 2,7 kOhm
R13 100 kOhm
Πυκνωτές Γ2 0,1 μ K10-17 (κεραμικό), εισαγόμενα ανάλογα
C3 0,47 μικρά
Ηλεκτρολυτικοί πυκνωτές Γ1 100uF * 6,3V K50-6, εισαγόμενα ανάλογα
Γ4 47 uF * 16 V
Επαγωγέας (τσοκ) L1 680 μΗ ενιαίου τύπου EC24, CECL ή σπιτικό
Αντηχείο χαλαζία ZQ1 20 MHz
Υποδοχή USB XS1 τύπου USB-BF
Αλτης XT1 κάθε είδους "jumper"
Για πίνακα εγκατάστασης μικροελεγκτή (MK)
Πίνακας ZIF XS1 οποιοδήποτε πάνελ ZIF 40 ακίδων
Αντιστάσεις R1 2 kOhm MLT, MON (ισχύς από 0,125 W και άνω), εισαγόμενα ανάλογα
R2, R3, R4, R5, R6 10 kOhm

Τώρα λίγο για τις λεπτομέρειες και τον σκοπό τους.

ΠράσινοςΗ λυχνία LED HL1 ανάβει όταν εφαρμόζεται ρεύμα στον προγραμματιστή και το κόκκινοΗ λυχνία LED HL2 εκπέμπεται όταν μεταφέρονται δεδομένα μεταξύ του υπολογιστή και του προγραμματιστή.

Για να προσφέρετε στη συσκευή ευελιξία και αξιοπιστία, χρησιμοποιείται μια υποδοχή USB τύπου "B" (τετράγωνο) XS1. Ο υπολογιστής χρησιμοποιεί μια υποδοχή USB τύπου Α. Επομένως, είναι αδύνατο να ανακατέψετε τις υποδοχές του καλωδίου σύνδεσης. Αυτή η λύση συμβάλλει επίσης στην αξιοπιστία της συσκευής. Εάν το καλώδιο καταστεί άχρηστο, μπορεί εύκολα να αντικατασταθεί με νέο χωρίς να καταφύγετε σε εργασίες συγκόλλησης ή εγκατάστασης.

Ως επαγωγέας L1 680 µH, είναι προτιμότερο να χρησιμοποιείτε έτοιμο (για παράδειγμα, τύπους EC24 ή CECL). Αλλά αν δεν μπορείτε να βρείτε ένα τελικό προϊόν, μπορείτε να φτιάξετε μόνοι σας το γκάζι. Για να γίνει αυτό, πρέπει να τυλίξετε 250 - 300 στροφές σύρματος PEL-0.1 σε έναν πυρήνα φερρίτη από έναν επαγωγέα τύπου CW68. Αξίζει να ληφθεί υπόψη ότι λόγω της παρουσίας PWM με ανάδραση, δεν υπάρχει λόγος ανησυχίας για την ακρίβεια της βαθμολογίας επαγωγής.

Η τάση για προγραμματισμό υψηλής τάσης (Vpp) από +8,5 έως 14 βολτ δημιουργείται από τον ρυθμιστή κλειδιού. Περιλαμβάνει στοιχεία VT1, VD1, L1, C4, R4, R10, R11. Οι παλμοί PWM αποστέλλονται από τον ακροδέκτη 12 του PIC18F2550 στη βάση VT1. Η ανατροφοδότηση παρέχεται από το διαχωριστικό R10, R11.

Για την προστασία των στοιχείων του κυκλώματος από την αντίστροφη τάση από τις γραμμές προγραμματισμού κατά τη χρήση προγραμματιστή USB σε λειτουργία ICSP (In-Circuit Serial Programming), χρησιμοποιείται μια δίοδος VD2. Το VD2 είναι μια δίοδος Schottky. Θα πρέπει να επιλεγεί με πτώση τάσης στη διασταύρωση P-N όχι μεγαλύτερη από 0,45 βολτ. Επίσης, η δίοδος VD2 ​​προστατεύει τα στοιχεία από την αντίστροφη τάση όταν ο προγραμματιστής χρησιμοποιείται σε λειτουργία μετατροπής USB-UART και λογικού αναλυτή.

Όταν χρησιμοποιείτε τον προγραμματιστή αποκλειστικά για προγραμματισμό μικροελεγκτών στον πίνακα (χωρίς χρήση ICSP), μπορείτε να εξαλείψετε εντελώς τη δίοδο VD2 (αυτό έκανα εγώ) και να εγκαταστήσετε ένα βραχυκυκλωτήρα.

Η συμπαγής διάταξη της συσκευής γίνεται από το γενικό πάνελ ZIF (Zero Insertion Force - με μηδενική προσπάθεια εγκατάστασης).

Χάρη σε αυτό, μπορείτε να "συνδέσετε" έναν μικροελεγκτή σε σχεδόν οποιοδήποτε πακέτο DIP.

Το διάγραμμα «Πίνακας εγκατάστασης μικροελεγκτή (MK)» δείχνει πώς πρέπει να εγκατασταθούν μικροελεγκτές με διαφορετικά περιβλήματα στον πίνακα. Κατά την εγκατάσταση του MK, θα πρέπει να δώσετε προσοχή στο γεγονός ότι ο μικροελεγκτής στον πίνακα είναι τοποθετημένος έτσι ώστε το κλειδί στο τσιπ να βρίσκεται στο πλάι του μοχλού κλειδώματος του πίνακα ZIF.

Αυτός είναι ο τρόπος με τον οποίο πρέπει να εγκαταστήσετε μικροελεγκτές 18 ακίδων (PIC16F84A, PIC16F628A, κ.λπ.).

Και εδώ είναι μικροελεγκτές 8 ακίδων (PIC12F675, PIC12F629, κ.λπ.).

Εάν χρειάζεται να αναβοσβήσετε έναν μικροελεγκτή σε πακέτο επιφανειακής τοποθέτησης (SOIC), μπορείτε να χρησιμοποιήσετε έναν προσαρμογέα ή απλώς να κολλήσετε 5 ακίδες στον μικροελεγκτή που συνήθως απαιτούνται για τον προγραμματισμό (Vpp, Clock, Data, Vcc, GND).

Μπορείτε να βρείτε το έτοιμο σχέδιο της πλακέτας τυπωμένου κυκλώματος με όλες τις αλλαγές στον σύνδεσμο στο τέλος του άρθρου. Ανοίγοντας το αρχείο στο πρόγραμμα Sprint Layout 5.0, χρησιμοποιώντας τη λειτουργία "Εκτύπωση", μπορείτε όχι μόνο να εκτυπώσετε ένα στρώμα με μοτίβο τυπωμένων αγωγών, αλλά και να δείτε τη θέση των στοιχείων στην πλακέτα τυπωμένου κυκλώματος. Δώστε προσοχή στον απομονωμένο βραχυκυκλωτήρα που συνδέει τον ακροδέκτη 6 του DD1 και τον ακροδέκτη 21 του πίνακα ZIF. Πρέπει να εκτυπώσετε το σχέδιο του πίνακα σε καθρέφτη.

Μπορείτε να φτιάξετε μια πλακέτα τυπωμένου κυκλώματος χρησιμοποιώντας τη μέθοδο LUT, καθώς και με μαρκαδόρο για πλακέτες τυπωμένων κυκλωμάτων, χρησιμοποιώντας tsaponlak (αυτό έκανα εγώ) ή χρησιμοποιώντας τη μέθοδο "μολύβι".

Ακολουθεί μια εικόνα της τοποθέτησης των στοιχείων σε μια πλακέτα τυπωμένου κυκλώματος (με δυνατότητα κλικ).

Κατά την εγκατάσταση, το πρώτο βήμα είναι να συγκολλήσετε βραχυκυκλωτήρες από επικασσιτερωμένο χάλκινο σύρμα και, στη συνέχεια, να εγκαταστήσετε στοιχεία χαμηλού προφίλ (αντιστάσεις, πυκνωτές, χαλαζία, σύνδεσμος ακροδεκτών ISCP), μετά τρανζίστορ και προγραμματισμένο MK. Το τελευταίο βήμα είναι να εγκαταστήσετε τον πίνακα ZIF, την υποδοχή USB και να σφραγίσετε τα καλώδια στη μόνωση (jumpers).

"Υλικολογισμικό" του μικροελεγκτή PIC18F2550.

Αρχείο υλικολογισμικού - PK2V023200.εξάγωνοπρέπει να γράψετε το PIC18F2550I-SP MK στη μνήμη χρησιμοποιώντας οποιονδήποτε προγραμματιστή που υποστηρίζει μικροελεγκτές PIC (για παράδειγμα, Extra-PIC). Χρησιμοποίησα τον προγραμματιστή JDM JONIC PROG και το πρόγραμμα WinPic800.

Μπορείτε να ανεβάσετε το υλικολογισμικό στο PIC18F2550 MCU χρησιμοποιώντας τον ίδιο αποκλειστικό προγραμματιστή PICkit2 ή τη νέα του έκδοση PICkit3. Φυσικά, μπορείτε να το κάνετε αυτό με ένα σπιτικό PICkit-2 Lite, αν κάποιος από τους φίλους σας κατάφερε να το συναρμολογήσει πριν από εσάς :).

Αξίζει επίσης να γνωρίζετε ότι το «υλικολογισμικό» του μικροελεγκτή PIC18F2550-I/SP (αρχείο PK2V023200.εξάγωνο) γράφεται κατά την εγκατάσταση του προγράμματος PICkit 2 Programmer σε έναν φάκελο μαζί με τα αρχεία του ίδιου του προγράμματος. Κατά προσέγγιση τοποθεσία του αρχείου PK2V023200.hex - "C:\Program Files (x86)\Microchip\PICkit 2 v2\PK2V023200.hex" . Για όσους έχουν μια έκδοση 32-bit των Windows εγκατεστημένη στον υπολογιστή τους, η διαδρομή τοποθεσίας θα είναι διαφορετική: "C:\Program Files\Microchip\PICkit 2 v2\PK2V023200.hex" .

Λοιπόν, αν δεν μπορέσατε να λύσετε το πρόβλημα "κοτόπουλου και αυγού" χρησιμοποιώντας τις προτεινόμενες μεθόδους, τότε μπορείτε να αγοράσετε έναν έτοιμο προγραμματιστή PICkit3 στον ιστότοπο AliExpress. Κοστίζει πολύ φθηνότερα εκεί. Έγραψα για το πώς να αγοράσω ανταλλακτικά και ηλεκτρονικά κιτ στο AliExpress.

Ενημέρωση του υλικολογισμικού του προγραμματιστή.

Το Progress δεν σταματά και κατά καιρούς η Microchip εκδίδει ενημερώσεις για το λογισμικό της, συμπεριλαμβανομένου του προγραμματιστή PICkit2, PICkit3. Φυσικά, μπορούμε επίσης να ενημερώσουμε το πρόγραμμα ελέγχου του σπιτικού μας PICkit-2 Lite. Για να το κάνετε αυτό θα χρειαστείτε το πρόγραμμα PICkit2 Programmer. Τι είναι και πώς να το χρησιμοποιήσετε - λίγο αργότερα. Στο μεταξύ, λίγα λόγια για το τι πρέπει να γίνει για την ενημέρωση του υλικολογισμικού.

Για να ενημερώσετε το λογισμικό του προγραμματιστή, πρέπει να κλείσετε το βραχυκυκλωτήρα XT1 στον προγραμματιστή όταν είναι αποσυνδεδεμένος από τον υπολογιστή. Στη συνέχεια συνδέστε τον προγραμματιστή στον υπολογιστή και εκκινήστε τον προγραμματιστή PICkit2. Όταν το XT1 είναι κλειστό, η λειτουργία ενεργοποιείται bootloaderγια λήψη της νέας έκδοσης υλικολογισμικού. Στη συνέχεια, στον Προγραμματιστή PICkit2, μέσω του μενού «Εργαλεία» - «Λήψη Λειτουργικού Συστήματος PICkit 2», ανοίξτε το προηγουμένως προετοιμασμένο δεκαεξαδικό αρχείο του ενημερωμένου υλικολογισμικού. Στη συνέχεια, θα πραγματοποιηθεί η διαδικασία ενημέρωσης λογισμικού προγραμματιστή.

Μετά την ενημέρωση, πρέπει να αποσυνδέσετε τον προγραμματιστή από τον υπολογιστή και να αφαιρέσετε το βραχυκυκλωτήρα XT1. Στην κανονική λειτουργία ο βραχυκυκλωτήρας είναι ανοιχτός. Μπορείτε να μάθετε την έκδοση λογισμικού προγραμματιστή μέσω του μενού "Βοήθεια" - "Σχετικά" στο πρόγραμμα PICkit2 Programmer.

Όλα αυτά αφορούν τεχνικά ζητήματα. Και τώρα για το λογισμικό.

Συνεργασία με τον προγραμματιστή. Προγραμματιστής PICkit2.

Για να εργαστούμε με τον προγραμματιστή USB, θα χρειαστεί να εγκαταστήσουμε το πρόγραμμα PICkit2 Programmer στον υπολογιστή. Αυτό το ειδικό πρόγραμμα έχει απλή διεπαφή, είναι εύκολο στην εγκατάσταση και δεν απαιτεί ειδική διαμόρφωση. Αξίζει να σημειωθεί ότι μπορείτε να δουλέψετε με τον προγραμματιστή χρησιμοποιώντας το περιβάλλον ανάπτυξης MPLAB IDE, αλλά για να αναβοσβήσετε/σβήσετε/διαβάσετε το MK αρκεί ένα απλό πρόγραμμα - PICkit2 Programmer. Προτείνω.

Αφού εγκαταστήσετε το πρόγραμμα PICkit2 Programmer, συνδέστε τον συναρμολογημένο προγραμματιστή USB στον υπολογιστή. Ταυτόχρονα θα ανάψει πράσινος LED ("ισχύς") και το λειτουργικό σύστημα αναγνωρίζει τη συσκευή ως "Προγραμματιστής μικροελεγκτή PICkit2" και εγκαταστήστε τα προγράμματα οδήγησης.

Εκκινήστε το πρόγραμμα PICkit2 Programmer. Θα πρέπει να εμφανιστεί μια επιγραφή στο παράθυρο του προγράμματος.

Εάν ο προγραμματιστής δεν είναι συνδεδεμένος, στο παράθυρο του προγράμματος θα εμφανιστεί ένα τρομακτικό μήνυμα και σύντομες οδηγίες "Τι να κάνω;" Στα Αγγλικά.

Εάν ο προγραμματιστής είναι συνδεδεμένος σε υπολογιστή με εγκατεστημένο ένα MK, το πρόγραμμα θα το εντοπίσει όταν εκκινηθεί και θα μας ειδοποιήσει σχετικά στο παράθυρο Προγραμματιστής PICkit2.

Συγχαρητήρια! Το πρώτο βήμα έχει γίνει. Και μίλησα για τον τρόπο χρήσης του προγράμματος PICkit2 Programmer σε ένα ξεχωριστό άρθρο. Επόμενο βήμα .

Απαιτούμενα αρχεία:

    Εγχειρίδιο χρήστη PICkit2 (Ρωσικά) take or.



Σχετικές δημοσιεύσεις