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

ΧΡΗΣΗ EXTreme Burner για προγραμματισμό μικροελεγκτών AVR: 8 βήματα
ΧΡΗΣΗ EXTreme Burner για προγραμματισμό μικροελεγκτών AVR: 8 βήματα

Βίντεο: ΧΡΗΣΗ EXTreme Burner για προγραμματισμό μικροελεγκτών AVR: 8 βήματα

Βίντεο: ΧΡΗΣΗ EXTreme Burner για προγραμματισμό μικροελεγκτών AVR: 8 βήματα
Βίντεο: Περισσότερα από τον καφέ: Golang. Γιατί οι προγραμματιστές Java μαθαίνουν το GO ως δεύτερη γλώσσα. 2024, Ιούλιος
Anonim
ΧΡΗΣΗ EXTreme Burner για προγραμματισμό μικροελεγκτών AVR
ΧΡΗΣΗ EXTreme Burner για προγραμματισμό μικροελεγκτών AVR

Όλη η αδελφότητα των χρηστών AVR εκεί έξω, και εκείνοι που μόλις μπήκαν στη ροή, Μερικοί από εσάς ξεκινήσατε με μικροελεγκτές PIC και κάποιοι ξεκινήσατε με ATR AVR, αυτό είναι γραμμένο για εσάς!

Έτσι αγοράσατε ένα USBASP επειδή είναι φθηνό και αποτελεσματικό να αναβοσβήνει η ROM στη συσκευή σας Atmega ή ίσως το εύρος ATTINY. Αυτά μπορούν να ληφθούν για κάτω από 5 $, ως κινέζικοι κλώνοι του Open-source USB-ASP! Το AVRdude είναι το λογισμικό για τον προγραμματισμό τους.

Αναμφίβολα γνωρίζετε πώς να δημιουργείτε ένα αρχείο Hex χρησιμοποιώντας το Atmel Studio (εξακολουθώ να χρησιμοποιώ το AVR Studio v4.19 αντί για το τελευταίο v7 επειδή είναι πιο γρήγορο και ταχύτερο στον ελαφρύ φορητό υπολογιστή CPU μου)/ Netbook και εγκατάσταση WINAVR εάν διαβάζετε αυτό. Ότι γράφεται στο DotNet λειτουργεί ΑΡΓΑ! και οι νεότερες εκδόσεις έχουν σχεδιαστεί για να κάνουν το laptop σας να λειτουργεί σαν χελώνα! Μπορείτε να χρησιμοποιήσετε το Studio v4.19 τη μεγαλύτερη έκδοση του Studio από ATMEL για μικροελεγκτές AVR, μεταβαίνοντας στην έκδοση 7 όταν το χρειάζεστε πραγματικά για τα επόμενα τσιπ και να κάνετε τον χρόνο σας στο φορητό υπολογιστή πιο παραγωγικό, δουλεύοντας αντί να περιμένετε! Αυτό συνιστώ.

Μια τυπική γραμμή εντολών AVR για προγραμματισμό ενός Atmega με ένα Hex αρχείο, εκτελείται ως εξής:

ΓΡΑΦΤΕ ΣΤΟ FLASH: AVRdude -s -c avrisp -p t44 -P usb -U "flash: w: D: / ARDUINO / pwmeg1.hex: a"

Εδώ το pwmeg1.hex είναι το αρχείο hex της Intel που πρέπει να "καεί" ή να "αναβοσβήνει" στο "στόχο MCU" στο μικροελεγκτή Lingo

Αυτό είναι ένα στόμα για να θυμάστε! Θα μπορούσατε να γράψετε ένα αρχείο δέσμης και να το εκτελέσετε στη γραμμή εντολών στα παράθυρα, ονομάζοντάς το write_flash.bat. Ομοίως για την ανάγνωση των ασφαλειών, μια άλλη μπουκιά από μια σειρά που πρέπει να θυμάστε! Γίνεται κουραστικό.

για ανάγνωση flash + eeprom: AVRdude -s -c avrisp -p t44 -P usb -U "flash: r: D: / ARDUINO / pwmeg1.hex: i" -U "eeprom: r:: i"

