Προγραμματιστής DIY avr για Windows 10. Μινιατούρα προγραμματιστής USB για μικροελεγκτές AVR. Ενσωματωμένα χειριστήρια

Υπάρχουν πολλά στο Διαδίκτυο Κυκλώματα USBπρογραμματιστές για μικροελεγκτές AVR. Όλοι μπορούν να χωριστούν σε τρεις ομάδες: προγραμματιστές που βασίζονται σε μικροελεγκτές AVR, στους οποίους η διεπαφή USB υλοποιείται σε λογισμικό, προγραμματιστές που βασίζονται σε μικροελεγκτές AVR με υποστήριξη υλικού USB και προγραμματιστές βασισμένοι σε τσιπ FT232, που λειτουργούν σε λειτουργία BitBang.

Ένας από τους ευκολότερους προγραμματιστές AVR USB για αναπαραγωγή είναι το USBasp. Συναρμολογείται σε μικροελεγκτή Atmega8 (ή Atmega48) και απαιτεί ελάχιστο εξωτερικά εξαρτήματα, έχει αρκετές έτοιμες επιλογές για διάταξη PCB και κελύφη προγραμματισμού και μπορεί επίσης να λειτουργήσει σε Linux και MacOS.

Υπάρχει πραγματικά ένα ΑΛΛΑ! Για να αναβιώσετε αυτόν τον προγραμματιστή, πρέπει να γράψετε υλικολογισμικό στον μικροελεγκτή, πράγμα που σημαίνει ότι θα πρέπει να έχετε ήδη κάποιο είδος προγραμματιστή AVR που λειτουργεί, ή τουλάχιστον να μπορείτε να το βρείτε κάπου.

Το διάγραμμα του προγραμματιστή USBasp φαίνεται στην παρακάτω εικόνα. Πήρα ως βάση το διάγραμμα από την ιστοσελίδα του συγγραφέα http://www.fischl.de/usbasp και το άλλαξα λίγο. Οι δίοδοι VD1 - VD3 προστέθηκαν για να μειώσουν την τάση τροφοδοσίας και να ταιριάζουν με τα λογικά επίπεδα του μικροελεγκτή και θύρα USBχωρίς διόδους zener. Τα κυκλώματα που συνδέονται με το UART πετάχτηκαν, αφού δεν χρησιμοποιήθηκαν, και προστέθηκε ο βραχυκυκλωτήρας JP1.

Θα σας πω για τον σκοπό των LED και των jumper.

Το HL1 σηματοδοτεί ότι ο προγραμματισμός βρίσκεται σε εξέλιξη. Ανάβει ενώ γράφεται το υλικολογισμικό.

Το HL2 υποδεικνύει ότι ο προγραμματιστής βρίσκεται σε κατάσταση λειτουργίας. Ανάβει όταν εφαρμόζεται ρεύμα.

Το JP1 βραχυκυκλώνει μια αλυσίδα διόδων, η οποία σας επιτρέπει να αλλάξετε την τάση στην υποδοχή προγραμματισμού από 3 σε 5 V. Ωστόσο, χωρίς διόδους zener, αυτό δεν θα λειτουργήσει με όλους τους υπολογιστές. Πολλοί υπολογιστές δεν αναγνωρίζουν το USBASP εάν έχει λογικά επίπεδα 5 βολτ.

Το JP2 αλλάζει τη συχνότητα του σήματος SCK. Με το βραχυκυκλωτήρα ανοιχτό, η συχνότητα SCK θα είναι 375 kHz, με το βραχυκυκλωτήρα κλειστό - 8 kHz. Αυτό απαιτείται για τον προγραμματισμό μικροελεγκτών με χαμηλές ταχύτητες ρολογιού (λιγότερο από 1,5 MHz).

Το JP3 συνδέει τον ακροδέκτη RESET στην υποδοχή προγραμματισμού. Αυτό είναι απαραίτητο για να προγραμματιστεί ο ίδιος ο μικροελεγκτής προγραμματιστή.

Το JP4 συνδέεται στην υποδοχή προγραμματισμού +5V από τη θύρα USB. Αυτή η λειτουργία μπορεί να χρειαστεί για την τροφοδοσία της προγραμματιζόμενης πλακέτας από τον προγραμματιστή.

Συναρμολόγηση USBASP

Για να συναρμολογήσετε τον προγραμματιστή USBASP θα χρειαστείτε τα ακόλουθα εξαρτήματα:

Η κατασκευή μιας σανίδας χρησιμοποιώντας τη μέθοδο LUT δεν είναι ιδιαίτερα δύσκολη - η σανίδα είναι μονόπλευρη, οι διαδρομές είναι φαρδιές. Κατά την εκτύπωση, δεν χρειάζεται να αντικατοπτρίζετε το σχέδιο του πίνακα.


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

Μπορείτε να προγραμματίσετε τον μικροελεγκτή απευθείας στην πλακέτα. Για να το κάνετε αυτό, πρέπει να κλείσετε τα jumper JP3 και JP4, να συνδέσετε το USBasp στον υπολογιστή για παροχή ρεύματος και να συνδέσετε τον προγραμματιστή στην υποδοχή BH-10. Τα υπόλοιπα βήματα εξαρτώνται από τον προγραμματιστή που χρησιμοποιείτε.

Μόλις προγραμματιστεί ο μικροελεγκτής, πρέπει να ρυθμίσετε τα Bit Fuse έτσι ώστε να χρονίζεται από έναν εξωτερικό κρύσταλλο. Οι έννοιες των Bits Fuse είναι:

atmega8 HFUSE=0xc9 LFUSE=0xef
atmega88 HFUSE=0xdd LFUSE=0xff

Έκανα flash USBASP με τον εγγενή προγραμματιστή Atmel μου. έχω μέσα Atmel StudioΤο παράθυρο με τα κομμάτια ασφαλειών έμοιαζε έτσι.

Εάν κάνετε flash USBasp με έναν προγραμματιστή στο FT232, τότε στο SinaProg η εικόνα των Bits Fuse θα είναι αυτή.


Δεν υπάρχει διαφορά, γι' αυτό μην κάνετε ερωτήσεις σχετικά με τα Bit Fuse να εγκαταστήσετε.

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

Για να εργαστείτε με τον προγραμματιστή στα Windows, πρέπει να εγκαταστήσετε προγράμματα οδήγησης. Μπορείτε να τα κατεβάσετε από τον ιστότοπο του συγγραφέα. Για χειρουργεία Συστήματα Linuxκαι MacOS X USBasp πρόγραμμα οδήγησης δεν απαιτείται.

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


Επιλέξτε την επιλογή - εγκατάσταση από μια καθορισμένη τοποθεσία


Καθορίστε τον φάκελο στον οποίο βρίσκονται τα προγράμματα οδήγησης για τον προγραμματιστή.


Το σύστημα θα κρυώσει λίγο και στη συνέχεια θα ξεκινήσει η διαδικασία εγκατάστασης.


Εάν όλα πήγαν καλά, ο οδηγός υλικού θα ολοκληρώσει την εργασία.


Και τα Windows θα μας ειδοποιήσουν όταν εγκατασταθεί νέο υλικό


Τώρα μπορεί να χρησιμοποιηθεί ο προγραμματιστής.

Η περιγραφόμενη διαδικασία μπορεί να διαφέρει ελαφρώς ανάλογα με την έκδοση του λειτουργικού συστήματος, αλλά η ουσία είναι η ίδια - αφαιρέστε τα προγράμματα οδήγησης από το φάκελο.

Κελύφη για εργασία με USBasp

Υπάρχουν αρκετά προγράμματα για εργασία με USBasp - avrdude, eXtremeBurner, Khazama και.. κάποια άλλα.

Κατά τη γνώμη μου, το πιο εύχρηστο πρόγραμμα για το USBaspa είναι το Khazama. Έχει μια απλή και διαισθητική διεπαφή παραθύρου. Η διαδικασία προγραμματισμού του μικροελεγκτή πραγματοποιείται σε τρία στάδια.

Για τον προγραμματισμό μικροελεγκτών AVR, απαιτείται προγραμματιστής. Ο ευκολότερος τρόπος είναι να φτιάξετε έναν προγραμματιστή για COM ή LPT. Αλλά δουλεύω σε φορητό υπολογιστή και τώρα μόνο εγκαθιστούν Θύρες USB. Ήρθε λοιπόν η ώρα να αποκτήσετε έναν προγραμματιστή για AVR μέσω USB. Τώρα, πιθανότατα θα αγόραζα αυτόν τον προγραμματιστή. Στο ebay είναι φθηνά, πιθανώς και φθηνότερα από την αγορά ανταλλακτικών, την κατασκευή πλακέτας κυκλώματος και τη συγκόλληση των πάντων μεταξύ τους. Αν και αν κοιτάξεις από την άλλη πλευρά, μια παραγγελία από το ebay θα πάρει τουλάχιστον ένα μήνα για να φτάσει με ταχυδρομείο και μπορείς να συναρμολογήσεις έναν προγραμματιστή avr usb με τα χεράκια σου, λόγω της απλότητάς του, ένα βράδυ. Επιπλέον, εάν ένας αρχάριος ραδιοερασιτέχνης συναρμολογήσει μόνος του έναν προγραμματιστή, τότε εκτός από τον προγραμματιστή θα αποκτήσει εμπειρία, ανεκτίμητη εμπειρία, και αυτό αξίζει πολλά.
Αυτός είναι ο δεύτερος προγραμματιστής USB για AVR, ο πρώτος που έφτιαξα ήταν προγραμματιστής USB-asp, αλλά δεν μου άρεσε πολύ, καθώς μερικές φορές έπεφτε από τον υπολογιστή μου, αν και τίποτα τέτοιο δεν παρατηρήθηκε σε άλλον υπολογιστή. Αποφάσισα να προσπαθήσω να φτιάξω έναν άλλο προγραμματιστή και η επιλογή μου έπεσε στον προγραμματιστή AVR910. Αυτός ο προγραμματιστής έχει ένα ελαφρώς διαφορετικό σχήμα σύνδεσης USB και όπως αποδείχθηκε αργότερα, όλα λειτουργούν πολύ καλά στον υπολογιστή μου. Ξέχασα τα προβλήματα που είχα με τον προηγούμενο προγραμματιστή μου. Ο προγραμματιστής AVR910 που περιγράφεται σε αυτό το άρθρο είναι αυτή τη στιγμήο κύριος προγραμματιστής AVR μου.
Το κύκλωμα και το υλικολογισμικό χρησιμοποιήθηκαν από τον ιστότοπο του έργου (http://prottoss.com/projects/AVR910.usb.prog/avr910_usb_programmer.htm).


Ο προγραμματιστής τροφοδοτείται από τη θύρα USB. Για να μην απαιτείται συντονισμός με τα επίπεδα γραμμής Δεδομένα USBθύρα (3,6V), η τροφοδοσία του μικροελεγκτή είναι 3,6V. Για τη λήψη 3,6 V από 5 V σε μια θύρα USB, χρησιμοποιείται ένα κύκλωμα δύο απευθείας συνδεδεμένων διόδων πυριτίου σε σειρά. Κάθε δίοδος πέφτει 0,7V και το σύνολο είναι 1,4V. Οι δίοδοι πρέπει να είναι πυριτίου· δεν επιτρέπεται η χρήση διόδων Schottky, καθώς πέφτουν κάτω από 0,7 V. Οι έξοδοι του βύσματος προγραμματισμού συνδέονται μέσω αντιστάσεων 330 Ohm για να ταιριάζουν με τα επίπεδα. Η συσκευή λειτουργεί με τον μικροελεγκτή AtMega8-16 συχνότητα ρολογιού 12 MHz. Το διάγραμμα δείχνει τους αριθμούς ακίδων για τον μικροελεγκτή σε ένα πακέτο DIP, αν και δρομολόγησα την πλακέτα για ένα πακέτο SMD, το οποίο ονομάζεται TQFP. Ο προγραμματιστής έχει ένδειξη γραφής, ανάγνωσης και διαθεσιμότητας ισχύος. Αυτός ο προγραμματιστής έχει επίσης μια έξοδο που έχει πάντα ένα τετράγωνο κύμα με συχνότητα 1 MHz. Αυτό είναι ένα πολύ ωραίο και χρήσιμο πράγμα για την επαναφορά μικροελεγκτών των οποίων το ρολόι έχει ρυθμιστεί από μια εξωτερική πηγή λόγω εσφαλμένα προγραμματισμένων bits ασφαλειών παλμούς ρολογιού. Έχω ήδη επαναφέρει τους μικροελεγκτές με αυτόν τον τρόπο αρκετές φορές. Απλά πρέπει να ψάξετε στο φύλλο δεδομένων για έναν συγκεκριμένο μικροεπεξεργαστή AVR, στον οποίο είναι συνδεδεμένος εξωτερική πηγήσήμα ρολογιού, και συγκόλληση σε αυτό το συμπέρασμαπηγή του μαιάνδρου. Συνδέστε τον προγραμματιστή και επαναπρογραμματίστε την ασφάλεια. Είναι πολύ απλό, αλλά μερικές φορές βοηθάει πολύ!
Οι διαθέσιμες επιλογές για την υλοποίηση πλακέτας τυπωμένου κυκλώματος για τον προγραμματιστή AVR910 δεν με ταιριάζουν αρκετά και ανίχνευσα την έκδοσή μου (μπορείτε να κάνετε λήψη των αρχείων έργου στο τέλος του άρθρου).


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


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




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

Έβαλα μια ομάδα κενή για μια πινακίδα που θα εκτυπωθεί σε φωτογραφικό χαρτί διαστάσεων 10x15 στο αρχείο με όλα τα αρχεία για αυτήν την ανάρτηση. Μπορείτε να το κατεβάσετε στο τέλος αυτού του άρθρου.
Μπορείτε να κατεβάσετε το υλικολογισμικό για τον προγραμματιστή από τον σύνδεσμο στο τέλος του άρθρου.
Τα bit ασφαλειών ρυθμίζονται σύμφωνα με την παρακάτω εικόνα:


Πώς να προγραμματίσετε τον μικροελεγκτή AtMega8 για τον προγραμματιστή AVR910 μπορείτε να δείτε στο βίντεό μου:

Δεν μπορούσα να βρω περίβλημα για τον προγραμματιστή AVR910· ήθελα ο προγραμματιστής να παραμείνει μικρός και αρχικά χρησιμοποίησα μια γυμνή πλακέτα που δεν ήταν μονωμένη με κανέναν τρόπο. Αλλά μετά αγόρασα ένα φαρδύ διαφανές θερμοσυστελλόμενο και τοποθέτησα τον προγραμματιστή σε αυτό. Μπορείτε να δείτε ποιο είναι το τελικό αποτέλεσμα στη φωτογραφία. Νομίζω ότι είναι αρκετά ενδιαφέρον και μάλιστα χαριτωμένο.




Με το heat shrink όλα φαίνονται απλά, αλλά δυσκολεύτηκα να κάνω τις τρύπες για τις ακίδες. Εάν τρυπήσετε τις τρύπες με ένα σουβλί, τότε κατά τη συρρίκνωση ο θερμοσυστελλόμενος σωλήνας σπάει ξεκινώντας από αυτές τις τρύπες. Κατέστρεψα ακόμη και πολλά κενά, αλλά στο τέλος των πειραμάτων όλα λειτούργησαν. Ως αποτέλεσμα, δεν τρύπησα τις τρύπες, αλλά τις έλιωσα με ένα καυτό κολλητήρι με άκρη βελόνας. Κατά μήκος των άκρων της σανίδας κόλλησα τα άκρα του θερμοσυστελλόμενου σωλήνα. Συγκολλούνται πολύ απλά - και τα δύο άκρα του σωλήνα θερμαίνονται, μετά γρήγορα, πριν προλάβουν να κρυώσουν, σφίγγονται και συγκρατούνται μέχρι να κρυώσουν εντελώς. Το αποτέλεσμα είναι μια αρκετά δυνατή διασταύρωση. Το έσφιξα με έναν ιατρικό σφιγκτήρα· η συρρίκνωση της θερμότητας άφησε ακόμη και ίχνη από εγκοπές στα σαγόνια του.
Όταν συνδέετε τον προγραμματιστή AVR910 στον υπολογιστή σας για πρώτη φορά, θα εμφανιστεί μια νέα συσκευή AVR910 στο σύστημα. Τώρα πρέπει να εγκαταστήσετε τα προγράμματα οδήγησης και μπορείτε να εργαστείτε.
Συνεργάστηκα με αυτόν τον προγραμματιστή σε συστήματα Windows XP και Windows 7 32-bit. Όλα λειτουργούν πολύ καλά και δεν δημιουργούνται προβλήματα. Προέκυψαν προβλήματα όταν προσπάθησα να εγκαταστήσω προγράμματα οδήγησης για Windows 7 64 bit. Το γεγονός είναι ότι αυτό το πρόγραμμα οδήγησης δεν έχει ψηφιακή υπογραφή Microsoft και τα Windows 7 64 bit, επειδή είναι πιο ασφαλή, αποκλείουν όλα τα προγράμματα οδήγησης χωρίς ψηφιακή υπογραφή. Αυτό το κλείδωμα μπορεί να απενεργοποιηθεί, αλλά δεν είναι καθόλου εύκολο..... Λάβετε το υπόψη σας λοιπόν.
Ανεβάζω το υλικολογισμικό στον μικροελεγκτή χρησιμοποιώντας το πρόγραμμα AvrOsp2. Είναι πολύ απλό, δεν απαιτεί εγκατάσταση, είναι δωρεάν, υποστηρίζει τον προγραμματιστή AVR910 και έναν τεράστιο αριθμό μικροελεγκτών AVR, λειτουργεί καλά και έχει ένα πολύ βολικό μενού για εργασία με bit FUSE. Γενικά ένα δροσερό πρόγραμμα, μου αρέσει πολύ, το προτείνω! Στο παρακάτω βίντεο έδειξα τη διαδικασία εγκατάστασης προγραμμάτων οδήγησης για το AVR910, πώς να ρυθμίσετε και να χρησιμοποιήσετε το πρόγραμμα AvrOsp2.

Στην έκδοση του προγραμματιστή μου, δεν εγκατέστησα ηλεκτρολυτικό πυκνωτή εξόδου 22 uF, ο οποίος είναι τοποθετημένος στην πλευρά απέναντι από τις ράγες και συγκολλάται στις οπές που βρίσκονται κοντά Υποδοχή USB. Μπορεί να χρειαστεί να εγκαταστήσετε έναν πρόσθετο ηλεκτρολυτικό πυκνωτή χωρητικότητας 10-50 µF παράλληλα με τον συγκολλημένο κεραμικό πυκνωτή 0,1 μF, κοντά στο πράσινο LED PWR. Η παρακάτω εικόνα δείχνει τις θέσεις σύνδεσης με το χέρι.

Για τη λειτουργία του προγραμματιστή, χρειάζεστε έναν μικροελεγκτή ικανό να λειτουργεί έως και 16 MHz. Το AVR AtMega8 είναι διαθέσιμο σε δύο σειρές που λειτουργούν έως και 8 MHz (σειρά L), δεν είναι κατάλληλες για εμάς, καθώς το έργο τρέχει σε χαλαζία 12 MHz. Υπάρχει επίσης μια κανονική έκδοση, η οποία είναι λειτουργική μέχρι συχνότητας 16 MHz. Αυτό χρειαζόμαστε. Ακολουθεί ένα τμήμα του φύλλου δεδομένων AVR AtMega8, στο οποίο οι εκδόσεις των μικροελεγκτών που δεν θα λειτουργούν σε αυτόν τον προγραμματιστή διαγράφονται και οι εκδόσεις των μικροελεγκτών που θα λειτουργούν σε αυτό το έργο επισημαίνονται με πράσινο πλαίσιο.

Οι μικροελεγκτές από την ATMEL έχουν κερδίσει μεγάλη δημοτικότητα. Ο προγραμματισμός τους πριν από τη χρήση μπορεί να πραγματοποιηθεί απευθείας στην πλακέτα της τελικής συσκευής μέσω ενός απλού καλωδίου ISP συνδεδεμένου με Θύρα LPT προσωπικός υπολογιστήςή ένα ελαφρώς πιο περίπλοκο καλώδιο συνδεδεμένο στη θύρα COM. Αλλά στις μέρες μας όλο και περισσότερο μητρικές πλακέτεςπαράγεται χωρίς και τα δύο, και σε φορητούς υπολογιστές το LPT εξαφανίστηκε εδώ και πολύ καιρό, αντικαταστάθηκε από μια διεπαφή USB. Ωστόσο, υπάρχουν και είναι διαθέσιμοι προγραμματιστές για αυτήν τη διεπαφή.

Για κλίμακα, υπάρχει ένα κανονικό LED 5 mm κοντά.
Αυτός ο προγραμματιστής USBASP υποστηρίζει τους ακόλουθους μικροελεγκτές:

Λίστα υποστηριζόμενων MK

ATtiny11, ATtiny12, ATtiny13, ATtiny15, ATtiny22, ATtiny2313, ATtiny24, ATtiny25, ATtiny26, ATtiny261, ATtiny28, ATtiny44, ATtiny45, ATtiny, ATtiny 45, ATtiny, ATtiny
AT90S1200, AT90S2313, AT90S2323, AT90S2343, AT90S4414, T90S4433, AT90S4434, AT90S8515, AT90S8535
ATmega8, ATmega48, ATmega88, ATmega16, ATmega161, ATmega162, ATmega163, ATmega164, ATmega165, ATmega168, ATmega169, ATmega32, ATmegaATme324, ATmegaATme324,
ATmega3250, ATmega329, ATmega64, ATmega640, ATmega644, ATmega645, ATmega6450, ATmega649, ATmega6490, ATmega128, ATmega1280, ATmega250, ATmega20, ATmega1ATme 3, ATmega406, ATmega851 5, ATmega8535
AT90CAN32, AT90CAN64, AT90CAN128
AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B
AT90USB1286, AT90USB1287, AT90USB162, AT90USB646, AT90USB647
AT89S51, AT89S52
AT86RF401




Ένα καλώδιο πτήσης 10 πυρήνων με συνδέσμους παρέχεται μαζί με τον προγραμματιστή.


Ο προγραμματιστής τροφοδοτείται από τη θύρα USB του υπολογιστή.


Στην πλακέτα προγραμματιστή υπάρχει μια θέση για την αποκόλληση ενός ρυθμιστή τάσης 3,3 V LDO, αλλά ο ίδιος δεν είναι συγκολλημένος.
Ο προγραμματιστής υποστηρίζεται από το πρόγραμμα AVRDUDE. Το ίδιο το πρόγραμμα είναι ένα πρόγραμμα κονσόλας, αλλά υπάρχει ένα . Το βοηθητικό πρόγραμμα avrdude βρίσκεται στο φάκελο /hardware/tools/ στη διανομή Arduino IDEή κατεβάστε από το Διαδίκτυο.
Πριν ξεκινήσετε να εργάζεστε με τον προγραμματιστή, θα χρειαστεί να κάνετε λήψη του προγράμματος οδήγησης από το .
Ο προγραμματιστής υποστηρίζεται επίσης από το περιβάλλον ανάπτυξης Arduino.


Υπάρχει υλικολογισμικό για τον προγραμματιστή που ονομάζεται , το οποίο το μετατρέπει σε συμβατό με STK500 και αποδεκτό από το ιδιόκτητο περιβάλλον ανάπτυξης ATMEL AVR Studio, αλλά λόγω της μεγάλης μεταβλητότητας του κινεζικού υλικού, μπορείτε να το χρησιμοποιήσετε μόνο με δική σας ευθύνη και κίνδυνο. Σκοπεύω να αγοράσω +32 Προσθήκη στα αγαπημένα Μου άρεσε η κριτική +17 +42

Σήμερα θα σας πω για έναν φθηνό και πολύ απλό προγραμματιστή USBAsp v.2.0 για μικροελεγκτές AVR (βάσει του σχεδιασμού του Thomas Fischl), με τη βοήθειά του μπορείτε να αναβοσβήσετε ελεγκτές AVR μέσω της διεπαφής ISP (χωρίς να τον αποκολλήσετε από την πλακέτα) , και το πιο σημαντικό, μπορείτε να αναβοσβήσετε τομέας εκκίνησηςσε ελεγκτές Arduino.

Τεχνικές προδιαγραφές

Τάση τροφοδοσίας: 5 V, DC
Διεπαφή: USB 2.0
Προγραμματισμός/Ανάγνωση: Atmel (AVR)
Διαστάσεις: 70 mm x 18 mm x 10 mm
Υποστήριξη λειτουργικού συστήματος: Windows XP / 7 / 8 / 8.1 / 10.

Γενικές πληροφορίες

Ο προγραμματιστής USBAsp είναι διανεμημένος και ανοιχτού κώδικα. πηγαίος κώδικας, οπότε αν θέλετε, μπορείτε να το φτιάξετε μόνοι σας κατεβάζοντας την πλακέτα τυπωμένου κυκλώματος και το υλικολογισμικό από τον ιστότοπο της Thomas, λόγω αυτού στο διάφορα ΔιαδίκτυοΣτα καταστήματα υπάρχουν διάφορες εκδόσεις του προγραμματιστή με την ίδια λειτουργικότητα. Στην περίπτωσή μου, θα μιλήσω για USBAsp V2.0 Κινέζος κατασκευαστήςΤεχνολογία LC.

Ο προγραμματιστής είναι συναρμολογημένος σε μπλε πλακέτα τυπωμένου κυκλώματος, στα αριστερά υπάρχει μια υποδοχή USB απαραίτητη για τη σύνδεση σε υπολογιστή. Ο ελεγκτής ATmega8A βρίσκεται στο κέντρο, δίπλα του είναι αντηχείο χαλαζία 12 MHz και ηλεκτρική καλωδίωση (αντιστάσεις, πυκνωτές). Στα δεξιά υπάρχει μια υποδοχή 10 ακίδων (δύο σειρές, πέντε ακίδες η καθεμία, βήμα 2,54 mm), η οποία παρέχει ανταλλαγή δεδομένων με τον μικροελεγκτή που αναβοσβήνει (διεπαφή ISP). Το κιτ συνοδεύεται από ένα καλώδιο, σε κάθε πλευρά του οποίου υπάρχει υποδοχή IDC (10 ακίδες), για ευκολία στο να αναβοσβήνουν ορισμένες πλακέτες (για παράδειγμα Arduino), σας συμβουλεύω να αγοράσετε έναν προσαρμογέα προσαρμογέα από 10-pin σε 6-pin . Οι εκχωρήσεις ακίδων του προγραμματιστή USBAsp φαίνονται στο παρακάτω σχήμα, μια όψη στο πλάι του προγραμματιστή.

Ανάθεση καρφίτσας:
1 – MOSI
2 – VCC
3, 8, 10 – GND
4 – TXD
5 – ΕΠΑΝΑΦΟΡΑ
6 – RXD
7 – SCK
9 – MISO

Φωτεινή ένδειξη
Κόκκινο LED G - Αναμμένο
Κόκκινο LED R - Ανταλλαγή δεδομένων

άλτες
JP1 - ΕΞΟΥΣΙΑελέγχει την τάση στην υποδοχή ISP VCC (ακίδα 2), μπορεί να ρυθμιστεί σε + 3,3V, + 5V ή να αφαιρέσει εντελώς το βραχυκυκλωτήρα εάν η προγραμματιζόμενη συσκευή έχει τη δική της τροφοδοσία ρεύματος.
JP2 - ΥΠΗΡΕΣΙΑ,Ενημερώσεις υλικολογισμικού USBasp.
JP3 - ΑΡΓΟΣπρογραμματισμός σε χαμηλές ταχύτητεςΕάν η προγραμματιζόμενη συσκευή λειτουργεί σε συχνότητα κάτω από 1,5 MHz, το SCK (ακίδα 7) θα μειώσει τη συχνότητα από 375 kHz σε 8 kHz.

Το σχηματικό διάγραμμα του προγραμματιστή USBAsp V2.0 φαίνεται στην παρακάτω εικόνα.

Λίστα υποστηριζόμενων Μικροελεγκτές AVR:
Mega Series:
ATmega8, ATmega8A, ATmega48, ATmega48A, ATmega48P, ATmega48PA, ATmega88, ATmega88A, ATmega88P, ATmega88PA, ATmega168, ATmega168A, 8PATmega28PA, 8PATmega28PA 8P, ATmega103, ATmega128 , ATmega128P, ATmega1280, ATmega1281, ATmega16, ATmega16A, ATmega161, ATmega162, ATmega163, ATmega164, ATmega164A, ATmega164P, ATmega164PA, ATmega169, ATmega169A, ATmega169P, ATmega169PA, ATmega2560, ATmega253ATmega3ATme3, ATmega2563ATmega2, 24A, ATmega324P, ATmega 324PA, ATmega329, ATmega329A, ATmega329P, ATmega329PA, ATmega3290, ATmega3290A, ATmega3290P, ATmega64 , ATmega64A, ATmega640, ATmega644, ATmega644A, ATmega644P, ATmega644PA, ATmega649, ATmega649A, ATmega649P, ATmega6490, ATmega6444Pmega6490, ATmega6490 5,
Tiny Series: ATtiny12, ATtiny13, ATtiny13A, ATtiny15, ATtiny25, ATtiny26, ATtiny45, ATtiny85, ATtiny2313, ATtiny2313A
Κλασική σειρά: AT90S1200, AT90S2313, AT90S2333, AT90S2343, AT90S4414, AT90S4433, AT90S4434, AT90S8515, AT90S8535
Σειρά Can: AT90CAN128
Σειρά PWN: AT90PWM2, AT90PWM3

Εγκατάσταση του προγράμματος οδήγησης USBAsp στα Windows 8/10

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

Αφού, σε λειτουργικό σύστημαδεν υπάρχει απαραίτητος οδηγός, στο " Διαχειριστή της συσκευής"Η συσκευή θα εμφανιστεί" USBAsp" με ένα θαυμαστικό.

Λήψη από ψηφιακή υπογραφή, αποσυμπιέστε και εκτελέστε " InstallDriver.exe"

Το πρόγραμμα οδήγησης είναι εγκατεστημένο στο " Διαχειριστή της συσκευής"θα εξαφανιστεί ΘαυμαστικόΜε " USBAsp».

Η εγκατάσταση του προγράμματος οδήγησης σε Windows XP και Windows 7 είναι παρόμοια, ο προγραμματιστής είναι έτοιμος για χρήση.

Το πρόγραμμα αναπτύχθηκε από τον " Μποντνάρ Σεργκέι», λειτουργεί όχι μόνο με τον κινέζικο προγραμματιστή USBAsp v.2.0, αλλά και με άλλους προγραμματιστές. Πρώτα απ 'όλα, κατεβάστε το πρόγραμμα, αποσυμπιέστε το και εκτελέστε το " AVRDUDEPROG.exe».
Για παράδειγμα, θα αναβοσβήσω μια κινεζική πλακέτα στην οποία είναι εγκατεστημένο το τσιπ ATmega328P. Στο πρόγραμμα, κάντε κλικ στην καρτέλα " Μικροελεγκτές" και επιλέξτε ATmega328P.

Στη συνέχεια, πρέπει να επιλέξετε το υλικολογισμικό στη γραμμή " Λάμψη" Κάντε κλικ " . . . ", μεταβείτε στο φάκελο" C:\Program Files\Arduino\hardware\arduino\avr\bootloaders\atmega"και επιλέξτε" ATmegaBOOT_168_atmega328.hex", Κάντε κλικ " Ανοιξε»

Συνδέστε τον προγραμματιστή στην πλακέτα " Arduino UNO R3", και πατήστε το κουμπί " Προγραμματισμός».

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

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

Αυτό το άρθρο περιγράφει έναν προγραμματιστή USB για μικροελεγκτές AVR, τον οποίο μπορείτε να συναρμολογήσετε μόνοι σας. Είναι χτισμένο σε έναν μικροελεγκτή Atmega8 και μπορεί να λειτουργεί από την υποδοχή USB ενός υπολογιστή. Αυτός ο προγραμματιστής είναι συμβατός με το STK500 v2.

Περιγραφή του προγραμματιστή USB

Ο προγραμματιστής USB είναι χτισμένος σε μια πλακέτα από αλουμινόχαρτο μονής όψης. Υπάρχουν 2 βραχυκυκλωτήρες στην πλακέτα: ο ένας βρίσκεται κάτω από τον σύνδεσμο SPI, ο δεύτερος βραχυκυκλωτήρας βρίσκεται κοντά στον ίδιο σύνδεσμο.

Αφού σφραγιστούν όλα τα εξαρτήματα, πρέπει να αναβοσβήσετε τον μικροελεγκτή Atmega8 με το υλικολογισμικό που δίνεται στο τέλος του άρθρου. Οι ασφάλειες που πρέπει να ρυθμιστούν κατά τον προγραμματισμό του μικροελεγκτή Atmega8 θα πρέπει να μοιάζουν με αυτό:

  • SUT1 = 0
  • ΜΠΟΤΣΖ1 = 0
  • ΜΠΟΤΣΖ0 = 0
  • CKOPT = 0
  • SPIEN = 0

Πρέπει να υπενθυμίσουμε ότι σε ορισμένα προγράμματα οι ρυθμίσεις των ασφαλειών ρυθμίζονται στην αντίθετη κατεύθυνση από αυτήν. Για παράδειγμα, στο πρόγραμμα CodeVisionAVR πρέπει να επιλέξετε τα πλαίσια δίπλα στις παραπάνω ασφάλειες και στο πρόγραμμα PonyProg αντίστροφα.

Προγραμματισμός Atmega8 μέσω θύρας LPT υπολογιστή

Το πιο γρήγορο και φθηνός τρόποςπρόγραμμα Atmega8 - χρησιμοποιήστε προγραμματιστή LPT για AVR. Ένα παρόμοιο διάγραμμα φαίνεται παρακάτω.

Ο μικροελεγκτής τροφοδοτείται από έναν απλό ρυθμιστή τάσης 78L05. Μπορείτε να χρησιμοποιήσετε το πρόγραμμα UniProf ως κέλυφος προγραμματισμού.

Όταν ενεργοποιείτε για πρώτη φορά το πρόγραμμα και όταν ο ελεγκτής δεν είναι συνδεδεμένος, πατώντας το κουμπί "LPTpins", πρέπει να διαμορφώσετε τις ακίδες της θύρας LPT ως εξής:

Όταν ξεκινά το UniProf, καθορίζει αυτόματα τον τύπο του μικροελεγκτή. Φορτώνουμε το υλικολογισμικό Atmega8_USB_prog.hex στη μνήμη UniProf και απορρίπτουμε τη σύνδεση του αρχείου EEPROM.

Ρυθμίζουμε τις ασφάλειες ως εξής (για το πρόγραμμα UniProF) πατώντας το κουμπί “FUSE”:

Για να θυμηθείτε τις ρυθμίσεις, πατήστε και τα τρία κουμπιά «Εγγραφή». Στη συνέχεια, κάνοντας κλικ στο “Erase” καθαρίζουμε πρώτα τη μνήμη του μικροελεγκτή που αναβοσβήνει. Μετά από αυτό, κάντε κλικ στο "Prog" και περιμένετε να ολοκληρωθεί το υλικολογισμικό.

Ρύθμιση προγραμματιστή USB

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

Ρύθμιση θύρας:

Ρύθμιση τερματικού:

Ρύθμιση ASCII:

Τώρα, αφού έχουν ολοκληρωθεί όλες οι διαδικασίες, τροφοδοτούμε τον προγραμματιστή USB. Η λυχνία LED HL1 θα πρέπει να αναβοσβήνει 6 φορές και στη συνέχεια να παραμένει αναμμένη.

Για να ελέγξετε τη σύνδεση μεταξύ του προγραμματιστή USB και του υπολογιστή, πατήστε το πλήκτρο «Enter» 2 φορές στο πρόγραμμα HyperTerminal. Αν όλα είναι εντάξει θα δούμε την παρακάτω εικόνα:

Εάν δεν συμβαίνει αυτό, ελέγξτε ξανά την εγκατάσταση, ειδικά τη γραμμή TxD.

Στη συνέχεια, εισάγουμε την έκδοση προγραμματιστή 2.10, καθώς χωρίς αυτήν ο προγραμματιστής δεν θα λειτουργεί με προγράμματα "ανώτερου επιπέδου". Για να το κάνετε αυτό, πληκτρολογήστε "2" και πατήστε "Enter", πληκτρολογήστε "a" (Αγγλικά) και πατήστε "Enter".

Ο προγραμματιστής USB μπορεί να αναγνωρίσει τη σύνδεση ενός προγραμματιζόμενου μικροελεγκτή. Αυτό γίνεται με τη μορφή παρακολούθησης της "έλξης" του σήματος Επαναφοράς στην πηγή ισχύος. Αυτή η λειτουργία ενεργοποιείται και απενεργοποιείται ως εξής:

  • "0", "Enter" - η λειτουργία είναι απενεργοποιημένη.
  • "1", "Enter" - η λειτουργία είναι ενεργοποιημένη.

Αλλαγή ταχύτητας προγραμματισμού (1MHz):

  • "0", "Enter" - μέγιστη ταχύτητα.
  • "1", "Enter" - μειωμένη ταχύτητα.

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

(λήψεις: 1.203)