Η λύση είναι να χρησιμοποιήσετε ένα από τα φιλικά προς το χρήστη εργαλεία GUI front-end στο AVRdude όπως το Bitburner, προγραμματιστής Khazama, τα οποία είναι σχεδόν παρόμοια στην αξία τους. eXtreme Burner. Έχω χρησιμοποιήσει το δωρεάν για χρήση εργαλείο: eXtreme Burner πολύ, ευέλικτο, αξιόπιστο, και αυτό το σεμινάριο είναι για αυτό. Δεν μπορεί μόνο να αναβοσβήνει το εξάγωνο αρχείο / πρόγραμμα στο MPU, χρησιμοποιώντας εντολές που εκδίδονται στο AVRdude στο παρασκήνιο, μπορεί επίσης να σας βοηθήσει να ορίσετε τις FUSES που είναι ένα περίπλοκο θέμα που συχνά μπερδεύει τους αρχάριους με τον προγραμματισμό AVR. Ακολουθεί ένας σύνδεσμος για ένα εξαιρετικό σεμινάριο με θέμα το FUSES στο οποίο μπορείτε να περάσετε ή να επεξεργαστείτε. Μια προειδοποίηση: Το ATMEL χρησιμοποιεί την κατάσταση "1" ενός bit FUSE για να υποδείξει την "προεπιλεγμένη" κατάσταση (μη ρυθμισμένη ή μη προγραμματισμένη) και "0" για να υποδείξει την προγραμματισμένη ή τη ρύθμιση ή την ενεργοποιημένη κατάσταση! Αυτό είναι ακριβώς αντίθετο από αυτό που κάνετε με τα κομμάτια FUSE σε έναν μικροελεγκτή PIC. Να είστε προσεκτικοί όταν τροποποιείτε τα κομμάτια ασφάλειας του ρολογιού όπως το να αλλάξετε το εσωτερικό ρολόι RC σε εξωτερικό κρύσταλλο γιατί αυτό θα δημιουργήσει προβλήματα στη σύνδεση με το τσιπ χωρίς εξωτερική ρύθμιση κρυστάλλων. Ομοίως να είστε προσεκτικοί όταν αλλάζετε κατάσταση κρίσιμων bit ασφάλειας όπως SPIEN και RESET DISABLE (αυτά πρέπει πάντα να ρυθμίζονται σε SPIEN = 0 και RESET DISABLE = 1 εάν θέλετε να συνεχίσετε να επικοινωνείτε με το MCU με το USB-ASP σας σε λειτουργία ISP / SPI !

Αν αναρωτιέστε "τι στο καλό είναι οι ασφάλειες" και "τι κάνουν"; Διαβάστε αυτό το εξαιρετικό γράψιμο:

Ένα άλλο σχετικό θέμα είναι πώς μπορείτε να ρυθμίσετε την ταχύτητα ρολογιού του AVR MPU που είναι ικανή για ταχύτητες από 1Mhz έως 16 ή 20Mhz. Υπάρχει επίσης μια ειδική επιλογή χαμηλής συχνότητας κρυστάλλου 31,25kHz, η οποία αν σχεδιαστεί σωστά μπορεί να κάνει το AVR να εξαντλήσει τις μπαταρίες AA για 3 μήνες!

Και τα δύο, δυαδικά ψηφία ασφάλειας ρολογιού (συχνότητα και τύπος εσωτερικού RC/εξωτερικού κρυστάλλου ρολογιού και άλλα bits ασφάλειας) μπορούν να ρυθμιστούν μέσω της καρτέλας FUSES στο eXtreme Burner. Πρώτα θα σας δείξουμε να διαβάζετε τη ROM και στη συνέχεια πώς να αναβοσβήνετε το εξάγωνο αρχείο χρησιμοποιώντας το eXtreme Burner. Φυσικά, θα μπορούσατε να χρησιμοποιήσετε και τους διαδικτυακούς ιστότοπους ασφαλειών AVR, αλλά η επιλογή που εξηγώ μπορεί να χρησιμοποιηθεί και όταν είστε εκτός σύνδεσης, οπουδήποτε.

Βήμα 1: Ρυθμίσεις προς εκτέλεση:

Ρυθμίσεις προς εκτέλεση
Ρυθμίσεις προς εκτέλεση
Ρυθμίσεις προς εκτέλεση
Ρυθμίσεις προς εκτέλεση
Ρυθμίσεις προς εκτέλεση
Ρυθμίσεις προς εκτέλεση
Ρυθμίσεις προς εκτέλεση
Ρυθμίσεις προς εκτέλεση

Οι εικόνες δείχνουν τις ΡΥΘΜΙΣΕΙΣ που πρέπει να γίνουν πριν ξεκινήσετε την εργασία σας. (είναι μόνο μία φορά). Στην ενότητα υπομενού «Ρυθμίσεις υλικού», επιλέγουμε 375Hz επειδή το μεγαλύτερο μέρος της μονάδας MCU από το εργοστάσιο ATMEL έχει οριστεί σε Προεπιλεγμένες ρυθμίσεις ρολογιού CPU 1 Mhz στον εσωτερικό ταλαντωτή RC. Η ταχύτητα του ISP είναι ένα τέταρτο του F_cpu. Αυτό μας δίνει την πλησιέστερη ταχύτητα 375 Khz, μπορείτε επίσης να πάτε σε χαμηλότερη ταχύτητα, δεν θα κάνει μεγάλη διαφορά. Θα μπορούσατε να προσπαθήσετε να συνδεθείτε αφήνοντας αυτό στην προεπιλογή του και να εκδώσετε ένα «διαβάστε όλα», εάν αποτύχει, μπορείτε να έρθετε εδώ και να αλλάξετε την ταχύτητα, μειώνοντάς το.

Επειδή εάν δεν μπορείτε να συνδεθείτε (το μήνυμα θα εμφανιστεί στο παράθυρο προγραμματιστή "δεν μπορώ να επικοινωνήσω με το τσιπ, δεν μπορώ να SCK" σημαίνει ότι το σήμα ρολογιού από τον υπολογιστή σας δεν θα μπορούσε να συγχρονιστεί με το τσιπ σας που προσπαθείτε να διαβάσετε ή πρόγραμμα)., δεν θα μπορείτε να αλλάξετε την ταχύτητα ρολογιού της CPU ή να αλλάξετε την ταχύτητα και τον τύπο της! Η σύνδεση λοιπόν είναι η βάση όλων! Είναι σαν "ΠΡΩΤΗ ΕΠΙΚΟΙΝΩΝΙΑ" όπως βλέπετε στις ταινίες του Σπίλμπεργκ. Εάν πετύχετε σε αυτό, μπορείτε πάντα να αυξήσετε την ταχύτητα ρολογιού του MCU προγραμματίζοντας τις ασφάλειες ανάλογα και αργότερα να χρησιμοποιήσετε υψηλότερη ταχύτητα για σύνδεση.

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

Βήμα 2: Ρύθμιση του τύπου της συσκευής σας

Ρύθμιση του τύπου της συσκευής σας
Ρύθμιση του τύπου της συσκευής σας
Ρύθμιση του τύπου της συσκευής σας
Ρύθμιση του τύπου της συσκευής σας
Ρύθμιση του τύπου της συσκευής σας
Ρύθμιση του τύπου της συσκευής σας

δείτε το στιγμιότυπο οθόνης, Εικόνα 1, έχουμε ορίσει "ATTINY44A". Πρόκειται για έναν μικροελεγκτή 14 ακίδων χωρίς UART. Το χρησιμοποιώ πρόσφατα, την έκδοση SSU. Εάν εγκαταστήσατε την έκδοση μετοχών Extreme burner δεν θα δείτε το Attiny44A στην αναπτυσσόμενη λίστα επιλογής συσκευής, θα δείτε ένα Attiny44 το οποίο για όλους τους σκοπούς μπορούμε να χρησιμοποιήσουμε για να προγραμματίσουμε επίσης το Attiny44A, για να εισαγάγουμε οποιαδήποτε συσκευή δεν περιλαμβάνεται σε αυτήν την αναπτυσσόμενη λίστα, διαβάστε το άλλο μου διδακτικό «Hacking eXtreme Burner».

Έχω χρησιμοποιήσει το Atmega88PA-AU επίσης με eXtreme Burner αλλά σε αυτό το Instructable αναφέρουμε παντού το "Attiny44A". Τώρα πώς φτιάχνετε μια έκδοση breadboard του μικροσκοπικού τετραγωνικού SMD τσιπ 7mm και το δοκιμάζετε με τα προγράμματά σας; (δείτε τις φωτογραφίες που υποδεικνύουν το μέγεθος του τσιπ), Για αυτό, δείτε το άλλο μου οδηγό όπου παρουσιάζω πώς να φτιάξω κατάλληλα Plug-in Modules Breadboard χρησιμοποιώντας τα Attiny44A-SSU και ATmega88PA-AU

Μόλις μάθετε αυτήν την τεχνική, θα μπορείτε να ελέγξετε οποιοδήποτε τσιπ είναι περίεργο να τσιμπήσετε, είτε το πακέτο SMD είτε το DIL. Για παράδειγμα, έχω χρησιμοποιήσει ακόμη και ένα τσιπ SMD που έρχεται σε ένα πακέτο τετραπλού πείρου 32 ακίδων 0,8 χιλιοστών (Atmega88A) με παρόμοιο τρόπο!

Το Or μπορείτε απλώς να χρησιμοποιήσετε την έκδοση 28pin DIL του Attiny44A για αυτό το Instructable ή οποιοδήποτε AVR χρησιμοποιείτε αυτήν τη στιγμή για να δοκιμάσετε τον προγραμματισμό eXtreme Burner για AVR.

Βήμα 3: Εκδώστε ένα ΔΙΑΒΑΣΤΕ ΟΛΑ ή ΔΙΑΒΑΣΤΕ ΛΑΜΠΑ

Εκδώστε ένα ΔΙΑΒΑΣΤΕ ΟΛΑ ή ΔΙΑΒΑΣΤΕ ΦΛΑΣ
Εκδώστε ένα ΔΙΑΒΑΣΤΕ ΟΛΑ ή ΔΙΑΒΑΣΤΕ ΦΛΑΣ
Εκδώστε ένα ΔΙΑΒΑΣΤΕ ΟΛΑ ή ΔΙΑΒΑΣΤΕ ΦΛΑΣ
Εκδώστε ένα ΔΙΑΒΑΣΤΕ ΟΛΑ ή ΔΙΑΒΑΣΤΕ ΦΛΑΣ

Συνδέστε το USBasp στη θύρα USB του φορητού σας υπολογιστή, υποθέτω ότι έχετε ήδη φορτώσει τα σωστά προγράμματα οδήγησης που συνοδεύουν τον προγραμματιστή σας και ότι έχουν εντοπιστεί σωστά. Θα πρέπει να εμφανίζεται στην ενότητα "Συσκευές και εκτυπωτές" στο μενού έναρξης των Windows, αν ήταν, μόλις συνδεθεί στη θύρα USB! Συνδέστε το τσιπ -στόχο σας στην πλακέτα του με το USBasp (οι καρφίτσες SDI // ISP που χρησιμοποιούν καλώδιο 6 ακίδων ή 10 ακίδων πρέπει να συνδεθούν μεταξύ των δύο, δηλαδή οι ακίδες: MOSI, RESET, MISO, SCK, Vcc, Ground).

Εκδώστε ΔΙΑΒΑΣΤΕ ΟΛΑ από το MENU του Xtreme Burner. Δείτε φωτογραφίες και μηνύματα που λάβαμε. Αρχικά η οθόνη σας έδειξε 'FF' για ROM στην Πρώτη καρτέλα του καυστήρα, αφού διαβάσετε όλα θα εμφανίσει το πραγματικό περιεχόμενο της ROM στο τσιπ. Εάν χρησιμοποιήσατε ένα εργοστασιακό φρέσκο τσιπ ή ένα σβησμένο τσιπ, θα δείτε FF στο περιεχόμενο μετά από μια "Διαβάστε όλα". Ένα μη προγραμματισμένο τσιπ θα εμφανίσει τη μνήμη 'FF' στη μνήμη του, το ίδιο κάνει και ένα EEPROM (δεύτερη καρτέλα στον προγραμματιστή), η τελευταία καρτέλα εμφανίζει τις FUSES.

Μετά την ανάγνωση ΟΛΩΝ οι 3 καρτέλες θα έδειχναν τις σωστές πληροφορίες που περιέχονται στο τσιπ. Πριν από αυτό δεν θα ήταν, οπότε εκδώστε πρώτα μια ανάγνωση όλων μόλις συνδέσετε τα πάντα.

Βήμα 4: Γράψτε στο Flash (το Hex αρχείο σας μεταφέρθηκε σε ROM στο τσιπ)

Γράψτε στο Flash (το Hex αρχείο σας μεταφέρθηκε σε ROM στο τσιπ)
Γράψτε στο Flash (το Hex αρχείο σας μεταφέρθηκε σε ROM στο τσιπ)
Γράψτε στο Flash (το Hex αρχείο σας μεταφέρθηκε σε ROM στο τσιπ)
Γράψτε στο Flash (το Hex αρχείο σας μεταφέρθηκε σε ROM στο τσιπ)
Γράψτε στο Flash (το Hex αρχείο σας μεταφέρθηκε σε ROM στο τσιπ)
Γράψτε στο Flash (το Hex αρχείο σας μεταφέρθηκε σε ROM στο τσιπ)

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

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

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

Το βήμα επαλήθευσης γίνεται επίσης διαβάζοντας το τσιπ, σύμφωνα με τις ΡΥΘΜΙΣΕΙΣ που κάναμε στο πρώτο βήμα. Αυτό φαίνεται στα μηνύματα ότι η επαλήθευση ήταν επίσης επιτυχής.

Βήμα 5: ΣΥΝΘΕΣΕΙΣ: Πώς να τα ρυθμίσετε σε ακραίο καυστήρα

ΣΥΝΘΕΣΕΙΣ: Πώς να τα ρυθμίσετε σε ακραίο καυστήρα
ΣΥΝΘΕΣΕΙΣ: Πώς να τα ρυθμίσετε σε ακραίο καυστήρα

Όταν εκδώσατε ΑΝΑΓΝΩΣΗ ΟΛΕΣ οι ασφάλειες διαβάστηκαν από το τσιπ. Αυτή είναι η ΠΡΩΤΗ φωτογραφία που εμφανίζεται fuses.jpg.

Τώρα ίσως πρέπει να τα αλλάξετε σε κάτι άλλο. Οι ασφάλειες αποτελούνται από 4 κουτιά στο τελευταίο TAB στην οθόνη eXtreme Burner. Δηλαδή LOW FUSE BYTE, HIGH FUSE BYTE, EXTENDED FUSE BYTE, LOCK FUSE BYTE και CALIBRATION BYTE. με τη σειρά που εμφανίζονται.

Μπορείτε απλά να χρησιμοποιήσετε μια ηλεκτρονική αριθμομηχανή ασφαλειών και να τις συμπληρώσετε όπως αυτή στο

eleccelerator.com/fusecalc/fusecalc.php?

Or μπορείτε να χρησιμοποιήσετε τον καυστήρα eXtreme για να το κάνετε για εσάς. εκτός σύνδεσης οποιαδήποτε στιγμή: Επιλέξτε από την αναπτυσσόμενη λίστα που εμφανίζεται όταν κάνετε κλικ στο κουμπί ΛΕΠΤΟΜΕΡΕΙΕΣ που βρίσκεται εκεί κάτω από κάθε είδος byte ασφάλειας. Απλώς κάντε διπλό κλικ σε οποιαδήποτε γραμμή στην οθόνη DETAILS και παρακολουθήστε την αλλαγή από SET σε CLEARED και εναλλαγή της κατάστασής της με το κλικ του ποντικιού σας σε κάθε γραμμή. Το Fuse Byte στο παραπάνω πλαίσιο θα άλλαζε ανάλογα.

Αν αναρωτιέστε "τι στο καλό είναι οι ασφάλειες" και "τι κάνουν"; Διαβάστε αυτό το εξαιρετικό γράψιμο:

www.instructables.com/id/Avr-fuse-basics-Running-an-avr-with-an-external-cl/

Βήμα 6: Ρύθμιση ασφαλειών με χρήση Υπολογιστή ασφάλειας EXtreme Burner Fuse

Ρύθμιση ασφαλειών με χρήση Υπολογιστή ασφαλειών EXtreme Burner Fuse
Ρύθμιση ασφαλειών με χρήση Υπολογιστή ασφαλειών EXtreme Burner Fuse
Ρύθμιση ασφαλειών με χρήση Υπολογιστή ασφαλειών EXtreme Burner Fuse
Ρύθμιση ασφαλειών με χρήση Υπολογιστή ασφαλειών EXtreme Burner Fuse
Ρύθμιση ασφαλειών με χρήση Υπολογιστή ασφαλειών EXtreme Burner Fuse
Ρύθμιση ασφαλειών με χρήση Υπολογιστή ασφαλειών EXtreme Burner Fuse

Μπορείτε να δείτε την οθόνη λεπτομερειών που εμφανίζεται για κάθε ένα από τα byte ασφάλειας (LOW, HIGH, EXTENDED, LOCK και Calibration). Το byte βαθμονόμησης θα πρέπει να παραμείνει αμετάβλητο καθώς δείχνει το byte δεδομένων βαθμονόμησης στο AVR που ισχύει για τον εσωτερικό ταλαντωτή RC. Το byte LOCK είναι συνήθως μόνο FF, (δεν συζητείται στις φωτογραφίες παραπάνω) καθώς δεν θα κλειδώνατε το Flash ή το EEPROM ενώ βρίσκεστε στο στάδιο εκμάθησης. Θα αλλάζατε μόνο τα χαμηλά, υψηλά και εκτεταμένα byte. Πρόσεχε !

Εάν αλλάξετε το bit SPIEN σε 1 (η μη προγραμματισμένη κατάσταση είναι 1 στους μικροελεγκτές AVR) δεν θα μπορείτε να επικοινωνήσετε με το τσιπ σας χρησιμοποιώντας USBASP ή οποιονδήποτε προγραμματιστή! Η προεπιλεγμένη κατάσταση εμφανίζεται επίσης στην οθόνη σας για κάθε bit ασφάλειας. Αυτό σας ειδοποιεί ότι η προεπιλογή SPIEN είναι πάντα 0 (προγραμματισμένη κατάσταση) για να μπορείτε να χρησιμοποιείτε τη λειτουργία SPI για προγραμματισμό ISP. Το καλώδιο εντοπισμού σφαλμάτων ή το bit DW παραμένει πάντα 1 (χωρίς προγραμματισμό) όταν το SPIEN έχει οριστεί στο 0. Αυτή είναι και η προεπιλεγμένη του κατάσταση. Επίσης, στα Extended Fuse bits «Self Programming Enable» πρέπει να είναι «1» (χωρίς προγραμματισμό) εάν χρησιμοποιείτε το USB-ASP για να προγραμματίσετε το τσιπ-στόχο σας (δεν χρησιμοποιείτε boomloader ROM όπως στο ARDUINO).

Μπορείτε να αλλάξετε τα bit CLOCK (3 στον αριθμό) για να επιλέξετε εσωτερικό RC ή εξωτερικό κρύσταλλο. Συνήθως το αφήνω για εσωτερικό RC που σας επιτρέπει να πάρετε 2 επιπλέον καρφίτσες που η απελευθέρωση του εξωτερικού κρυστάλλου συνεπάγεται τη χρήση ως καρφίτσες PORT για τα έργα AVR. Συνήθως απαιτείται εξωτερικός κρύσταλλος όταν χρειάζεστε χρονισμό υψηλής ακρίβειας στο έργο σας. Για τους μαθητές αρκεί το εσωτερικό RC.

Συνήθως μόλις εγκαταστήσετε κάποιο συνδυασμό ασφαλειών, δεν θα τον αλλάζατε. Θα ήταν εφάπαξ. Θα αναβοσβήνετε μόνο στη ROM ή μερικές φορές και στο EEPROM. Για αναβοσβήνει, το ξεχωριστό αρχείο.eep δημιουργείται από το στούντιο WINAVR / ATMEL, εάν το πρόγραμμά σας χρησιμοποιεί το EEPROM για την αποθήκευση δεδομένων. Διαφορετικά, το EEPROM παραμένει αχρησιμοποίητο, γεμάτο με τα δεδομένα «FF» που δείχνουν «ΧΩΡΙΣ ΚΑΤΑΣΤΑΣΗ ΔΕΔΟΜΕΝΩΝ» του EEPROM.

Βήμα 7: Τελική τιμή των ασφαλειών

Τελική αξία των ασφαλειών
Τελική αξία των ασφαλειών

Αφού ρυθμίσετε όλα τα bit ασφάλειας και κλείσετε τα πλαίσια DETAILS που χρησιμοποιήσατε, μπορείτε να δείτε την τιμή των bit ασφάλειας όπως υπολογίστηκε από το πρόγραμμα (δείτε την εικόνα). Το μόνο που μένει είναι να εκδώσετε ένα "Εγγραφή ασφαλειών" χρησιμοποιώντας το μενού. Και κοιτάξτε τα μηνύματα που αναφέρουν μια επιτυχημένη εγγραφή. Αργότερα, μπορείτε επίσης να εκδώσετε ένα READ ALL από το μενού και να ελέγξετε εάν οι ασφάλειες που διαβάζονται στον τελευταίο TAB της οθόνης καυστήρα συμπίπτουν με αυτό που θέλετε να γράψετε στο τσιπ. (Επαλήθευση ασφάλειας).

Θα παρατηρήσατε ότι στην αρχή αυτού του Instructable όταν κάναμε ένα READ FUSES, η οθόνη δείχνει τις ίδιες τιμές FUSE που βλέπουμε εδώ! Αυτό συμβαίνει επειδή αυτές είναι οι ασφάλειες που χρησιμοποιώ συχνά και σπάνια τις αλλάζω μόλις τις τοποθετήσω στο MCU, εκτός εάν αλλάξω τη συχνότητα από 1 Mhz σε 4Mhz για ορισμένα έργα. Το AVR μπορεί να ρυθμιστεί σε μέγιστο 20Mhz (ορισμένα τσιπ μόνο έως 16Mhz). Η συχνότητα που ορίζετε για F_cpu εξαρτάται επίσης από την Τάση που παρέχετε το τσιπ! Για παράδειγμα, εάν το τσιπ σας λειτουργεί από 1,8V Vcc έως 5,5V Vcc (αναφέρετε το φύλλο δεδομένων), δεν θα περιμένατε να τρέξει το τσιπ σας στα 20 mhz εάν του δώσατε μόνο 1,8V! περιμένεις πάρα πολλά από αυτό! Ένας πίνακας στο δελτίο δεδομένων σας λέει σε ποια τάση ανεβαίνει η συχνότητα σε ποιο σχήμα. Όσο μεγαλύτερη είναι η συχνότητα λειτουργίας των τσιπ σας, τόσο περισσότερη θερμότητα και περισσότερη ενέργεια καταναλώνει. Σκεφτείτε τη Συχνότητα όπως ο Χτύπος της καρδιάς ενός ζώου. Ένα κολιμπρί με υψηλό ρυθμό ακρόασης θα είχε υψηλότερη καύση ενέργειας ανά λεπτό σε σύγκριση με μια φάλαινα ή ελέφαντα με πολύ χαμηλότερο καρδιακό παλμό! Αλλά τότε μπορεί να κάνει πολύ περισσότερα σε μικρότερο χρονικό διάστημα. Το MCU είναι ακριβώς έτσι.

Βήμα 8: Τέλος

Τώρα έχετε ολοκληρώσει όλα τα βήματα στο eXtreme καυστήρα, έχετε διαβάσει μια ROM ενός τσιπ, ανοίξατε ένα αρχείο HEX και το μεταφέρατε στο τσιπ και επαληθεύσατε ότι το φλας ήταν εντάξει, μάθατε επίσης πώς να ρυθμίσετε τις ασφάλειες και να τις αναβοσβήνετε στο τσιπ Το

Εάν έχετε οποιεσδήποτε ερωτήσεις, θα χαρώ να απαντήσω ή να τροποποιήσω το σεμινάριο για να το καταστήσω σαφέστερο.

Για ορισμένα τσιπ μπορεί να διαπιστώσετε ότι η καταχώρισή του λείπει στην αναπτυσσόμενη λίστα επιλογής τσιπ στο μενού. Or μπορεί να αντιμετωπίσετε σφάλματα γραφής και να επαληθεύσετε σφάλματα. Σε τέτοιες περιπτώσεις, παρακαλούμε διαβάστε το άλλο "Hacking eXtreme Burner" με οδηγίες για να λύσετε το πρόβλημα.

Ευτυχισμένος προγραμματισμός.

Συνιστάται: