Προγραμματιστές ICE Debugger
Οδηγός χρήσης Προγραμματιστές και Debugger
Atmel-ICE
ΟΔΗΓΟΣ ΧΡΗΣΗΣ
Το Atmel-ICE Debugger
Το Atmel-ICE είναι ένα ισχυρό εργαλείο ανάπτυξης για τον εντοπισμό σφαλμάτων και τον προγραμματισμό μικροελεγκτών Atmel ®SAM και Atmel AVR με βάση ARM® Cortex®-M με δυνατότητα ® On-Chip Debug.
Υποστηρίζει:
- Προγραμματισμός και εντοπισμός σφαλμάτων στο chip όλων των μικροελεγκτών Atmel AVR 32-bit και στα δύο JTAG και διεπαφές aWire
- Προγραμματισμός και εντοπισμός σφαλμάτων στο chip όλων των συσκευών της οικογένειας Atmel AVR XMEGA® και στα δύο JTAG και διεπαφές 2 συρμάτων PDI
- Προγραμματισμός (JTAG, SPI, UPDI) και εντοπισμός σφαλμάτων όλων των μικροελεγκτών Atmel AVR 8-bit με υποστήριξη OCD σε οποιοδήποτε JTAG, διεπαφές debugWIRE ή UPDI
- Προγραμματισμός και αποσφαλμάτωση όλων των μικροελεγκτών Atmel SAM ARM Cortex-M σε SWD και JTAG διεπαφές
- Προγραμματισμός (TPI) όλων των μικροελεγκτών Atmel tinyAVR® 8-bit με υποστήριξη για αυτήν τη διεπαφή
Συμβουλευτείτε τη λίστα υποστηριζόμενων συσκευών στον Οδηγό χρήσης του Atmel Studio για μια πλήρη λίστα συσκευών και διεπαφών που υποστηρίζονται από αυτήν την έκδοση υλικολογισμικού.
Εισαγωγή
1.1. Εισαγωγή στο Atmel-ICE
Το Atmel-ICE είναι ένα ισχυρό εργαλείο ανάπτυξης για τον εντοπισμό σφαλμάτων και τον προγραμματισμό μικροελεγκτών Atmel SAM και Atmel AVR με βάση το ARM Cortex-M με δυνατότητα εντοπισμού σφαλμάτων On-Chip.
Υποστηρίζει:
- Προγραμματισμός και εντοπισμός σφαλμάτων στο chip όλων των μικροελεγκτών Atmel AVR UC3 και στα δύο JTAG και διεπαφές aWire
- Προγραμματισμός και εντοπισμός σφαλμάτων σε τσιπ όλων των συσκευών της οικογένειας AVR XMEGA και στα δύο JTAG και διεπαφές PDI 2wire
- Προγραμματισμός (JTAG και SPI) και εντοπισμός σφαλμάτων όλων των μικροελεγκτών AVR 8-bit με υποστήριξη OCD και στα δύο JTAG ή διεπαφές debugWIRE
- Προγραμματισμός και αποσφαλμάτωση όλων των μικροελεγκτών Atmel SAM ARM Cortex-M σε SWD και JTAG διεπαφές
- Προγραμματισμός (TPI) όλων των μικροελεγκτών Atmel tinyAVR 8-bit με υποστήριξη για αυτήν τη διεπαφή
1.2. Λειτουργίες Atmel-ICE
- Πλήρως συμβατό με το Atmel Studio
- Υποστηρίζει προγραμματισμό και εντοπισμό σφαλμάτων όλων των μικροελεγκτών Atmel AVR UC3 32 bit
- Υποστηρίζει προγραμματισμό και εντοπισμό σφαλμάτων όλων των συσκευών AVR XMEGA 8-bit
- Υποστηρίζει προγραμματισμό και εντοπισμό σφαλμάτων όλων των συσκευών 8-bit Atmel megaAVR® και tinyAVR με OCD
- Υποστηρίζει τον προγραμματισμό και τον εντοπισμό σφαλμάτων όλων των μικροελεγκτών που βασίζονται σε SAM ARM Cortex-M
- Τόμος λειτουργίας στόχουtagεύρος από 1.62V έως 5.5V
- Αντλεί λιγότερο από 3 mA από τον στόχο VTref όταν χρησιμοποιείται διεπαφή debugWIRE και λιγότερο από 1 mA για όλες τις άλλες διεπαφές
- Υποστηρίζει JTAG συχνότητες ρολογιού από 32 kHz έως 7.5 MHz
- Υποστηρίζει συχνότητες ρολογιού PDI από 32 kHz έως 7.5 MHz
- Υποστηρίζει ρυθμούς baud debugWIRE από 4kbit/s έως 0.5Mbit/s
- Υποστηρίζει ρυθμούς baud aWire από 7.5 kbit/s έως 7 Mbit/s
- Υποστηρίζει συχνότητες ρολογιού SPI από 8kHz έως 5MHz
- Υποστηρίζει ρυθμούς baud UPDI από έως και 750 kbit/s
- Υποστηρίζει συχνότητες ρολογιού SWD από 32kHz έως 10MHz
- Διασύνδεση κεντρικού υπολογιστή υψηλής ταχύτητας USB 2.0
- Καταγραφή σειριακού ίχνους ITM έως και 3MB/s
- Υποστηρίζει διεπαφές DGI SPI και USART όταν δεν γίνεται εντοπισμός σφαλμάτων ή προγραμματισμός
- Υποστηρίζει 10-pin 50-mil JTAG υποδοχή με ακροδέκτες AVR και Cortex. Το τυπικό καλώδιο ανιχνευτή υποστηρίζει κεφαλίδες AVR 6 ακίδων ISP/PDI/TPI 100 mil καθώς και 10 ακίδων 50 mil. Ένας προσαρμογέας είναι διαθέσιμος για την υποστήριξη κεφαλίδων 6 ακίδων 50 mil, 10 ακίδων 100 χιλιοστών και 20 ακίδων 100 χιλιοστών. Διατίθενται πολλές επιλογές κιτ με διαφορετικά καλώδια και προσαρμογείς.
1.3. Απαιτήσεις συστήματος
Η μονάδα Atmel-ICE απαιτεί να είναι εγκατεστημένο στον υπολογιστή σας ένα περιβάλλον εντοπισμού σφαλμάτων διεπαφής Atmel Studio έκδοσης 6.2 ή νεότερης.
Το Atmel-ICE θα πρέπει να συνδεθεί στον κεντρικό υπολογιστή χρησιμοποιώντας το καλώδιο USB που παρέχεται ή ένα πιστοποιημένο καλώδιο Micro-USB.
Ξεκινώντας με το Atmel-ICE
2.1. Πλήρες περιεχόμενα κιτ
Το πλήρες κιτ Atmel-ICE περιέχει τα εξής στοιχεία:
- Μονάδα Atmel-ICE
- Καλώδιο USB (1.8 m, υψηλής ταχύτητας, Micro-B)
- Πλακέτα προσαρμογέα που περιέχει προσαρμογείς SAM 50-mil AVR, 100-mil AVR/SAM και 100-mil 20-pin SAM
- Επίπεδο καλώδιο IDC με υποδοχή 10 ακίδων 50 mil και υποδοχή 6 ακίδων 100 mil
- Μίνι καλαμάρι 50 ακίδων 10 mil με υποδοχές 10 x 100 mil
Εικόνα 2-1. Περιεχόμενα Atmel-ICE Full Kit2.2. Βασικά περιεχόμενα κιτ
Το βασικό κιτ Atmel-ICE περιέχει αυτά τα στοιχεία:
- Μονάδα Atmel-ICE
- Καλώδιο USB (1.8 m, υψηλής ταχύτητας, Micro-B)
- Επίπεδο καλώδιο IDC με υποδοχή 10 ακίδων 50 mil και υποδοχή 6 ακίδων 100 mil
Εικόνα 2-2. Περιεχόμενα βασικού κιτ Atmel-ICE2.3. Περιεχόμενα κιτ PCBA
Το κιτ Atmel-ICE PCBA περιέχει τα εξής στοιχεία:
- Μονάδα Atmel-ICE χωρίς πλαστική ενθυλάκωση
Εικόνα 2-3. Περιεχόμενα κιτ Atmel-ICE PCBA2.4. Κιτ ανταλλακτικών
Διατίθενται τα ακόλουθα κιτ ανταλλακτικών:
- Κιτ προσαρμογέα
- Κιτ καλωδίων
Εικόνα 2-4. Περιεχόμενα κιτ προσαρμογέα Atmel-ICE2.5. Kit Overview
Οι επιλογές του κιτ Atmel-ICE εμφανίζονται διαγραμματικά εδώ:
Εικόνα 2-6. Atmel-ICE Kit Overview2.6. Συναρμολόγηση του Atmel-ICE
Η μονάδα Atmel-ICE αποστέλλεται χωρίς συνδεδεμένα καλώδια. Στο πλήρες κιτ παρέχονται δύο επιλογές καλωδίων:
- Επίπεδο καλώδιο IDC 50 ακίδων 10 mil με ISP 6 ακίδων και υποδοχές 10 ακίδων
- 50-mil 10-pin καλώδιο mini-squid με υποδοχές 10 x 100-mil
Εικόνα 2-7. Καλώδια Atmel-ICEΓια τους περισσότερους σκοπούς, μπορεί να χρησιμοποιηθεί το επίπεδο καλώδιο IDC 50 ακίδων 10 mil, συνδέοντας είτε εγγενώς με τους συνδέσμους 10 ακίδων ή 6 ακίδων είτε μέσω της πλακέτας προσαρμογέα. Τρεις προσαρμογείς παρέχονται σε ένα μικρό PCBA. Περιλαμβάνονται οι ακόλουθοι προσαρμογείς:
- 100-mil 10-pin JTAGΠροσαρμογέας /SWD
- 100-mil 20-pin SAM JTAGΠροσαρμογέας /SWD
- Προσαρμογέας SPI/debugWIRE/PDI/aWire 50 ακίδων 6 mil
Εικόνα 2-8. Προσαρμογείς Atmel-ICEΣημείωμα:
Ένα 50-mil JTAG δεν έχει παρασχεθεί προσαρμογέας – αυτό συμβαίνει επειδή το καλώδιο IDC 50 ακίδων 10 mil μπορεί να χρησιμοποιηθεί για απευθείας σύνδεση σε J 50 milTAG επί κεφαλής. Για τον αριθμό ανταλλακτικού του εξαρτήματος που χρησιμοποιείται για την υποδοχή 50 ακίδων 10 mil, ανατρέξτε στην ενότητα Αριθμοί ανταλλακτικών συνδέσμων στόχου Atmel-ICE.
Η κεφαλίδα ISP/PDI 6 ακίδων περιλαμβάνεται ως μέρος του καλωδίου IDC 10 ακίδων. Αυτός ο τερματισμός μπορεί να διακοπεί εάν δεν απαιτείται.
Για να συναρμολογήσετε το Atmel-ICE στην προεπιλεγμένη του διαμόρφωση, συνδέστε το καλώδιο IDC 10 ακίδων 50 mil στη μονάδα όπως φαίνεται παρακάτω. Φροντίστε να προσανατολίσετε το καλώδιο έτσι ώστε το κόκκινο σύρμα (πείρο 1) στο καλώδιο να ευθυγραμμίζεται με την τριγωνική ένδειξη στον μπλε ιμάντα του περιβλήματος. Το καλώδιο πρέπει να συνδέεται προς τα πάνω από τη μονάδα. Βεβαιωθείτε ότι έχετε συνδεθεί στη θύρα που αντιστοιχεί στο pinout του στόχου σας - AVR ή SAM.
Εικόνα 2-9. Σύνδεση καλωδίου Atmel-ICEΕικόνα 2-10. Σύνδεση ανιχνευτή Atmel-ICE AVR
Εικόνα 2-11. Σύνδεση ανιχνευτή Atmel-ICE SAM
2.7. Άνοιγμα του Atmel-ICE
Σημείωμα:
Για κανονική λειτουργία, η μονάδα Atmel-ICE δεν πρέπει να ανοίγει. Το άνοιγμα της μονάδας γίνεται με δική σας ευθύνη.
Πρέπει να λαμβάνονται αντιστατικές προφυλάξεις.
Το περίβλημα Atmel-ICE αποτελείται από τρία ξεχωριστά πλαστικά εξαρτήματα – επάνω κάλυμμα, κάτω κάλυμμα και μπλε ζώνη – τα οποία κουμπώνουν μεταξύ τους κατά τη συναρμολόγηση. Για να ανοίξετε τη μονάδα, απλώς εισάγετε ένα μεγάλο επίπεδο κατσαβίδι στα ανοίγματα της μπλε ζώνης, ασκήστε λίγη πίεση προς τα μέσα και στρίψτε απαλά. Επαναλάβετε τη διαδικασία στις άλλες οπές κουμπώματος και το επάνω κάλυμμα θα σκάσει.
Εικόνα 2-12. Άνοιγμα του Atmel-ICE (1)
Εικόνα 2-13. Άνοιγμα του Atmel-ICE (2)
Εικόνα 2-14. Άνοιγμα του Atmel-ICE(3)
Για να κλείσετε ξανά τη μονάδα, απλώς ευθυγραμμίστε σωστά το επάνω και το κάτω κάλυμμα και πιέστε σταθερά μεταξύ τους.
2.8. Τροφοδοσία του Atmel-ICE
Το Atmel-ICE τροφοδοτείται από το USB bus voltagμι. Απαιτεί λιγότερο από 100 mA για να λειτουργήσει και επομένως μπορεί να τροφοδοτηθεί μέσω διανομέα USB. Η λυχνία LED τροφοδοσίας θα ανάψει όταν η μονάδα είναι συνδεδεμένη στην πρίζα. Όταν δεν είναι συνδεδεμένη σε μια ενεργή περίοδο προγραμματισμού ή εντοπισμού σφαλμάτων, η μονάδα θα εισέλθει σε λειτουργία χαμηλής κατανάλωσης ενέργειας για να διατηρήσει την μπαταρία του υπολογιστή σας. Το Atmel-ICE δεν μπορεί να απενεργοποιηθεί - θα πρέπει να αποσυνδέεται όταν δεν χρησιμοποιείται.
2.9. Σύνδεση στον κεντρικό υπολογιστή
Το Atmel-ICE επικοινωνεί κυρίως χρησιμοποιώντας μια τυπική διεπαφή HID και δεν απαιτεί ειδικό πρόγραμμα οδήγησης στον κεντρικό υπολογιστή. Για να χρησιμοποιήσετε την προηγμένη λειτουργία Data Gateway του Atmel-ICE, βεβαιωθείτε ότι έχετε εγκαταστήσει το πρόγραμμα οδήγησης USB στον κεντρικό υπολογιστή. Αυτό γίνεται αυτόματα κατά την εγκατάσταση του λογισμικού front-end που παρέχεται δωρεάν από την Atmel. Βλέπω www.atmel.com για περισσότερες πληροφορίες ή για λήψη του πιο πρόσφατου λογισμικού front-end.
Το Atmel-ICE πρέπει να συνδεθεί σε μια διαθέσιμη θύρα USB στον κεντρικό υπολογιστή χρησιμοποιώντας το καλώδιο USB που παρέχεται ή το κατάλληλο καλώδιο micro με πιστοποίηση USB. Το Atmel-ICE περιέχει ελεγκτή συμβατό με USB 2.0 και μπορεί να λειτουργήσει τόσο σε λειτουργίες πλήρους ταχύτητας όσο και σε λειτουργίες υψηλής ταχύτητας. Για καλύτερα αποτελέσματα, συνδέστε το Atmel-ICE απευθείας σε έναν διανομέα υψηλής ταχύτητας συμβατό με USB 2.0 στον κεντρικό υπολογιστή χρησιμοποιώντας το παρεχόμενο καλώδιο.
2.10. Εγκατάσταση προγράμματος οδήγησης USB
2.10.1. Παράθυρα
Κατά την εγκατάσταση του Atmel-ICE σε υπολογιστή με Microsoft® Windows®, το πρόγραμμα οδήγησης USB φορτώνεται όταν το Atmel-ICE συνδεθεί για πρώτη φορά.
Σημείωμα:
Βεβαιωθείτε ότι έχετε εγκαταστήσει τα πακέτα λογισμικού της μπροστινής πλευράς πριν συνδέσετε τη μονάδα για πρώτη φορά.
Μόλις εγκατασταθεί επιτυχώς, το Atmel-ICE θα εμφανιστεί στη διαχείριση συσκευών ως "Συσκευή ανθρώπινης διεπαφής".
Σύνδεση του Atmel-ICE
3.1. Σύνδεση σε συσκευές AVR και SAM Target Devices
Το Atmel-ICE είναι εξοπλισμένο με δύο J 50 ακίδων 10 milTAG συνδετήρες. Και οι δύο σύνδεσμοι συνδέονται απευθείας ηλεκτρικά, αλλά συμμορφώνονται με δύο διαφορετικές ακίδες. το AVR JTAG κεφαλίδα και την κεφαλίδα ARM Cortex Debug. Ο σύνδεσμος θα πρέπει να επιλέγεται με βάση το pinout της πλακέτας στόχου και όχι τον τύπο MCU-στόχου – π.χample μια συσκευή SAM που είναι τοποθετημένη σε στοίβα AVR STK® 600 θα πρέπει να χρησιμοποιεί την κεφαλίδα AVR.
Διάφορα καλώδια και προσαρμογείς είναι διαθέσιμα στα διάφορα κιτ Atmel-ICE. Ένα πέραview εμφανίζονται οι επιλογές σύνδεσης.
Εικόνα 3-1. Επιλογές σύνδεσης Atmel-ICEΤο κόκκινο καλώδιο σημειώνει την ακίδα 1 του συνδετήρα 10 ακίδων 50 mil. Ο ακροδέκτης 1 του βύσματος 6 ακίδων 100 mil τοποθετείται στα δεξιά του κλειδιού όταν ο σύνδεσμος φαίνεται από το καλώδιο. Η ακίδα 1 κάθε υποδοχής στον προσαρμογέα επισημαίνεται με μια λευκή κουκκίδα. Το παρακάτω σχήμα δείχνει το pinout του καλωδίου εντοπισμού σφαλμάτων. Ο σύνδεσμος με την ένδειξη A βάζει στο πρόγραμμα εντοπισμού σφαλμάτων ενώ η πλευρά Β συνδέεται στην πλακέτα προορισμού.
Εικόνα 3-2. Εντοπισμός σφαλμάτων Καλωδίου Pinout
3.2. Σύνδεση σε JTAG Στόχος
Το Atmel-ICE είναι εξοπλισμένο με δύο J 50 ακίδων 10 milTAG συνδετήρες. Και οι δύο σύνδεσμοι συνδέονται απευθείας ηλεκτρικά, αλλά συμμορφώνονται με δύο διαφορετικές ακίδες. το AVR JTAG κεφαλίδα και την κεφαλίδα ARM Cortex Debug. Ο σύνδεσμος θα πρέπει να επιλέγεται με βάση το pinout της πλακέτας στόχου και όχι τον τύπο MCU-στόχου – π.χample μια συσκευή SAM που είναι τοποθετημένη σε μια στοίβα AVR STK600 θα πρέπει να χρησιμοποιεί την κεφαλίδα AVR.
Το προτεινόμενο pinout για το AVR J 10 ακίδωνTAG Ο σύνδεσμος φαίνεται στο Σχήμα 4-6. Το συνιστώμενο pinout για την υποδοχή ARM Cortex Debug 10 ακίδων φαίνεται στην Εικόνα 4-2.
Απευθείας σύνδεση με τυπική κεφαλίδα 10 ακίδων 50 mil
Χρησιμοποιήστε το επίπεδο καλώδιο 50 ακίδων 10 mil (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε απευθείας σε μια πλακέτα που υποστηρίζει αυτόν τον τύπο κεφαλίδας. Χρησιμοποιήστε τη θύρα σύνδεσης AVR στο Atmel-ICE για κεφαλίδες με το pinout AVR και τη θύρα σύνδεσης SAM για κεφαλίδες που συμμορφώνονται με το pinout κεφαλίδας ARM Cortex Debug.
Τα pinouts και για τις δύο θύρες σύνδεσης 10 ακίδων φαίνονται παρακάτω.
Σύνδεση σε τυπική κεφαλίδα 10 ακίδων 100 mil
Χρησιμοποιήστε έναν τυπικό προσαρμογέα 50-mil σε 100-mil για σύνδεση σε κεφαλίδες 100-mil. Για το σκοπό αυτό μπορεί να χρησιμοποιηθεί μια πλακέτα προσαρμογέα (περιλαμβάνεται σε ορισμένα κιτ) ή εναλλακτικά το JTAGΟ προσαρμογέας ICE3 μπορεί να χρησιμοποιηθεί για στόχους AVR.
Σπουδαίος:
Το JTAGΟ προσαρμογέας ICE3 100 mil δεν μπορεί να χρησιμοποιηθεί με τη θύρα σύνδεσης SAM, καθώς οι ακίδες 2 και 10 (AVR GND) στον προσαρμογέα είναι συνδεδεμένα.
Σύνδεση σε προσαρμοσμένη κεφαλίδα 100 μιλίων
Εάν η πλακέτα στόχος σας δεν έχει συμβατό J 10 ακίδωνTAG κεφαλίδα σε 50 ή 100 mil, μπορείτε να αντιστοιχίσετε σε ένα προσαρμοσμένο pinout χρησιμοποιώντας το καλώδιο "mini-squid" 10 ακίδων (περιλαμβάνεται σε ορισμένα κιτ), το οποίο παρέχει πρόσβαση σε δέκα μεμονωμένες υποδοχές των 100 mil.
Σύνδεση με κεφαλή 20 ακίδων 100 milr
Χρησιμοποιήστε την πλακέτα προσαρμογέα (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε με στόχους με κεφαλίδα 20 mil 100 ακίδων.
Πίνακας 3-1. Atmel-ICE JTAG Καρφίτσα Περιγραφή
Ονομα | AVR καρφίτσα θύρας | SAM καρφίτσα θύρας | Περιγραφή |
TCK | 1 | 4 | Ρολόι δοκιμής (σήμα ρολογιού από το Atmel-ICE στη συσκευή προορισμού). |
TMS | 5 | 2 | Επιλογή λειτουργίας δοκιμής (σήμα ελέγχου από το Atmel-ICE στη συσκευή προορισμού). |
TDI | 9 | 8 | Είσοδος δεδομένων δοκιμής (δεδομένα που μεταδίδονται από το Atmel-ICE στη συσκευή προορισμού). |
TDO | 3 | 6 | Έξοδος δεδομένων δοκιμής (δεδομένα που μεταδίδονται από τη συσκευή προορισμού στο Atmel-ICE). |
nTRST | 8 | – | Επαναφορά δοκιμής (προαιρετικό, μόνο σε ορισμένες συσκευές AVR). Χρησιμοποιείται για την επαναφορά του JTAG Ελεγκτής TAP. |
nSRST | 6 | 10 | Επαναφορά (προαιρετικό). Χρησιμοποιείται για την επαναφορά της συσκευής προορισμού. Συνιστάται η σύνδεση αυτού του pin, καθώς επιτρέπει στο Atmel-ICE να κρατά τη συσκευή-στόχο σε κατάσταση επαναφοράς, κάτι που μπορεί να είναι απαραίτητο για τον εντοπισμό σφαλμάτων σε ορισμένα σενάρια. |
VTG | 4 | 1 | Target voltagε αναφορά. Το Atmel-ICE samples the target voltage σε αυτόν τον πείρο για να τροφοδοτήσουν σωστά τους μετατροπείς στάθμης. Το Atmel-ICE αντλεί λιγότερα από 3 mA από αυτήν την ακίδα στη λειτουργία debugWIRE και λιγότερο από 1 mA σε άλλες λειτουργίες. |
GND | 2, 10 | 3, 5, 9 | Εδαφος. Όλα πρέπει να είναι συνδεδεμένα για να διασφαλιστεί ότι το Atmel-ICE και η συσκευή προορισμού μοιράζονται την ίδια αναφορά γείωσης. |
3.3. Σύνδεση σε aWire Target
Η διεπαφή aWire απαιτεί μόνο μία γραμμή δεδομένων επιπλέον των VCC και GND. Στον στόχο αυτή η γραμμή είναι η γραμμή nRESET, αν και ο εντοπισμός σφαλμάτων χρησιμοποιεί το JTAG Γραμμή TDO ως γραμμή δεδομένων.
Το συνιστώμενο pinout για την υποδοχή aWire 6 ακίδων φαίνεται στην Εικόνα 4-8.
Σύνδεση σε κεφαλίδα aWire 6 mil 100 ακίδων
Χρησιμοποιήστε τη βρύση 6 mil 100 ακίδων στο επίπεδο καλώδιο (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια τυπική κεφαλίδα aWire 100 mil.
Σύνδεση σε κεφαλίδα aWire 6 mil 50 ακίδων
Χρησιμοποιήστε την πλακέτα προσαρμογέα (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια τυπική κεφαλίδα aWire 50 mil.
Σύνδεση σε προσαρμοσμένη κεφαλίδα 100 μιλίων
Το καλώδιο mini-squid 10 ακίδων θα πρέπει να χρησιμοποιείται για τη σύνδεση μεταξύ της θύρας σύνδεσης Atmel-ICE AVR και της πλακέτας στόχου. Απαιτούνται τρεις συνδέσεις, όπως περιγράφεται στον παρακάτω πίνακα.
Πίνακας 3-2. Atmel-ICE aWire Pin Mapping
Καρφίτσες θύρας Atmel-ICE AVR |
Καρφίτσες στόχου | Μίνι-καλαμάρι καρφίτσα |
aWire pinout |
Pin 1 (TCK) | 1 | ||
Pin 2 (GND) | GND | 2 | 6 |
Pin 3 (TDO) | ΔΕΔΟΜΕΝΑ | 3 | 1 |
Pin 4 (VTG) | VTG | 4 | 2 |
Pin 5 (TMS) | 5 | ||
Pin 6 (nSRST) | 6 | ||
Pin 7 (Δεν είναι συνδεδεμένος) | 7 | ||
Pin 8 (nTRST) | 8 | ||
Pin 9 (TDI) | 9 | ||
Pin 10 (GND) | 0 |
3.4. Σύνδεση με στόχο PDI
Το συνιστώμενο pinout για τον σύνδεσμο PDI 6 ακίδων φαίνεται στην Εικόνα 4-11.
Σύνδεση σε κεφαλίδα PDI 6 mil 100 ακίδων
Χρησιμοποιήστε τη βρύση 6 mil 100 ακίδων στο επίπεδο καλώδιο (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια τυπική κεφαλίδα PDI 100 mil.
Σύνδεση σε κεφαλίδα PDI 6 mil 50 ακίδων
Χρησιμοποιήστε την πλακέτα προσαρμογέα (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια τυπική κεφαλίδα PDI 50 mil.
Σύνδεση σε προσαρμοσμένη κεφαλίδα 100 μιλίων
Το καλώδιο mini-squid 10 ακίδων θα πρέπει να χρησιμοποιείται για τη σύνδεση μεταξύ της θύρας σύνδεσης Atmel-ICE AVR και της πλακέτας στόχου. Απαιτούνται τέσσερις συνδέσεις, όπως περιγράφεται στον παρακάτω πίνακα.
Σπουδαίος:
Το pinout που απαιτείται είναι διαφορετικό από το JTAGICE mkII JTAG probe, όπου το PDI_DATA είναι συνδεδεμένο με τον ακροδέκτη 9. Το Atmel-ICE είναι συμβατό με το pinout που χρησιμοποιείται από το Atmel-ICE, JTAGΠροϊόντα ICE3, AVR ONE! και AVR Dragon™.
Πίνακας 3-3. Atmel-ICE PDI Pin Mapping
Καρφίτσες θύρας Atmel-ICE AVR | Καρφίτσες στόχου | Μίνι-καλαμάρι καρφίτσα |
aWire pinout |
Pin 1 (TCK) | 1 | ||
Pin 2 (GND) | GND | 2 | 6 |
Pin 3 (TDO) | ΔΕΔΟΜΕΝΑ | 3 | 1 |
Pin 4 (VTG) | VTG | 4 | 2 |
Pin 5 (TMS) | 5 | ||
Pin 6 (nSRST) | 6 | ||
Pin 7 (Δεν είναι συνδεδεμένος) | 7 | ||
Pin 8 (nTRST) | 8 | ||
Pin 9 (TDI) | 9 | ||
Pin 10 (GND) | 0 |
3.4 Σύνδεση σε στόχο PDI
Το συνιστώμενο pinout για τον σύνδεσμο PDI 6 ακίδων φαίνεται στην Εικόνα 4-11.
Σύνδεση σε κεφαλίδα PDI 6 mil 100 ακίδων
Χρησιμοποιήστε τη βρύση 6 mil 100 ακίδων στο επίπεδο καλώδιο (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια τυπική κεφαλίδα PDI 100 mil.
Σύνδεση σε κεφαλίδα PDI 6 mil 50 ακίδων
Χρησιμοποιήστε την πλακέτα προσαρμογέα (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια τυπική κεφαλίδα PDI 50 mil.
Σύνδεση σε προσαρμοσμένη κεφαλίδα 100 μιλίων
Το καλώδιο mini-squid 10 ακίδων θα πρέπει να χρησιμοποιείται για τη σύνδεση μεταξύ της θύρας σύνδεσης Atmel-ICE AVR και της πλακέτας στόχου. Απαιτούνται τέσσερις συνδέσεις, όπως περιγράφεται στον παρακάτω πίνακα.
Σπουδαίος:
Το pinout που απαιτείται είναι διαφορετικό από το JTAGICE mkII JTAG probe, όπου το PDI_DATA είναι συνδεδεμένο με τον ακροδέκτη 9. Το Atmel-ICE είναι συμβατό με το pinout που χρησιμοποιείται από το Atmel-ICE, JTAGICE3, AVR ONE!, και AVR Dragon™ προϊόντα.
Πίνακας 3-3. Atmel-ICE PDI Pin Mapping
Καρφίτσα θύρας Atmel-ICE AVR | Καρφίτσες στόχου | Μίνι-καλαμάρι καρφίτσα | Atmel STK600 PDI pinout |
Pin 1 (TCK) | 1 | ||
Pin 2 (GND) | GND | 2 | 6 |
Pin 3 (TDO) | PDI_DATA | 3 | 1 |
Pin 4 (VTG) | VTG | 4 | 2 |
Pin 5 (TMS) | 5 | ||
Pin 6 (nSRST) | PDI_CLK | 6 | 5 |
Pin 7 (δεν είναι συνδεδεμένος) | 7 | ||
Pin 8 (nTRST) | 8 | ||
Pin 9 (TDI) | 9 | ||
Pin 10 (GND) | 0 |
3.5 Σύνδεση σε στόχο UPDI
Το συνιστώμενο pinout για την υποδοχή UPDI 6 ακίδων φαίνεται στην Εικόνα 4-12.
Σύνδεση σε κεφαλίδα UPDI 6 mil 100 ακίδων
Χρησιμοποιήστε τη βρύση 6 mil 100 ακίδων στο επίπεδο καλώδιο (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια τυπική κεφαλίδα UPDI 100 mil.
Σύνδεση σε κεφαλίδα UPDI 6 mil 50 ακίδων
Χρησιμοποιήστε την πλακέτα προσαρμογέα (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια τυπική κεφαλίδα UPDI 50 mil.
Σύνδεση σε προσαρμοσμένη κεφαλίδα 100 μιλίων
Το καλώδιο mini-squid 10 ακίδων θα πρέπει να χρησιμοποιείται για τη σύνδεση μεταξύ της θύρας σύνδεσης Atmel-ICE AVR και της πλακέτας στόχου. Απαιτούνται τρεις συνδέσεις, όπως περιγράφεται στον παρακάτω πίνακα.
Πίνακας 3-4. Atmel-ICE UPDI Pin Mapping
Καρφίτσα θύρας Atmel-ICE AVR | Καρφίτσες στόχου | Μίνι-καλαμάρι καρφίτσα |
Atmel STK600 UPDI pinout |
Pin 1 (TCK) | 1 | ||
Pin 2 (GND) | GND | 2 | 6 |
Pin 3 (TDO) | UPDI_DATA | 3 | 1 |
Pin 4 (VTG) | VTG | 4 | 2 |
Pin 5 (TMS) | 5 | ||
Pin 6 (nSRST) | [/ΕΠΑΝΑΦΟΡΑ αίσθησης] | 6 | 5 |
Pin 7 (Δεν είναι συνδεδεμένος) | 7 | ||
Pin 8 (nTRST) | 8 | ||
Pin 9 (TDI) | 9 | ||
Pin 10 (GND) | 0 |
3.6 Σύνδεση σε έναν στόχο debugWIRE
Το συνιστώμενο pinout για την υποδοχή 6-pin debugWIRE (SPI) εμφανίζεται στον Πίνακα 3-6.
Σύνδεση σε κεφαλίδα SPI 6 mil 100 ακίδων
Χρησιμοποιήστε τη βρύση 6 mil 100 ακίδων στο επίπεδο καλώδιο (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια τυπική κεφαλίδα SPI 100 mil.
Σύνδεση σε κεφαλίδα SPI 6 mil 50 ακίδων
Χρησιμοποιήστε την πλακέτα προσαρμογέα (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια τυπική κεφαλίδα SPI 50 mil.
Σύνδεση σε προσαρμοσμένη κεφαλίδα 100 μιλίων
Το καλώδιο mini-squid 10 ακίδων θα πρέπει να χρησιμοποιείται για τη σύνδεση μεταξύ της θύρας σύνδεσης Atmel-ICE AVR και της πλακέτας στόχου. Απαιτούνται τρεις συνδέσεις, όπως περιγράφεται στον Πίνακα 3-5.
Αν και η διεπαφή debugWIRE απαιτεί μόνο μία γραμμή σήματος (RESET), το VCC και GND για να λειτουργούν σωστά, συνιστάται να έχετε πρόσβαση στην πλήρη υποδοχή SPI, έτσι ώστε η διεπαφή debugWIRE να μπορεί να ενεργοποιηθεί και να απενεργοποιηθεί χρησιμοποιώντας τον προγραμματισμό SPI.
Όταν η ασφάλεια DWEN είναι ενεργοποιημένη, η διεπαφή SPI παρακάμπτεται εσωτερικά, προκειμένου η μονάδα OCD να έχει τον έλεγχο του ακροδέκτη RESET. Το debugWIRE OCD μπορεί να απενεργοποιηθεί προσωρινά (χρησιμοποιώντας το κουμπί στην καρτέλα εντοπισμού σφαλμάτων στο παράθυρο διαλόγου ιδιοτήτων στο Atmel Studio), απελευθερώνοντας έτσι τον έλεγχο της γραμμής RESET. Στη συνέχεια, η διεπαφή SPI είναι ξανά διαθέσιμη (μόνο εάν η ασφάλεια SPIEN είναι προγραμματισμένη), επιτρέποντας στην ασφάλεια DWEN να καταργηθεί ο προγραμματισμός χρησιμοποιώντας τη διεπαφή SPI. Εάν γίνει εναλλαγή της τροφοδοσίας πριν από τον μη προγραμματισμό της ασφάλειας DWEN, η μονάδα debugWIRE θα αναλάβει και πάλι τον έλεγχο του ακροδέκτη RESET.
Σημείωμα:
Συνιστάται ιδιαίτερα να αφήσετε απλώς το Atmel Studio να χειριστεί τη ρύθμιση και το καθάρισμα της ασφάλειας DWEN.
Δεν είναι δυνατή η χρήση της διεπαφής debugWIRE εάν είναι προγραμματισμένα τα lockbit στη συσκευή προορισμού AVR. Πάντα να βεβαιώνεστε ότι τα lockbits έχουν καθαριστεί πριν προγραμματίσετε την ασφάλεια DWEN και μην ρυθμίζετε ποτέ τα lockbit ενώ είναι προγραμματισμένη η ασφάλεια DWEN. Εάν έχουν ρυθμιστεί και η ασφάλεια debugWIRE enable (DWEN) και τα lockbits, μπορεί κανείς να χρησιμοποιήσει το High Voltage Προγραμματισμός για τη διαγραφή τσιπ, και κατά συνέπεια την εκκαθάριση των κλειδαριών.
Όταν διαγραφούν τα lockbit, η διεπαφή debugWIRE θα ενεργοποιηθεί ξανά. Η διεπαφή SPI έχει τη δυνατότητα ανάγνωσης ασφαλειών, ανάγνωσης υπογραφής και διαγραφής τσιπ μόνο όταν η ασφάλεια DWEN δεν είναι προγραμματισμένη.
Πίνακας 3-5. Atmel-ICE debugWIRE Pin Mapping
Καρφίτσα θύρας Atmel-ICE AVR | Καρφίτσες στόχου |
Μίνι-καλαμάρι καρφίτσα |
Pin 1 (TCK) | 1 | |
Pin 2 (GND) | GND | 2 |
Pin 3 (TDO) | 3 | |
Pin 4 (VTG) | VTG | 4 |
Pin 5 (TMS) | 5 | |
Pin 6 (nSRST) | ΕΠΑΝΑΦΟΡΑ | 6 |
Pin 7 (Δεν είναι συνδεδεμένος) | 7 | |
Pin 8 (nTRST) | 8 | |
Pin 9 (TDI) | 9 | |
Pin 10 (GND) | 0 |
3.7 Σύνδεση με στόχο SPI
Το συνιστώμενο pinout για την υποδοχή SPI 6 ακίδων φαίνεται στην Εικόνα 4-10.
Σύνδεση σε κεφαλίδα SPI 6 mil 100 ακίδων
Χρησιμοποιήστε τη βρύση 6 mil 100 ακίδων στο επίπεδο καλώδιο (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια τυπική κεφαλίδα SPI 100 mil.
Σύνδεση σε κεφαλίδα SPI 6 mil 50 ακίδων
Χρησιμοποιήστε την πλακέτα προσαρμογέα (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια τυπική κεφαλίδα SPI 50 mil.
Σύνδεση σε προσαρμοσμένη κεφαλίδα 100 μιλίων
Το καλώδιο mini-squid 10 ακίδων θα πρέπει να χρησιμοποιείται για τη σύνδεση μεταξύ της θύρας σύνδεσης Atmel-ICE AVR και της πλακέτας στόχου. Απαιτούνται έξι συνδέσεις, όπως περιγράφεται στον παρακάτω πίνακα.
Σπουδαίος:
Η διεπαφή SPI απενεργοποιείται ουσιαστικά όταν είναι προγραμματισμένη η ασφάλεια ενεργοποίησης debugWIRE (DWEN), ακόμα κι αν η ασφάλεια SPIEN είναι επίσης προγραμματισμένη. Για να ενεργοποιήσετε ξανά τη διεπαφή SPI, η εντολή "απενεργοποίηση debugWIRE" πρέπει να εκδοθεί κατά τη διάρκεια μιας περιόδου λειτουργίας εντοπισμού σφαλμάτων debugWIRE. Η απενεργοποίηση του debugWIRE με αυτόν τον τρόπο απαιτεί η ασφάλεια SPIEN να είναι ήδη προγραμματισμένη. Εάν το Atmel Studio δεν καταφέρει να απενεργοποιήσει το debugWIRE, είναι πιθανό επειδή η ασφάλεια SPIEN ΔΕΝ είναι προγραμματισμένη. Εάν συμβαίνει αυτό, είναι απαραίτητο να χρησιμοποιήσετε ένα high-voltagΗλεκτρονική διεπαφή προγραμματισμού για τον προγραμματισμό της ασφάλειας SPIEN.
Πληροφορίες:
Η διεπαφή SPI αναφέρεται συχνά ως "ISP", καθώς ήταν η πρώτη διεπαφή προγραμματισμού συστήματος σε προϊόντα Atmel AVR. Άλλες διεπαφές είναι τώρα διαθέσιμες για τον προγραμματισμό συστήματος.
Πίνακας 3-6. Atmel-ICE SPI Pin Mapping
Καρφίτσες θύρας Atmel-ICE AVR | Καρφίτσες στόχου | Μίνι-καλαμάρι καρφίτσα |
SPI pinout |
Pin 1 (TCK) | SCK | 1 | 3 |
Pin 2 (GND) | GND | 2 | 6 |
Pin 3 (TDO) | ΜΙΣΟ | 3 | 1 |
Pin 4 (VTG) | VTG | 4 | 2 |
Pin 5 (TMS) | 5 | ||
Pin 6 (nSRST) | /ΕΠΑΝΑΦΟΡΑ | 6 | 5 |
Pin 7 (δεν είναι συνδεδεμένος) | 7 | ||
Pin 8 (nTRST) | 8 | ||
Pin 9 (TDI) | MOSI | 9 | 4 |
Pin 10 (GND) | 0 |
3.8 Σύνδεση με στόχο TPI
Το συνιστώμενο pinout για την υποδοχή TPI 6 ακίδων φαίνεται στην Εικόνα 4-13.
Σύνδεση σε κεφαλίδα TPI 6 mil 100 ακίδων
Χρησιμοποιήστε τη βρύση 6 mil 100 ακίδων στο επίπεδο καλώδιο (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια τυπική κεφαλίδα TPI 100 mil.
Σύνδεση σε κεφαλίδα TPI 6 mil 50 ακίδων
Χρησιμοποιήστε την πλακέτα προσαρμογέα (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια τυπική κεφαλίδα TPI 50 mil.
Σύνδεση σε προσαρμοσμένη κεφαλίδα 100 μιλίων
Το καλώδιο mini-squid 10 ακίδων θα πρέπει να χρησιμοποιείται για τη σύνδεση μεταξύ της θύρας σύνδεσης Atmel-ICE AVR και της πλακέτας στόχου. Απαιτούνται έξι συνδέσεις, όπως περιγράφεται στον παρακάτω πίνακα.
Πίνακας 3-7. Atmel-ICE TPI Pin Mapping
Καρφίτσες θύρας Atmel-ICE AVR | Καρφίτσες στόχου | Μίνι-καλαμάρι καρφίτσα |
TPI pinout |
Pin 1 (TCK) | ΡΟΛΟΪ | 1 | 3 |
Pin 2 (GND) | GND | 2 | 6 |
Pin 3 (TDO) | ΔΕΔΟΜΕΝΑ | 3 | 1 |
Pin 4 (VTG) | VTG | 4 | 2 |
Pin 5 (TMS) | 5 |
Pin 6 (nSRST) | /ΕΠΑΝΑΦΟΡΑ | 6 | 5 |
Pin 7 (δεν είναι συνδεδεμένος) | 7 | ||
Pin 8 (nTRST) | 8 | ||
Pin 9 (TDI) | 9 | ||
Pin 10 (GND) | 0 |
3.9 Σύνδεση με στόχο SWD
Η διεπαφή ARM SWD είναι ένα υποσύνολο του JTAG διεπαφή, χρησιμοποιώντας τις ακίδες TCK και TMS, που σημαίνει ότι κατά τη σύνδεση σε συσκευή SWD, το 10-pin JTAG ο σύνδεσμος μπορεί τεχνικά να χρησιμοποιηθεί. Το ARM JTAG και AVR JTAG Ωστόσο, οι σύνδεσμοι δεν είναι συμβατοί με pin, επομένως αυτό εξαρτάται από τη διάταξη της πλακέτας στόχου που χρησιμοποιείται. Όταν χρησιμοποιείτε STK600 ή πλακέτα που χρησιμοποιεί το AVR JTAG pinout, πρέπει να χρησιμοποιηθεί η θύρα σύνδεσης AVR στο Atmel-ICE. Κατά τη σύνδεση σε μια πλακέτα, η οποία χρησιμοποιεί το ARM JTAG pinout, πρέπει να χρησιμοποιηθεί η θύρα σύνδεσης SAM στο Atmel-ICE.
Το συνιστώμενο pinout για την υποδοχή Cortex Debug 10 ακίδων φαίνεται στην Εικόνα 4-4.
Σύνδεση με κεφαλίδα Cortex 10 ακίδων 50 mil
Χρησιμοποιήστε το επίπεδο καλώδιο (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια τυπική κεφαλίδα Cortex 50 mil.
Σύνδεση με κεφαλίδα διάταξης Cortex 10 ακίδων 100 mil
Χρησιμοποιήστε την πλακέτα προσαρμογέα (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια κεφαλίδα Cortex-pinout 100 mil.
Σύνδεση με κεφαλίδα SAM 20 mil 100 ακίδων
Χρησιμοποιήστε την πλακέτα προσαρμογέα (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια κεφαλίδα SAM 20 mil 100 ακίδων.
Σύνδεση σε προσαρμοσμένη κεφαλίδα 100 μιλίων
Το καλώδιο mini-squid 10 ακίδων θα πρέπει να χρησιμοποιείται για τη σύνδεση μεταξύ της θύρας σύνδεσης Atmel-ICE AVR ή SAM και της πλακέτας στόχου. Απαιτούνται έξι συνδέσεις, όπως περιγράφεται στον παρακάτω πίνακα.
Πίνακας 3-8. Atmel-ICE SWD Pin Mapping
Ονομα | AVR καρφίτσα θύρας | SAM καρφίτσα θύρας | Περιγραφή |
SWDC LK | 1 | 4 | Σειριακό ρολόι εντοπισμού σφαλμάτων καλωδίων. |
SWDIO | 5 | 2 | Είσοδος/Έξοδος Δεδομένων Σειριακού Εντοπισμού σφαλμάτων. |
SWO | 3 | 6 | Σειριακή έξοδος καλωδίου (προαιρετικό- δεν εφαρμόζεται σε όλες τις συσκευές). |
nSRST | 6 | 10 | Επαναφορά. |
VTG | 4 | 1 | Target voltagε αναφορά. |
GND | 2, 10 | 3, 5, 9 | Εδαφος. |
3.10 Σύνδεση σε διεπαφή πύλης δεδομένων
Το Atmel-ICE υποστηρίζει μια περιορισμένη διεπαφή πύλης δεδομένων (DGI) όταν ο εντοπισμός σφαλμάτων και ο προγραμματισμός δεν χρησιμοποιούνται. Η λειτουργικότητα είναι πανομοιότυπη με αυτή που υπάρχει στα κιτ Atmel Xplained Pro που τροφοδοτούνται από τη συσκευή Atmel EDBG.
Η διεπαφή πύλης δεδομένων είναι μια διεπαφή για ροή δεδομένων από τη συσκευή προορισμού σε έναν υπολογιστή. Αυτό προορίζεται ως βοήθημα στον εντοπισμό σφαλμάτων εφαρμογών καθώς και για την επίδειξη χαρακτηριστικών στην εφαρμογή που εκτελείται στη συσκευή προορισμού.
Το DGI αποτελείται από πολλά κανάλια για ροή δεδομένων. Το Atmel-ICE υποστηρίζει τις ακόλουθες λειτουργίες:
- USART
- SPI
Πίνακας 3-9. Atmel-ICE DGI USART Pinout
Θύρα AVR |
Θύρα SAM | Καρφίτσα DGI USART |
Περιγραφή |
3 | 6 | TX | Μετάδοση pin από το Atmel-ICE στη συσκευή προορισμού |
4 | 1 | VTG | Target voltagε (αναφορά τόμtage) |
8 | 7 | RX | Λήψη pin από τη συσκευή προορισμού στο Atmel-ICE |
9 | 8 | CLK | Ρολόι USART |
2, 10 | 3, 5, 9 | GND | Εδαφος |
Πίνακας 3-10. Atmel-ICE DGI SPI Pinout
Θύρα AVR |
Θύρα SAM | Καρφίτσα DGI SPI |
Περιγραφή |
1 | 4 | SCK | Ρολόι SPI |
3 | 6 | ΜΙΣΟ | Master In Slave Out |
4 | 1 | VTG | Target voltagε (αναφορά τόμtage) |
5 | 2 | nCS | Επιλογή chip ενεργή χαμηλή |
9 | 8 | MOSI | Master Out Slave In |
2, 10 | 3, 5, 9 | GND | Εδαφος |
Σπουδαίος: Οι διεπαφές SPI και USART δεν μπορούν να χρησιμοποιηθούν ταυτόχρονα.
Σπουδαίος: Το DGI και ο προγραμματισμός ή ο εντοπισμός σφαλμάτων δεν μπορούν να χρησιμοποιηθούν ταυτόχρονα.
Εντοπισμός σφαλμάτων σε τσιπ
4.1 Εισαγωγή
Εντοπισμός σφαλμάτων σε τσιπ
Μια μονάδα εντοπισμού σφαλμάτων σε τσιπ είναι ένα σύστημα που επιτρέπει σε έναν προγραμματιστή να παρακολουθεί και να ελέγχει την εκτέλεση σε μια συσκευή από μια εξωτερική πλατφόρμα ανάπτυξης, συνήθως μέσω μιας συσκευής γνωστής ως εντοπισμού σφαλμάτων ή προσαρμογέα εντοπισμού σφαλμάτων.
Με ένα σύστημα OCD η εφαρμογή μπορεί να εκτελεστεί διατηρώντας τα ακριβή ηλεκτρικά και χρονικά χαρακτηριστικά στο σύστημα στόχου, ενώ μπορεί να σταματήσει την εκτέλεση υπό όρους ή χειροκίνητα και να επιθεωρήσει τη ροή και τη μνήμη του προγράμματος.
Λειτουργία εκτέλεσης
Όταν βρίσκεται σε λειτουργία εκτέλεσης, η εκτέλεση του κώδικα είναι εντελώς ανεξάρτητη από το Atmel-ICE. Το Atmel-ICE θα παρακολουθεί συνεχώς τη συσκευή-στόχο για να δει εάν έχει προκύψει μια κατάσταση διακοπής. Όταν συμβεί αυτό, το σύστημα OCD θα ανακρίνει τη συσκευή μέσω της διεπαφής εντοπισμού σφαλμάτων, επιτρέποντας στον χρήστη να το κάνει view την εσωτερική κατάσταση της συσκευής.
Διακοπή λειτουργίας
Όταν επιτευχθεί ένα σημείο διακοπής, η εκτέλεση του προγράμματος διακόπτεται, αλλά ορισμένες εισόδους/εξόδους ενδέχεται να συνεχίσουν να εκτελούνται σαν να μην είχε σημειωθεί σημείο διακοπής. Για π.χample, υποθέστε ότι μια μετάδοση USART έχει μόλις ξεκινήσει όταν επιτευχθεί ένα σημείο διακοπής. Σε αυτήν την περίπτωση, το USART συνεχίζει να λειτουργεί σε πλήρη ταχύτητα ολοκληρώνοντας τη μετάδοση, παρόλο που ο πυρήνας βρίσκεται σε κατάσταση διακοπής λειτουργίας.
Σημεία διακοπής υλικού
Η ενότητα στόχος OCD περιέχει έναν αριθμό συγκριτών μετρητών προγραμμάτων που έχουν εφαρμοστεί στο υλικό. Όταν ο μετρητής προγράμματος ταιριάζει με την τιμή που είναι αποθηκευμένη σε έναν από τους καταχωρητές σύγκρισης, το OCD εισέρχεται σε λειτουργία διακοπής. Δεδομένου ότι τα σημεία διακοπής υλικού απαιτούν αποκλειστικό υλικό στη μονάδα OCD, ο αριθμός των διαθέσιμων σημείων διακοπής εξαρτάται από το μέγεθος της μονάδας OCD που εφαρμόζεται στον στόχο. Συνήθως ένας τέτοιος συγκριτής υλικού «δεσμεύεται» από το πρόγραμμα εντοπισμού σφαλμάτων για εσωτερική χρήση.
Σημεία διακοπής λογισμικού
Ένα σημείο διακοπής λογισμικού είναι μια εντολή BREAK που τοποθετείται στη μνήμη προγράμματος στη συσκευή προορισμού. Όταν φορτωθεί αυτή η οδηγία, η εκτέλεση του προγράμματος θα σπάσει και το OCD εισέρχεται σε λειτουργία διακοπής. Για να συνεχιστεί η εκτέλεση πρέπει να δοθεί μια εντολή "start" από το OCD. Δεν έχουν όλες οι συσκευές Atmel μονάδες OCD που υποστηρίζουν την οδηγία BREAK.
4.2 Συσκευές SAM με JTAG/SWD
Όλες οι συσκευές SAM διαθέτουν τη διεπαφή SWD για προγραμματισμό και εντοπισμό σφαλμάτων. Επιπλέον, ορισμένες συσκευές SAM διαθέτουν JTAG διεπαφή με την ίδια λειτουργικότητα. Ελέγξτε το φύλλο δεδομένων της συσκευής για υποστηριζόμενες διεπαφές αυτής της συσκευής.
4.2.1. Στοιχεία ARM CoreSight
Οι μικροελεγκτές Atmel ARM Cortex-M εφαρμόζουν εξαρτήματα OCD συμβατά με CoreSight. Τα χαρακτηριστικά αυτών των στοιχείων μπορεί να διαφέρουν από συσκευή σε συσκευή. Για περισσότερες πληροφορίες, συμβουλευτείτε το φύλλο δεδομένων της συσκευής καθώς και την τεκμηρίωση CoreSight που παρέχεται από την ARM.
4.2.1. JTAG Φυσική διεπαφή
Το JTAG η διεπαφή αποτελείται από έναν ελεγκτή 4-wire Test Access Port (TAP) που είναι συμβατός με το IEEE® Πρότυπο 1149.1. Το πρότυπο IEEE αναπτύχθηκε για να παρέχει έναν βιομηχανικό τρόπο αποτελεσματικής δοκιμής συνδεσιμότητας πλακέτας κυκλώματος (Σάρωση ορίων). Οι συσκευές Atmel AVR και SAM έχουν επεκτείνει αυτή τη λειτουργικότητα για να συμπεριλάβει πλήρη υποστήριξη προγραμματισμού και εντοπισμού σφαλμάτων σε τσιπ.
Εικόνα 4-1. JTAG Βασικά στοιχεία διεπαφής
4.2.2.1 SAM JTAG Pinout (σύνδεση εντοπισμού σφαλμάτων Cortex-M)
Κατά το σχεδιασμό μιας εφαρμογής PCB που περιλαμβάνει ένα Atmel SAM με το JTAG διεπαφή, συνιστάται η χρήση του pinout όπως φαίνεται στην παρακάτω εικόνα. Υποστηρίζονται και οι δύο παραλλαγές 100 mil και 50 mil αυτού του pinout, ανάλογα με την καλωδίωση και τους προσαρμογείς που περιλαμβάνονται στο συγκεκριμένο κιτ.
Εικόνα 4-2. ΣΑΜ ΤζTAG Επικεφαλίδα Pinout
Πίνακας 4-1. ΣΑΜ ΤζTAG Καρφίτσα Περιγραφή
Ονομα | Καρφίτσα |
Περιγραφή |
TCK | 4 | Ρολόι δοκιμής (σήμα ρολογιού από το Atmel-ICE στη συσκευή προορισμού). |
TMS | 2 | Επιλογή λειτουργίας δοκιμής (σήμα ελέγχου από το Atmel-ICE στη συσκευή προορισμού). |
TDI | 8 | Είσοδος δεδομένων δοκιμής (δεδομένα που μεταδίδονται από το Atmel-ICE στη συσκευή προορισμού). |
TDO | 6 | Έξοδος δεδομένων δοκιμής (δεδομένα που μεταδίδονται από τη συσκευή προορισμού στο Atmel-ICE). |
nΕΠΑΝΑΦΟΡΑ | 10 | Επαναφορά (προαιρετικό). Χρησιμοποιείται για την επαναφορά της συσκευής προορισμού. Συνιστάται η σύνδεση αυτού του pin, καθώς επιτρέπει στο Atmel-ICE να κρατά τη συσκευή-στόχο σε κατάσταση επαναφοράς, κάτι που μπορεί να είναι απαραίτητο για τον εντοπισμό σφαλμάτων σε ορισμένα σενάρια. |
VTG | 1 | Target voltagε αναφορά. Το Atmel-ICE samples the target voltage σε αυτόν τον πείρο για να τροφοδοτήσουν σωστά τους μετατροπείς στάθμης. Το Atmel-ICE αντλεί λιγότερο από 1 mA από αυτήν την ακίδα σε αυτήν τη λειτουργία. |
GND | 3, 5, 9 | Εδαφος. Όλα πρέπει να είναι συνδεδεμένα για να διασφαλιστεί ότι το Atmel-ICE και η συσκευή προορισμού μοιράζονται την ίδια αναφορά γείωσης. |
ΚΛΕΙΔΙ | 7 | Συνδέεται εσωτερικά με τον ακροδέκτη TRST στην υποδοχή AVR. Συνιστάται ως μη συνδεδεμένο. |
Ακρο: Θυμηθείτε να συμπεριλάβετε έναν πυκνωτή αποσύνδεσης μεταξύ του ακροδέκτη 1 και του GND.
4.2.2.2 JTAG Μαργαρίτα Αλυσίδα
Το JTAG Η διεπαφή επιτρέπει τη σύνδεση πολλών συσκευών σε μια ενιαία διεπαφή σε μια διαμόρφωση αλυσίδας μαργαρίτα. Οι συσκευές-στόχοι πρέπει όλες να τροφοδοτούνται από την ίδια τροφοδοσίαtage, μοιράζονται έναν κοινό κόμβο γείωσης και πρέπει να συνδεθούν όπως φαίνεται στην παρακάτω εικόνα.
Εικόνα 4-3. JTAG Daisy Chain
Κατά τη σύνδεση συσκευών σε μια αλυσίδα μαργαρίτα, πρέπει να λαμβάνονται υπόψη τα ακόλουθα σημεία:
- Όλες οι συσκευές πρέπει να έχουν κοινή γείωση, συνδεδεμένη στο GND στον αισθητήρα Atmel-ICE
- Όλες οι συσκευές πρέπει να λειτουργούν στον ίδιο τόμο στόχοtagμι. Το VTG στο Atmel-ICE πρέπει να συνδεθεί σε αυτόν τον τόμοtage.
- Το TMS και το TCK συνδέονται παράλληλα. Το TDI και το TDO συνδέονται σε μια σειρά
- Το nSRST στον αισθητήρα Atmel-ICE πρέπει να είναι συνδεδεμένο στο RESET στις συσκευές εάν κάποια από τις συσκευές στην αλυσίδα απενεργοποιεί το J τουTAG λιμάνι
- Το "Devices before" αναφέρεται στον αριθμό των JTAG συσκευές από τις οποίες πρέπει να περάσει το σήμα TDI στην αλυσίδα της μαργαρίτας πριν φτάσει στη συσκευή-στόχο. Ομοίως, "συσκευές μετά" είναι ο αριθμός των συσκευών από τις οποίες πρέπει να περάσει το σήμα μετά τη συσκευή στόχο πριν φτάσει στο Atmel-ICE TDO
- "Τα μπιτ εντολών "πριν" και "μετά" αναφέρονται στο συνολικό άθροισμα όλων των JTAG μήκη καταχωρητή εντολών συσκευών, τα οποία συνδέονται πριν και μετά τη συσκευή στόχο στην αλυσίδα μαργαρίτα
- Το συνολικό μήκος IR (δυαδικά ψηφία εντολών πριν από + Μήκος IR συσκευής στόχου Atmel + μπιτ εντολών μετά) περιορίζεται σε 256 bit κατ' ανώτατο όριο. Ο αριθμός των συσκευών στην αλυσίδα περιορίζεται σε 15 πριν και 15 μετά.
Ακρο:
Daisy chaining πρώηνample: TDI → ATmega1280 → ATxmega128A1 → ATUC3A0512 → TDO.
Για να συνδεθείτε στο Atmel AVR XMEGA® συσκευή, οι ρυθμίσεις της αλυσίδας μαργαρίτα είναι:
- Συσκευές πριν: 1
- Συσκευές μετά: 1
- Bit οδηγιών πριν: 4 (οι συσκευές AVR 8-bit έχουν 4 bit IR)
- Bit εντολών μετά από: 5 (οι συσκευές AVR 32-bit έχουν 5 bit IR)
Πίνακας 4-2. Μήκη υπερύθρων των MCU της Atmel
Τύπος συσκευής | Μήκος IR |
AVR 8-bit | 4 bit |
AVR 32-bit | 5 bit |
SAM | 4 bit |
4.2.3. Σύνδεση σε JTAG Στόχος
Το Atmel-ICE είναι εξοπλισμένο με δύο J 50 ακίδων 10 milTAG συνδετήρες. Και οι δύο σύνδεσμοι συνδέονται απευθείας ηλεκτρικά, αλλά συμμορφώνονται με δύο διαφορετικές ακίδες. το AVR JTAG κεφαλίδα και την κεφαλίδα ARM Cortex Debug. Ο σύνδεσμος θα πρέπει να επιλέγεται με βάση το pinout της πλακέτας στόχου και όχι τον τύπο MCU-στόχου – π.χample μια συσκευή SAM που είναι τοποθετημένη σε μια στοίβα AVR STK600 θα πρέπει να χρησιμοποιεί την κεφαλίδα AVR.
Το προτεινόμενο pinout για το AVR J 10 ακίδωνTAG Ο σύνδεσμος φαίνεται στο Σχήμα 4-6.
Το συνιστώμενο pinout για την υποδοχή ARM Cortex Debug 10 ακίδων φαίνεται στην Εικόνα 4-2.
Απευθείας σύνδεση με τυπική κεφαλίδα 10 ακίδων 50 mil
Χρησιμοποιήστε το επίπεδο καλώδιο 50 ακίδων 10 mil (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε απευθείας σε μια πλακέτα που υποστηρίζει αυτόν τον τύπο κεφαλίδας. Χρησιμοποιήστε τη θύρα σύνδεσης AVR στο Atmel-ICE για κεφαλίδες με το pinout AVR και τη θύρα σύνδεσης SAM για κεφαλίδες που συμμορφώνονται με το pinout κεφαλίδας ARM Cortex Debug.
Τα pinouts και για τις δύο θύρες σύνδεσης 10 ακίδων φαίνονται παρακάτω.
Σύνδεση σε τυπική κεφαλίδα 10 ακίδων 100 mil
Χρησιμοποιήστε έναν τυπικό προσαρμογέα 50-mil σε 100-mil για σύνδεση σε κεφαλίδες 100-mil. Για το σκοπό αυτό μπορεί να χρησιμοποιηθεί μια πλακέτα προσαρμογέα (περιλαμβάνεται σε ορισμένα κιτ) ή εναλλακτικά το JTAGΟ προσαρμογέας ICE3 μπορεί να χρησιμοποιηθεί για στόχους AVR.
Σπουδαίος:
Το JTAGΟ προσαρμογέας ICE3 100 mil δεν μπορεί να χρησιμοποιηθεί με τη θύρα σύνδεσης SAM, καθώς οι ακίδες 2 και 10 (AVR GND) στον προσαρμογέα είναι συνδεδεμένα.
Σύνδεση σε προσαρμοσμένη κεφαλίδα 100 μιλίων
Εάν η πλακέτα στόχος σας δεν έχει συμβατό J 10 ακίδωνTAG κεφαλίδα σε 50 ή 100 mil, μπορείτε να αντιστοιχίσετε σε ένα προσαρμοσμένο pinout χρησιμοποιώντας το καλώδιο "mini-squid" 10 ακίδων (περιλαμβάνεται σε ορισμένα κιτ), το οποίο παρέχει πρόσβαση σε δέκα μεμονωμένες υποδοχές των 100 mil.
Σύνδεση με κεφαλίδα 20 ακίδων 100 mil
Χρησιμοποιήστε την πλακέτα προσαρμογέα (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε με στόχους με κεφαλίδα 20 mil 100 ακίδων.
Πίνακας 4-3. Atmel-ICE JTAG Καρφίτσα Περιγραφή
Ονομα | AVR καρφίτσα θύρας | SAM καρφίτσα θύρας | Περιγραφή |
TCK | 1 | 4 | Ρολόι δοκιμής (σήμα ρολογιού από το Atmel-ICE στη συσκευή προορισμού). |
TMS | 5 | 2 | Επιλογή λειτουργίας δοκιμής (σήμα ελέγχου από το Atmel-ICE στη συσκευή προορισμού). |
TDI | 9 | 8 | Είσοδος δεδομένων δοκιμής (δεδομένα που μεταδίδονται από το Atmel-ICE στη συσκευή προορισμού). |
TDO | 3 | 6 | Έξοδος δεδομένων δοκιμής (δεδομένα που μεταδίδονται από τη συσκευή προορισμού στο Atmel-ICE). |
nTRST | 8 | – | Επαναφορά δοκιμής (προαιρετικό, μόνο σε ορισμένες συσκευές AVR). Χρησιμοποιείται για την επαναφορά του JTAG Ελεγκτής TAP. |
nSRST | 6 | 10 | Επαναφορά (προαιρετικό). Χρησιμοποιείται για την επαναφορά της συσκευής προορισμού. Συνιστάται η σύνδεση αυτού του pin, καθώς επιτρέπει στο Atmel-ICE να κρατά τη συσκευή-στόχο σε κατάσταση επαναφοράς, κάτι που μπορεί να είναι απαραίτητο για τον εντοπισμό σφαλμάτων σε ορισμένα σενάρια. |
VTG | 4 | 1 | Target voltagε αναφορά. Το Atmel-ICE samples the target voltage σε αυτόν τον πείρο για να τροφοδοτήσουν σωστά τους μετατροπείς στάθμης. Το Atmel-ICE αντλεί λιγότερα από 3 mA από αυτήν την ακίδα στη λειτουργία debugWIRE και λιγότερο από 1 mA σε άλλες λειτουργίες. |
GND | 2, 10 | 3, 5, 9 | Εδαφος. Όλα πρέπει να είναι συνδεδεμένα για να διασφαλιστεί ότι το Atmel-ICE και η συσκευή προορισμού μοιράζονται την ίδια αναφορά γείωσης. |
4.2.4. Φυσική διεπαφή SWD
Η διεπαφή ARM SWD είναι ένα υποσύνολο του JTAG διεπαφή, κάνοντας χρήση των ακίδων TCK και TMS. Το ARM JTAG και AVR JTAG Ωστόσο, οι υποδοχές δεν είναι συμβατές με pin, επομένως κατά το σχεδιασμό μιας εφαρμογής PCB, η οποία χρησιμοποιεί μια συσκευή SAM με SWD ή JTAG διεπαφή, συνιστάται η χρήση του pinout ARM που φαίνεται στην παρακάτω εικόνα. Η θύρα σύνδεσης SAM στο Atmel-ICE μπορεί να συνδεθεί απευθείας σε αυτό το pinout.
Εικόνα 4-4. Προτεινόμενο ARM SWD/JTAG Επικεφαλίδα Pinout
Το Atmel-ICE έχει τη δυνατότητα ροής ίχνους ITM σε μορφή UART στον κεντρικό υπολογιστή. Το ίχνος καταγράφεται στην ακίδα TRACE/SWO της κεφαλίδας 10 ακίδων (JTAG καρφίτσα TDO). Τα δεδομένα αποθηκεύονται εσωτερικά στο Atmel-ICE και αποστέλλονται μέσω της διεπαφής HID στον κεντρικό υπολογιστή. Ο μέγιστος αξιόπιστος ρυθμός δεδομένων είναι περίπου 3MB/s.
4.2.5. Σύνδεση σε έναν στόχο SWD
Η διεπαφή ARM SWD είναι ένα υποσύνολο του JTAG διεπαφή, χρησιμοποιώντας τις ακίδες TCK και TMS, που σημαίνει ότι κατά τη σύνδεση σε συσκευή SWD, το 10-pin JTAG ο σύνδεσμος μπορεί τεχνικά να χρησιμοποιηθεί. Το ARM JTAG και AVR JTAG Ωστόσο, οι σύνδεσμοι δεν είναι συμβατοί με pin, επομένως αυτό εξαρτάται από τη διάταξη της πλακέτας στόχου που χρησιμοποιείται. Όταν χρησιμοποιείτε STK600 ή πλακέτα που χρησιμοποιεί το AVR JTAG pinout, πρέπει να χρησιμοποιηθεί η θύρα σύνδεσης AVR στο Atmel-ICE. Κατά τη σύνδεση σε μια πλακέτα, η οποία χρησιμοποιεί το ARM JTAG pinout, πρέπει να χρησιμοποιηθεί η θύρα σύνδεσης SAM στο Atmel-ICE.
Το συνιστώμενο pinout για την υποδοχή Cortex Debug 10 ακίδων φαίνεται στην Εικόνα 4-4.
Σύνδεση με κεφαλίδα Cortex 10 ακίδων 50 mil
Χρησιμοποιήστε το επίπεδο καλώδιο (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια τυπική κεφαλίδα Cortex 50 mil.
Σύνδεση με κεφαλίδα διάταξης Cortex 10 ακίδων 100 mil
Χρησιμοποιήστε την πλακέτα προσαρμογέα (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια κεφαλίδα Cortex-pinout 100 mil.
Σύνδεση με κεφαλίδα SAM 20 mil 100 ακίδων
Χρησιμοποιήστε την πλακέτα προσαρμογέα (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια κεφαλίδα SAM 20 mil 100 ακίδων.
Σύνδεση σε προσαρμοσμένη κεφαλίδα 100 μιλίων
Το καλώδιο mini-squid 10 ακίδων θα πρέπει να χρησιμοποιείται για τη σύνδεση μεταξύ της θύρας σύνδεσης Atmel-ICE AVR ή SAM και της πλακέτας στόχου. Απαιτούνται έξι συνδέσεις, όπως περιγράφεται στον παρακάτω πίνακα.
Πίνακας 4-4. Atmel-ICE SWD Pin Mapping
Ονομα | AVR καρφίτσα θύρας | SAM καρφίτσα θύρας | Περιγραφή |
SWDC LK | 1 | 4 | Σειριακό ρολόι εντοπισμού σφαλμάτων καλωδίων. |
SWDIO | 5 | 2 | Είσοδος/Έξοδος Δεδομένων Σειριακού Εντοπισμού σφαλμάτων. |
SWO | 3 | 6 | Σειριακή έξοδος καλωδίου (προαιρετικό- δεν εφαρμόζεται σε όλες τις συσκευές). |
nSRST | 6 | 10 | Επαναφορά. |
VTG | 4 | 1 | Target voltagε αναφορά. |
GND | 2, 10 | 3, 5, 9 | Εδαφος. |
4.2.6 Ειδικές εκτιμήσεις
Πείρο ΣΒΗΣΗΣ
Ορισμένες συσκευές SAM περιλαμβάνουν μια καρφίτσα ERASE η οποία διεκδικεί την πλήρη διαγραφή τσιπ και ξεκλείδωμα συσκευών στις οποίες έχει οριστεί το bit ασφαλείας. Αυτή η δυνατότητα συνδέεται με την ίδια τη συσκευή καθώς και με τον ελεγκτή φλας και δεν αποτελεί μέρος του πυρήνα ARM.
Η καρφίτσα ERASE ΔΕΝ αποτελεί μέρος οποιασδήποτε κεφαλίδας εντοπισμού σφαλμάτων και, επομένως, το Atmel-ICE δεν μπορεί να διεκδικήσει αυτό το σήμα για να ξεκλειδώσει μια συσκευή. Σε τέτοιες περιπτώσεις, ο χρήστης θα πρέπει να εκτελέσει τη διαγραφή με μη αυτόματο τρόπο πριν ξεκινήσει μια περίοδο λειτουργίας εντοπισμού σφαλμάτων.
Φυσικές διεπαφές JTAG διεπαφή
Η γραμμή RESET θα πρέπει πάντα να είναι συνδεδεμένη έτσι ώστε το Atmel-ICE να μπορεί να ενεργοποιήσει το JTAG διεπαφή.
Διεπαφή SWD
Η γραμμή RESET θα πρέπει πάντα να είναι συνδεδεμένη έτσι ώστε το Atmel-ICE να μπορεί να ενεργοποιήσει τη διεπαφή SWD.
4.3 Συσκευές AVR UC3 με JTAG/aWire
Όλες οι συσκευές AVR UC3 διαθέτουν το JTAG διεπαφή για προγραμματισμό και εντοπισμό σφαλμάτων. Επιπλέον, ορισμένες συσκευές AVR UC3 διαθέτουν τη διεπαφή aWire με την ίδια λειτουργικότητα χρησιμοποιώντας ένα μόνο καλώδιο. Ελέγξτε το φύλλο δεδομένων της συσκευής για υποστηριζόμενες διεπαφές αυτής της συσκευής
4.3.1 Atmel AVR UC3 On-chip Debug System
Το σύστημα OCD Atmel AVR UC3 έχει σχεδιαστεί σύμφωνα με το πρότυπο Nexus 2.0 (IEEE-ISTO 5001™-2003), το οποίο είναι ένα εξαιρετικά ευέλικτο και ισχυρό πρότυπο ανοιχτού εντοπισμού σφαλμάτων σε τσιπ για μικροελεγκτές 32 bit. Υποστηρίζει τις ακόλουθες δυνατότητες:
- Λύση εντοπισμού σφαλμάτων συμβατή με το Nexus
- Το OCD υποστηρίζει οποιαδήποτε ταχύτητα CPU
- Έξι σημεία διακοπής υλικού μετρητή προγράμματος
- Δύο σημεία διακοπής δεδομένων
- Τα σημεία διακοπής μπορούν να διαμορφωθούν ως σημεία παρακολούθησης
- Τα σημεία διακοπής υλικού μπορούν να συνδυαστούν για να δώσουν θραύση στις περιοχές
- Απεριόριστος αριθμός σημείων διακοπής προγράμματος χρήστη (με χρήση BREAK)
- Ανίχνευση διακλάδωσης μετρητή προγράμματος σε πραγματικό χρόνο, ίχνος δεδομένων, ίχνος διεργασίας (υποστηρίζεται μόνο από προγράμματα εντοπισμού σφαλμάτων με παράλληλη θύρα καταγραφής ίχνους)
Για περισσότερες πληροφορίες σχετικά με το σύστημα OCD AVR UC3, συμβουλευτείτε τα Τεχνικά Εγχειρίδια Αναφοράς AVR32UC, που βρίσκονται στο www.atmel.com/uc3.
4.3.2. JTAG Φυσική διεπαφή
Το JTAG η διεπαφή αποτελείται από έναν ελεγκτή 4-wire Test Access Port (TAP) που είναι συμβατός με το IEEE® Πρότυπο 1149.1. Το πρότυπο IEEE αναπτύχθηκε για να παρέχει έναν βιομηχανικό τρόπο αποτελεσματικής δοκιμής συνδεσιμότητας πλακέτας κυκλώματος (Σάρωση ορίων). Οι συσκευές Atmel AVR και SAM έχουν επεκτείνει αυτή τη λειτουργικότητα για να συμπεριλάβει πλήρη υποστήριξη προγραμματισμού και εντοπισμού σφαλμάτων σε τσιπ.
Εικόνα 4-5. JTAG Βασικά στοιχεία διεπαφής
4.3.2.1 AVR JTAG Pinout
Κατά το σχεδιασμό μιας εφαρμογής PCB, η οποία περιλαμβάνει ένα Atmel AVR με το JTAG διεπαφή, συνιστάται η χρήση του pinout όπως φαίνεται στην παρακάτω εικόνα. Υποστηρίζονται και οι δύο παραλλαγές 100 mil και 50 mil αυτού του pinout, ανάλογα με την καλωδίωση και τους προσαρμογείς που περιλαμβάνονται στο συγκεκριμένο κιτ.
Εικόνα 4-6. AVR JTAG Επικεφαλίδα Pinout
Τραπέζι 4-5. AVR JTAG Καρφίτσα Περιγραφή
Ονομα | Καρφίτσα |
Περιγραφή |
TCK | 1 | Ρολόι δοκιμής (σήμα ρολογιού από το Atmel-ICE στη συσκευή προορισμού). |
TMS | 5 | Επιλογή λειτουργίας δοκιμής (σήμα ελέγχου από το Atmel-ICE στη συσκευή προορισμού). |
TDI | 9 | Είσοδος δεδομένων δοκιμής (δεδομένα που μεταδίδονται από το Atmel-ICE στη συσκευή προορισμού). |
TDO | 3 | Έξοδος δεδομένων δοκιμής (δεδομένα που μεταδίδονται από τη συσκευή προορισμού στο Atmel-ICE). |
nTRST | 8 | Επαναφορά δοκιμής (προαιρετικό, μόνο σε ορισμένες συσκευές AVR). Χρησιμοποιείται για την επαναφορά του JTAG Ελεγκτής TAP. |
nSRST | 6 | Επαναφορά (προαιρετικό). Χρησιμοποιείται για την επαναφορά της συσκευής προορισμού. Συνιστάται η σύνδεση αυτού του pin, καθώς επιτρέπει στο Atmel-ICE να κρατά τη συσκευή-στόχο σε κατάσταση επαναφοράς, κάτι που μπορεί να είναι απαραίτητο για τον εντοπισμό σφαλμάτων σε ορισμένα σενάρια. |
VTG | 4 | Target voltagε αναφορά. Το Atmel-ICE samples the target voltage σε αυτόν τον πείρο για να τροφοδοτήσουν σωστά τους μετατροπείς στάθμης. Το Atmel-ICE αντλεί λιγότερα από 3 mA από αυτήν την ακίδα στη λειτουργία debugWIRE και λιγότερο από 1 mA σε άλλες λειτουργίες. |
GND | 2, 10 | Εδαφος. Και τα δύο πρέπει να είναι συνδεδεμένα για να διασφαλιστεί ότι το Atmel-ICE και η συσκευή προορισμού μοιράζονται την ίδια αναφορά γείωσης. |
Ακρο: Θυμηθείτε να συμπεριλάβετε έναν πυκνωτή αποσύνδεσης μεταξύ του ακροδέκτη 4 και του GND.
4.3.2.2 JTAG Μαργαρίτα Αλυσίδα
Το JTAG Η διεπαφή επιτρέπει τη σύνδεση πολλών συσκευών σε μια ενιαία διεπαφή σε μια διαμόρφωση αλυσίδας μαργαρίτα. Οι συσκευές-στόχοι πρέπει όλες να τροφοδοτούνται από την ίδια τροφοδοσίαtage, μοιράζονται έναν κοινό κόμβο γείωσης και πρέπει να συνδεθούν όπως φαίνεται στην παρακάτω εικόνα.
Εικόνα 4-7. JTAG Daisy Chain
Κατά τη σύνδεση συσκευών σε μια αλυσίδα μαργαρίτα, πρέπει να λαμβάνονται υπόψη τα ακόλουθα σημεία:
- Όλες οι συσκευές πρέπει να έχουν κοινή γείωση, συνδεδεμένη στο GND στον αισθητήρα Atmel-ICE
- Όλες οι συσκευές πρέπει να λειτουργούν στον ίδιο τόμο στόχοtagμι. Το VTG στο Atmel-ICE πρέπει να συνδεθεί σε αυτόν τον τόμοtage.
- Το TMS και το TCK συνδέονται παράλληλα. Το TDI και το TDO συνδέονται σε σειριακή αλυσίδα.
- Το nSRST στον αισθητήρα Atmel-ICE πρέπει να είναι συνδεδεμένο στο RESET στις συσκευές εάν κάποια από τις συσκευές στην αλυσίδα απενεργοποιεί το J τουTAG λιμάνι
- Το "Devices before" αναφέρεται στον αριθμό των JTAG συσκευές από τις οποίες πρέπει να περάσει το σήμα TDI στην αλυσίδα της μαργαρίτας πριν φτάσει στη συσκευή-στόχο. Ομοίως, "συσκευές μετά" είναι ο αριθμός των συσκευών από τις οποίες πρέπει να περάσει το σήμα μετά τη συσκευή στόχο πριν φτάσει στο Atmel-ICE TDO
- "Τα μπιτ εντολών "πριν" και "μετά" αναφέρονται στο συνολικό άθροισμα όλων των JTAG μήκη καταχωρητή εντολών συσκευών, τα οποία συνδέονται πριν και μετά τη συσκευή στόχο στην αλυσίδα μαργαρίτα
- Το συνολικό μήκος IR (δυαδικά ψηφία εντολών πριν από + Μήκος IR συσκευής στόχου Atmel + μπιτ εντολών μετά) περιορίζεται σε 256 bit κατ' ανώτατο όριο. Ο αριθμός των συσκευών στην αλυσίδα περιορίζεται σε 15 πριν και 15 μετά.
Ακρο:
Daisy chaining πρώηνample: TDI → ATmega1280 → ATxmega128A1 → ATUC3A0512 → TDO.
Για να συνδεθείτε στο Atmel AVR XMEGA® συσκευή, οι ρυθμίσεις της αλυσίδας μαργαρίτα είναι:
- Συσκευές πριν: 1
- Συσκευές μετά: 1
- Bit οδηγιών πριν: 4 (οι συσκευές AVR 8-bit έχουν 4 bit IR)
- Bit εντολών μετά από: 5 (οι συσκευές AVR 32-bit έχουν 5 bit IR)
Πίνακας 4-6. IR Lengths του Atmel MCUS
Τύπος συσκευής | Μήκος IR |
AVR 8-bit | 4 bit |
AVR 32-bit | 5 bit |
SAM | 4 bit |
4.3.3.Σύνδεση σε JTAG Στόχος
Το Atmel-ICE είναι εξοπλισμένο με δύο J 50 ακίδων 10 milTAG συνδετήρες. Και οι δύο σύνδεσμοι συνδέονται απευθείας ηλεκτρικά, αλλά συμμορφώνονται με δύο διαφορετικές ακίδες. το AVR JTAG κεφαλίδα και την κεφαλίδα ARM Cortex Debug. Ο σύνδεσμος θα πρέπει να επιλέγεται με βάση το pinout της πλακέτας στόχου και όχι τον τύπο MCU-στόχου – π.χample μια συσκευή SAM που είναι τοποθετημένη σε μια στοίβα AVR STK600 θα πρέπει να χρησιμοποιεί την κεφαλίδα AVR.
Το προτεινόμενο pinout για το AVR J 10 ακίδωνTAG Ο σύνδεσμος φαίνεται στο Σχήμα 4-6.
Το συνιστώμενο pinout για την υποδοχή ARM Cortex Debug 10 ακίδων φαίνεται στην Εικόνα 4-2.
Απευθείας σύνδεση με τυπική κεφαλίδα 10 ακίδων 50 mil
Χρησιμοποιήστε το επίπεδο καλώδιο 50 ακίδων 10 mil (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε απευθείας σε μια πλακέτα που υποστηρίζει αυτόν τον τύπο κεφαλίδας. Χρησιμοποιήστε τη θύρα σύνδεσης AVR στο Atmel-ICE για κεφαλίδες με το pinout AVR και τη θύρα σύνδεσης SAM για κεφαλίδες που συμμορφώνονται με το pinout κεφαλίδας ARM Cortex Debug.
Τα pinouts και για τις δύο θύρες σύνδεσης 10 ακίδων φαίνονται παρακάτω.
Σύνδεση σε τυπική κεφαλίδα 10 ακίδων 100 mil
Χρησιμοποιήστε έναν τυπικό προσαρμογέα 50-mil σε 100-mil για σύνδεση σε κεφαλίδες 100-mil. Για το σκοπό αυτό μπορεί να χρησιμοποιηθεί μια πλακέτα προσαρμογέα (περιλαμβάνεται σε ορισμένα κιτ) ή εναλλακτικά το JTAGΟ προσαρμογέας ICE3 μπορεί να χρησιμοποιηθεί για στόχους AVR.
Σπουδαίος:
Το JTAGΟ προσαρμογέας ICE3 100 mil δεν μπορεί να χρησιμοποιηθεί με τη θύρα σύνδεσης SAM, καθώς οι ακίδες 2 και 10 (AVR GND) στον προσαρμογέα είναι συνδεδεμένα.
Σύνδεση σε προσαρμοσμένη κεφαλίδα 100 μιλίων
Εάν η πλακέτα στόχος σας δεν έχει συμβατό J 10 ακίδωνTAG κεφαλίδα σε 50 ή 100 mil, μπορείτε να αντιστοιχίσετε σε ένα προσαρμοσμένο pinout χρησιμοποιώντας το καλώδιο "mini-squid" 10 ακίδων (περιλαμβάνεται σε ορισμένα κιτ), το οποίο παρέχει πρόσβαση σε δέκα μεμονωμένες υποδοχές των 100 mil.
Σύνδεση με κεφαλίδα 20 ακίδων 100 mil
Χρησιμοποιήστε την πλακέτα προσαρμογέα (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε με στόχους με κεφαλίδα 20 mil 100 ακίδων.
Πίνακας 4-7. Atmel-ICE JTAG Καρφίτσα Περιγραφή
Ονομα |
Καρφίτσα θύρας AVR | Καρφίτσα θύρας SAM |
Περιγραφή |
TCK | 1 | 4 | Ρολόι δοκιμής (σήμα ρολογιού από το Atmel-ICE στη συσκευή προορισμού). |
TMS | 5 | 2 | Επιλογή λειτουργίας δοκιμής (σήμα ελέγχου από το Atmel-ICE στη συσκευή προορισμού). |
TDI | 9 | 8 | Είσοδος δεδομένων δοκιμής (δεδομένα που μεταδίδονται από το Atmel-ICE στη συσκευή προορισμού). |
TDO | 3 | 6 | Έξοδος δεδομένων δοκιμής (δεδομένα που μεταδίδονται από τη συσκευή προορισμού στο Atmel-ICE). |
nTRST | 8 | – | Επαναφορά δοκιμής (προαιρετικό, μόνο σε ορισμένες συσκευές AVR). Χρησιμοποιείται για την επαναφορά του JTAG Ελεγκτής TAP. |
nSRST | 6 | 10 | Επαναφορά (προαιρετικό). Χρησιμοποιείται για την επαναφορά της συσκευής προορισμού. Συνιστάται η σύνδεση αυτού του pin, καθώς επιτρέπει στο Atmel-ICE να κρατά τη συσκευή-στόχο σε κατάσταση επαναφοράς, κάτι που μπορεί να είναι απαραίτητο για τον εντοπισμό σφαλμάτων σε ορισμένα σενάρια. |
VTG | 4 | 1 | Target voltagε αναφορά. Το Atmel-ICE samples the target voltage σε αυτόν τον πείρο για να τροφοδοτήσουν σωστά τους μετατροπείς στάθμης. Το Atmel-ICE αντλεί λιγότερα από 3 mA από αυτήν την ακίδα στη λειτουργία debugWIRE και λιγότερο από 1 mA σε άλλες λειτουργίες. |
GND | 2, 10 | 3, 5, 9 | Εδαφος. Όλα πρέπει να είναι συνδεδεμένα για να διασφαλιστεί ότι το Atmel-ICE και η συσκευή προορισμού μοιράζονται την ίδια αναφορά γείωσης. |
4.3.4 aWire Φυσική Διασύνδεση
Η διεπαφή aWire χρησιμοποιεί το καλώδιο RESET της συσκευής AVR για να επιτρέπει λειτουργίες προγραμματισμού και εντοπισμού σφαλμάτων. Μια ειδική ακολουθία ενεργοποίησης μεταδίδεται από το Atmel-ICE, το οποίο απενεργοποιεί την προεπιλεγμένη λειτουργία RESET του pin. Κατά το σχεδιασμό μιας εφαρμογής PCB, η οποία περιλαμβάνει ένα Atmel AVR με τη διεπαφή aWire, συνιστάται η χρήση του pinout όπως φαίνεται στην Εικόνα 4 -8. Υποστηρίζονται και οι δύο παραλλαγές 100 mil και 50 mil αυτού του pinout, ανάλογα με την καλωδίωση και τους προσαρμογείς που περιλαμβάνονται στο συγκεκριμένο κιτ.
Εικόνα 4-8. a Wire Header Pinout
Ακρο:
Δεδομένου ότι το aWire είναι μια διεπαφή μισής διπλής όψης, συνιστάται μια αντίσταση έλξης στη γραμμή RESET της τάξης των 47 kΩ για την αποφυγή λανθασμένης ανίχνευσης bit εκκίνησης κατά την αλλαγή κατεύθυνσης.
Η διεπαφή aWire μπορεί να χρησιμοποιηθεί τόσο ως διεπαφή προγραμματισμού όσο και ως διεπαφή εντοπισμού σφαλμάτων. Όλες οι δυνατότητες του συστήματος OCD είναι διαθέσιμες μέσω του J 10-pinTAG Η διεπαφή μπορεί επίσης να προσπελαστεί χρησιμοποιώντας το aWire.
4.3.5 Σύνδεση σε aWire Target
Η διεπαφή aWire απαιτεί μόνο μία γραμμή δεδομένων εκτός από το VCC και GND. Στον στόχο αυτή η γραμμή είναι η γραμμή nRESET, αν και ο εντοπισμός σφαλμάτων χρησιμοποιεί το JTAG Γραμμή TDO ως γραμμή δεδομένων.
Το συνιστώμενο pinout για την υποδοχή aWire 6 ακίδων φαίνεται στην Εικόνα 4-8.
Σύνδεση σε κεφαλίδα aWire 6 mil 100 ακίδων
Χρησιμοποιήστε τη βρύση 6 mil 100 ακίδων στο επίπεδο καλώδιο (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια τυπική κεφαλίδα aWire 100 mil.
Σύνδεση σε κεφαλίδα aWire 6 mil 50 ακίδων
Χρησιμοποιήστε την πλακέτα προσαρμογέα (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια τυπική κεφαλίδα aWire 50 mil.
Σύνδεση σε προσαρμοσμένη κεφαλίδα 100 μιλίων
Το καλώδιο mini-squid 10 ακίδων θα πρέπει να χρησιμοποιείται για τη σύνδεση μεταξύ της θύρας σύνδεσης Atmel-ICE AVR και της πλακέτας στόχου. Απαιτούνται τρεις συνδέσεις, όπως περιγράφεται στον παρακάτω πίνακα.
Πίνακας 4-8. Atmel-ICE aWire Pin Mapping
Καρφίτσες θύρας Atmel-ICE AVR | Καρφίτσες στόχου | Μίνι-καλαμάρι καρφίτσα |
aWire pinout |
Pin 1 (TCK) | 1 | ||
Pin 2 (GND) | GND | 2 | 6 |
Pin 3 (TDO) | ΔΕΔΟΜΕΝΑ | 3 | 1 |
Pin 4 (VTG) | VTG | 4 | 2 |
Pin 5 (TMS) | 5 | ||
Pin 6 (nSRST) | 6 | ||
Pin 7 (Δεν είναι συνδεδεμένος) | 7 | ||
Pin 8 (nTRST) | 8 | ||
Pin 9 (TDI) | 9 | ||
Pin 10 (GND) | 0 |
4.3.6. Ειδικές Θεωρήσεις
JTAG διεπαφή
Σε ορισμένες συσκευές Atmel AVR UC3 το JTAG Η θύρα δεν είναι ενεργοποιημένη από προεπιλογή. Όταν χρησιμοποιείτε αυτές τις συσκευές, είναι απαραίτητο να συνδέσετε τη γραμμή RESET έτσι ώστε το Atmel-ICE να ενεργοποιήσει το JTAG διεπαφή.
aWire interface
Ο ρυθμός baud των επικοινωνιών aWire εξαρτάται από τη συχνότητα του ρολογιού του συστήματος, καθώς τα δεδομένα πρέπει να συγχρονίζονται μεταξύ αυτών των δύο τομέων. Το Atmel-ICE θα ανιχνεύσει αυτόματα ότι το ρολόι του συστήματος έχει χαμηλώσει και θα βαθμονομήσει εκ νέου τον ρυθμό baud του ανάλογα. Η αυτόματη βαθμονόμηση λειτουργεί μόνο σε συχνότητα ρολογιού συστήματος 8 kHz. Η εναλλαγή σε χαμηλότερο ρολόι συστήματος κατά τη διάρκεια μιας περιόδου λειτουργίας εντοπισμού σφαλμάτων μπορεί να προκαλέσει απώλεια επαφής με τον στόχο.
Εάν απαιτείται, ο ρυθμός baud aWire μπορεί να περιοριστεί ρυθμίζοντας την παράμετρο ρολογιού aWire. Η αυτόματη ανίχνευση θα εξακολουθεί να λειτουργεί, αλλά θα επιβάλλεται μια ανώτατη τιμή στα αποτελέσματα.
Οποιοσδήποτε πυκνωτής σταθεροποίησης που είναι συνδεδεμένος στον ακροδέκτη RESET πρέπει να αποσυνδεθεί όταν χρησιμοποιείτε το aWire, καθώς θα παρεμποδίσει τη σωστή λειτουργία της διεπαφής. Συνιστάται ένα αδύναμο εξωτερικό pullup (10kΩ ή υψηλότερο) σε αυτήν τη γραμμή.
Τερματισμός λειτουργίας ύπνου
Ορισμένες συσκευές AVR UC3 διαθέτουν εσωτερικό ρυθμιστή που μπορεί να χρησιμοποιηθεί σε λειτουργία τροφοδοσίας 3.3 V με ρυθμιζόμενες γραμμές I/O 1.8 V. Αυτό σημαίνει ότι ο εσωτερικός ρυθμιστής τροφοδοτεί τόσο τον πυρήνα όσο και το μεγαλύτερο μέρος του I/O. Μόνο το Atmel AVR ONE! Το πρόγραμμα εντοπισμού σφαλμάτων υποστηρίζει τον εντοπισμό σφαλμάτων κατά τη χρήση λειτουργιών ύπνου όπου αυτός ο ρυθμιστής είναι απενεργοποιημένος.
4.3.7. Χρήση EVTI / EVTO
Οι ακίδες EVTI και EVTO δεν είναι προσβάσιμες στο Atmel-ICE. Ωστόσο, μπορούν ακόμα να χρησιμοποιηθούν σε συνδυασμό με άλλο εξωτερικό εξοπλισμό.
Το EVTI μπορεί να χρησιμοποιηθεί για τους ακόλουθους σκοπούς:
- Ο στόχος μπορεί να αναγκαστεί να σταματήσει την εκτέλεση ως απόκριση σε ένα εξωτερικό συμβάν. Εάν τα bit Event In Control (EIC) στον καταχωρητή DC είναι γραμμένα σε 0b01, η μετάβαση από υψηλό σε χαμηλό στον ακροδέκτη EVTI θα δημιουργήσει μια συνθήκη σημείου διακοπής. Το EVTI πρέπει να παραμείνει χαμηλό για έναν κύκλο ρολογιού CPU για να εγγυηθεί ότι ένα σημείο διακοπής είναι Το Bit Εξωτερικού Σημείου Διακοπής (EXB) στο DS ορίζεται όταν συμβεί αυτό.
- Δημιουργία μηνυμάτων συγχρονισμού ιχνών. Δεν χρησιμοποιείται από το Atmel-ICE.
Το EVTO μπορεί να χρησιμοποιηθεί για τους ακόλουθους σκοπούς:
- Ένδειξη ότι η CPU έχει εισέλθει στον εντοπισμό σφαλμάτων Η ρύθμιση των bit EOS στο DC σε 0b01 προκαλεί την έλξη του ακροδέκτη EVTO προς τα κάτω για έναν κύκλο ρολογιού CPU όταν η συσκευή-στόχος εισέρχεται σε λειτουργία εντοπισμού σφαλμάτων. Αυτό το σήμα μπορεί να χρησιμοποιηθεί ως πηγή ενεργοποίησης για έναν εξωτερικό παλμογράφο.
- Υποδεικνύει ότι η CPU έχει φτάσει σε σημείο διακοπής ή σημείο παρακολούθησης. Ρυθμίζοντας το bit EOC σε έναν αντίστοιχο καταχωρητή ελέγχου σημείου διακοπής/σημείου παρακολούθησης, το σημείο διακοπής ή η κατάσταση του σημείου παρακολούθησης υποδεικνύεται στον ακροδέκτη EVTO. Τα bit EOS στο DC πρέπει να οριστούν σε 0xb10 για να ενεργοποιηθεί αυτή η δυνατότητα. Ο πείρος EVTO μπορεί στη συνέχεια να συνδεθεί σε έναν εξωτερικό παλμογράφο για να εξετάσει το σημείο παρακολούθησης
- Δημιουργία ιχνών σημάτων χρονισμού. Δεν χρησιμοποιείται από το Atmel-ICE.
4.4 Συσκευές tinyAVR, megaAVR και XMEGA
Οι συσκευές AVR διαθέτουν διάφορες διεπαφές προγραμματισμού και εντοπισμού σφαλμάτων. Ελέγξτε το φύλλο δεδομένων της συσκευής για υποστηριζόμενες διεπαφές αυτής της συσκευής.
- Κάποιο μικροσκοπικό AVR® Οι συσκευές έχουν TPI Το TPI μπορεί να χρησιμοποιηθεί μόνο για τον προγραμματισμό της συσκευής και αυτές οι συσκευές δεν διαθέτουν καθόλου δυνατότητα εντοπισμού σφαλμάτων στο chip.
- Ορισμένες συσκευές tinyAVR και ορισμένες συσκευές megaAVR έχουν τη διεπαφή debugWIRE, η οποία συνδέεται με ένα σύστημα εντοπισμού σφαλμάτων στο chip γνωστό ως tinyOCD. Όλες οι συσκευές με debugWIRE διαθέτουν επίσης τη διεπαφή SPI για εντός συστήματος
- Ορισμένες συσκευές megaAVR διαθέτουν JTAG διεπαφή για προγραμματισμό και εντοπισμό σφαλμάτων, με ένα σύστημα εντοπισμού σφαλμάτων στο τσιπ γνωστό και ως Όλες οι συσκευές με JTAG διαθέτουν επίσης τη διεπαφή SPI ως εναλλακτική διεπαφή για προγραμματισμό εντός συστήματος.
- Όλες οι συσκευές AVR XMEGA έχουν τη διεπαφή PDI για προγραμματισμό και ορισμένες συσκευές AVR XMEGA διαθέτουν επίσης JTAG διεπαφή με την ίδια λειτουργικότητα.
- Οι νέες συσκευές tinyAVR διαθέτουν διεπαφή UPDI, η οποία χρησιμοποιείται για προγραμματισμό και εντοπισμό σφαλμάτων
Πίνακας 4-9. Σύνοψη διεπαφών προγραμματισμού και εντοπισμού σφαλμάτων
|
UPDI | TPI | SPI | αποσφαλμάτωσηWIR Ε | JTAG | PDI | aWire |
SWD |
tinyAVR | Νέες συσκευές | Μερικές συσκευές | Μερικές συσκευές | Μερικές συσκευές | ||||
megaAV R | Όλες οι συσκευές | Μερικές συσκευές | Μερικές συσκευές | |||||
AVR XMEGA | Μερικές συσκευές | Όλες οι συσκευές | ||||||
AVR UC | Όλες οι συσκευές | Μερικές συσκευές | ||||||
SAM | Μερικές συσκευές | Όλες οι συσκευές |
4.4.1. JTAG Φυσική διεπαφή
Το JTAG η διεπαφή αποτελείται από έναν ελεγκτή 4-wire Test Access Port (TAP) που είναι συμβατός με το IEEE® Πρότυπο 1149.1. Το πρότυπο IEEE αναπτύχθηκε για να παρέχει έναν βιομηχανικό τρόπο αποτελεσματικής δοκιμής συνδεσιμότητας πλακέτας κυκλώματος (Σάρωση ορίων). Οι συσκευές Atmel AVR και SAM έχουν επεκτείνει αυτή τη λειτουργικότητα για να συμπεριλάβει πλήρη υποστήριξη προγραμματισμού και εντοπισμού σφαλμάτων σε τσιπ.
Εικόνα 4-9. JTAG Βασικά στοιχεία διεπαφής4.4.2. Σύνδεση σε JTAG Στόχος
Το Atmel-ICE είναι εξοπλισμένο με δύο J 50 ακίδων 10 milTAG συνδετήρες. Και οι δύο σύνδεσμοι συνδέονται απευθείας ηλεκτρικά, αλλά συμμορφώνονται με δύο διαφορετικές ακίδες. το AVR JTAG κεφαλίδα και την κεφαλίδα ARM Cortex Debug. Ο σύνδεσμος θα πρέπει να επιλέγεται με βάση το pinout της πλακέτας στόχου και όχι τον τύπο MCU-στόχου – π.χample μια συσκευή SAM που είναι τοποθετημένη σε μια στοίβα AVR STK600 θα πρέπει να χρησιμοποιεί την κεφαλίδα AVR.
Το προτεινόμενο pinout για το AVR J 10 ακίδωνTAG Ο σύνδεσμος φαίνεται στο Σχήμα 4-6.
Το συνιστώμενο pinout για την υποδοχή ARM Cortex Debug 10 ακίδων φαίνεται στην Εικόνα 4-2.
Απευθείας σύνδεση με τυπική κεφαλίδα 10 ακίδων 50 mil
Χρησιμοποιήστε το επίπεδο καλώδιο 50 ακίδων 10 mil (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε απευθείας σε μια πλακέτα που υποστηρίζει αυτόν τον τύπο κεφαλίδας. Χρησιμοποιήστε τη θύρα σύνδεσης AVR στο Atmel-ICE για κεφαλίδες με το pinout AVR και τη θύρα σύνδεσης SAM για κεφαλίδες που συμμορφώνονται με το pinout κεφαλίδας ARM Cortex Debug.
Τα pinouts και για τις δύο θύρες σύνδεσης 10 ακίδων φαίνονται παρακάτω.
Σύνδεση σε τυπική κεφαλίδα 10 ακίδων 100 mil
Χρησιμοποιήστε έναν τυπικό προσαρμογέα 50-mil σε 100-mil για σύνδεση σε κεφαλίδες 100-mil. Για το σκοπό αυτό μπορεί να χρησιμοποιηθεί μια πλακέτα προσαρμογέα (περιλαμβάνεται σε ορισμένα κιτ) ή εναλλακτικά το JTAGΟ προσαρμογέας ICE3 μπορεί να χρησιμοποιηθεί για στόχους AVR.
Σπουδαίος:
Το JTAGΟ προσαρμογέας ICE3 100 mil δεν μπορεί να χρησιμοποιηθεί με τη θύρα σύνδεσης SAM, καθώς οι ακίδες 2 και 10 (AVR GND) στον προσαρμογέα είναι συνδεδεμένα.
Σύνδεση σε προσαρμοσμένη κεφαλίδα 100 μιλίων
Εάν η πλακέτα στόχος σας δεν έχει συμβατό J 10 ακίδωνTAG κεφαλίδα σε 50 ή 100 mil, μπορείτε να αντιστοιχίσετε σε ένα προσαρμοσμένο pinout χρησιμοποιώντας το καλώδιο "mini-squid" 10 ακίδων (περιλαμβάνεται σε ορισμένα κιτ), το οποίο παρέχει πρόσβαση σε δέκα μεμονωμένες υποδοχές των 100 mil.
Σύνδεση με κεφαλίδα 20 ακίδων 100 mil
Χρησιμοποιήστε την πλακέτα προσαρμογέα (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε με στόχους με κεφαλίδα 20 mil 100 ακίδων.
Πίνακας 4-10. Atmel-ICE JTAG Καρφίτσα Περιγραφή
Ονομα | AVR καρφίτσα θύρας | SAM καρφίτσα θύρας | Περιγραφή |
TCK | 1 | 4 | Ρολόι δοκιμής (σήμα ρολογιού από το Atmel-ICE στη συσκευή προορισμού). |
TMS | 5 | 2 | Επιλογή λειτουργίας δοκιμής (σήμα ελέγχου από το Atmel-ICE στη συσκευή προορισμού). |
TDI | 9 | 8 | Είσοδος δεδομένων δοκιμής (δεδομένα που μεταδίδονται από το Atmel-ICE στη συσκευή προορισμού). |
TDO | 3 | 6 | Έξοδος δεδομένων δοκιμής (δεδομένα που μεταδίδονται από τη συσκευή προορισμού στο Atmel-ICE). |
nTRST | 8 | – | Επαναφορά δοκιμής (προαιρετικό, μόνο σε ορισμένες συσκευές AVR). Χρησιμοποιείται για την επαναφορά του JTAG Ελεγκτής TAP. |
nSRST | 6 | 10 | Επαναφορά (προαιρετικό). Χρησιμοποιείται για την επαναφορά της συσκευής προορισμού. Συνιστάται η σύνδεση αυτού του pin, καθώς επιτρέπει στο Atmel-ICE να κρατά τη συσκευή-στόχο σε κατάσταση επαναφοράς, κάτι που μπορεί να είναι απαραίτητο για τον εντοπισμό σφαλμάτων σε ορισμένα σενάρια. |
VTG | 4 | 1 | Target voltagε αναφορά. Το Atmel-ICE samples the target voltage σε αυτόν τον πείρο για να τροφοδοτήσουν σωστά τους μετατροπείς στάθμης. Το Atmel-ICE αντλεί λιγότερα από 3 mA από αυτήν την ακίδα στη λειτουργία debugWIRE και λιγότερο από 1 mA σε άλλες λειτουργίες. |
GND | 2, 10 | 3, 5, 9 | Εδαφος. Όλα πρέπει να είναι συνδεδεμένα για να διασφαλιστεί ότι το Atmel-ICE και η συσκευή προορισμού μοιράζονται την ίδια αναφορά γείωσης. |
4.4.3. Φυσική διεπαφή SPI
Ο προγραμματισμός εντός συστήματος χρησιμοποιεί το εσωτερικό SPI (σειριακή περιφερειακή διεπαφή) του Atmel AVR για τη λήψη κώδικα στις μνήμες flash και EEPROM. Δεν είναι διεπαφή εντοπισμού σφαλμάτων. Κατά το σχεδιασμό μιας εφαρμογής PCB, η οποία περιλαμβάνει ένα AVR με τη διεπαφή SPI, θα πρέπει να χρησιμοποιείται το pinout όπως φαίνεται στην παρακάτω εικόνα.
Εικόνα 4-10. Pinout κεφαλίδας SPI4.4.4. Σύνδεση σε έναν στόχο SPI
Το συνιστώμενο pinout για την υποδοχή SPI 6 ακίδων φαίνεται στην Εικόνα 4-10.
Σύνδεση σε κεφαλίδα SPI 6 mil 100 ακίδων
Χρησιμοποιήστε τη βρύση 6 mil 100 ακίδων στο επίπεδο καλώδιο (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια τυπική κεφαλίδα SPI 100 mil.
Σύνδεση σε κεφαλίδα SPI 6 mil 50 ακίδων
Χρησιμοποιήστε την πλακέτα προσαρμογέα (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια τυπική κεφαλίδα SPI 50 mil.
Σύνδεση σε προσαρμοσμένη κεφαλίδα 100 μιλίων
Το καλώδιο mini-squid 10 ακίδων θα πρέπει να χρησιμοποιείται για τη σύνδεση μεταξύ της θύρας σύνδεσης Atmel-ICE AVR και της πλακέτας στόχου. Απαιτούνται έξι συνδέσεις, όπως περιγράφεται στον παρακάτω πίνακα.
Σπουδαίος:
Η διεπαφή SPI απενεργοποιείται ουσιαστικά όταν είναι προγραμματισμένη η ασφάλεια ενεργοποίησης debugWIRE (DWEN), ακόμα κι αν η ασφάλεια SPIEN είναι επίσης προγραμματισμένη. Για να ενεργοποιήσετε ξανά τη διεπαφή SPI, η εντολή "απενεργοποίηση debugWIRE" πρέπει να εκδοθεί κατά τη διάρκεια μιας περιόδου λειτουργίας εντοπισμού σφαλμάτων debugWIRE. Η απενεργοποίηση του debugWIRE με αυτόν τον τρόπο απαιτεί η ασφάλεια SPIEN να είναι ήδη προγραμματισμένη. Εάν το Atmel Studio δεν καταφέρει να απενεργοποιήσει το debugWIRE, είναι πιθανό επειδή η ασφάλεια SPIEN ΔΕΝ είναι προγραμματισμένη. Εάν συμβαίνει αυτό, είναι απαραίτητο να χρησιμοποιήσετε ένα high-voltagΗλεκτρονική διεπαφή προγραμματισμού για τον προγραμματισμό της ασφάλειας SPIEN.
Πληροφορίες:
Η διεπαφή SPI αναφέρεται συχνά ως "ISP", καθώς ήταν η πρώτη διεπαφή προγραμματισμού συστήματος σε προϊόντα Atmel AVR. Άλλες διεπαφές είναι τώρα διαθέσιμες για τον προγραμματισμό συστήματος.
Πίνακας 4-11. Atmel-ICE SPI Pin Mapping
Καρφίτσες θύρας Atmel-ICE AVR | Καρφίτσες στόχου | Μίνι-καλαμάρι καρφίτσα |
SPI pinout |
Pin 1 (TCK) | SCK | 1 | 3 |
Pin 2 (GND) | GND | 2 | 6 |
Pin 3 (TDO) | ΜΙΣΟ | 3 | 1 |
Pin 4 (VTG) | VTG | 4 | 2 |
Pin 5 (TMS) | 5 | ||
Pin 6 (nSRST) | /ΕΠΑΝΑΦΟΡΑ | 6 | 5 |
Pin 7 (δεν είναι συνδεδεμένος) | 7 | ||
Pin 8 (nTRST) | 8 | ||
Pin 9 (TDI) | MOSI | 9 | 4 |
Pin 10 (GND) | 0 |
4.4.5. PDI
Η διεπαφή προγράμματος και εντοπισμού σφαλμάτων (PDI) είναι μια ιδιόκτητη διεπαφή της Atmel για εξωτερικό προγραμματισμό και εντοπισμό σφαλμάτων στο chip μιας συσκευής. Το PDI Physical είναι μια διεπαφή 2 ακίδων που παρέχει μια αμφίδρομη ημιαμφίδρομη σύγχρονη επικοινωνία με τη συσκευή-στόχο.
Κατά το σχεδιασμό μιας εφαρμογής PCB, η οποία περιλαμβάνει ένα Atmel AVR με τη διεπαφή PDI, θα πρέπει να χρησιμοποιείται το pinout που φαίνεται στην παρακάτω εικόνα. Ένας από τους προσαρμογείς 6 ακίδων που παρέχονται με το κιτ Atmel-ICE μπορεί στη συνέχεια να χρησιμοποιηθεί για τη σύνδεση του αισθητήρα Atmel-ICE στο PCB της εφαρμογής.
Εικόνα 4-11. Pinout κεφαλίδας PDI4.4.6.Σύνδεση με στόχο PDI
Το συνιστώμενο pinout για τον σύνδεσμο PDI 6 ακίδων φαίνεται στην Εικόνα 4-11.
Σύνδεση σε κεφαλίδα PDI 6 mil 100 ακίδων
Χρησιμοποιήστε τη βρύση 6 mil 100 ακίδων στο επίπεδο καλώδιο (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια τυπική κεφαλίδα PDI 100 mil.
Σύνδεση σε κεφαλίδα PDI 6 mil 50 ακίδων
Χρησιμοποιήστε την πλακέτα προσαρμογέα (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια τυπική κεφαλίδα PDI 50 mil.
Σύνδεση σε προσαρμοσμένη κεφαλίδα 100 μιλίων
Το καλώδιο mini-squid 10 ακίδων θα πρέπει να χρησιμοποιείται για τη σύνδεση μεταξύ της θύρας σύνδεσης Atmel-ICE AVR και της πλακέτας στόχου. Απαιτούνται τέσσερις συνδέσεις, όπως περιγράφεται στον παρακάτω πίνακα.
Σπουδαίος:
Το pinout που απαιτείται είναι διαφορετικό από το JTAGICE mkII JTAG probe, όπου το PDI_DATA είναι συνδεδεμένο με τον ακροδέκτη 9. Το Atmel-ICE είναι συμβατό με το pinout που χρησιμοποιείται από το Atmel-ICE, JTAGICE3, AVR ONE!, και AVR Dragon™ προϊόντα.
Πίνακας 4-12. Atmel-ICE PDI Pin Mapping
Καρφίτσα θύρας Atmel-ICE AVR |
Καρφίτσες στόχου | Μίνι-καλαμάρι καρφίτσα |
Atmel STK600 PDI pinout |
Pin 1 (TCK) | 1 | ||
Pin 2 (GND) | GND | 2 | 6 |
Pin 3 (TDO) | PDI_DATA | 3 | 1 |
Pin 4 (VTG) | VTG | 4 | 2 |
Pin 5 (TMS) | 5 | ||
Pin 6 (nSRST) | PDI_CLK | 6 | 5 |
Pin 7 (δεν είναι συνδεδεμένος) | 7 | ||
Pin 8 (nTRST) | 8 | ||
Pin 9 (TDI) | 9 | ||
Pin 10 (GND) | 0 |
4.4.7. Φυσική διεπαφή UPDI
Το Unified Program and Debug Interface (UPDI) είναι μια ιδιόκτητη διεπαφή της Atmel για εξωτερικό προγραμματισμό και εντοπισμό σφαλμάτων στο chip μιας συσκευής. Είναι ο διάδοχος της φυσικής διεπαφής PDI 2-wire, η οποία βρίσκεται σε όλες τις συσκευές AVR XMEGA. Το UPDI είναι μια διεπαφή μονού καλωδίου που παρέχει μια αμφίδρομη ασύγχρονη επικοινωνία μισής διπλής όψης με τη συσκευή προορισμού για σκοπούς προγραμματισμού και εντοπισμού σφαλμάτων.
Κατά το σχεδιασμό μιας εφαρμογής PCB, η οποία περιλαμβάνει ένα Atmel AVR με τη διεπαφή UPDI, θα πρέπει να χρησιμοποιείται το pinout που φαίνεται παρακάτω. Ένας από τους προσαρμογείς 6 ακίδων που παρέχονται με το κιτ Atmel-ICE μπορεί στη συνέχεια να χρησιμοποιηθεί για τη σύνδεση του αισθητήρα Atmel-ICE στο PCB της εφαρμογής.
Εικόνα 4-12. Pinout κεφαλίδας UPDI4.4.7.1 UPDI και /RESET
Η διασύνδεση ενός καλωδίου UPDI μπορεί να είναι αποκλειστική ή κοινόχρηστη, ανάλογα με τη συσκευή AVR-στόχου. Συμβουλευτείτε το φύλλο δεδομένων της συσκευής για περισσότερες πληροφορίες.
Όταν η διεπαφή UPDI είναι σε κοινόχρηστο ακροδέκτη, η ακίδα μπορεί να διαμορφωθεί ώστε να είναι είτε UPDI, /RESET ή GPIO, ρυθμίζοντας τις ασφάλειες RSTPINCFG[1:0].
Οι ασφάλειες RSTPINCFG[1:0] έχουν τις ακόλουθες διαμορφώσεις, όπως περιγράφονται στο φύλλο δεδομένων. Οι πρακτικές επιπτώσεις κάθε επιλογής δίνονται εδώ.
Πίνακας 4-13. RSTPINCFG[1:0] Διαμόρφωση ασφαλειών
RSTPINCFG[1:0] | Διαμόρφωση |
Χρήση |
00 | GPIO | Καρφίτσα I/O γενικής χρήσης. Για να αποκτήσετε πρόσβαση στο UPDI, πρέπει να εφαρμοστεί ένας παλμός 12 V σε αυτόν τον ακροδέκτη. Δεν υπάρχει διαθέσιμη εξωτερική πηγή επαναφοράς. |
01 | UPDI | Ειδική καρφίτσα προγραμματισμού και εντοπισμού σφαλμάτων. Δεν υπάρχει διαθέσιμη εξωτερική πηγή επαναφοράς. |
10 | Επαναφορά | Επαναφορά εισόδου σήματος. Για να αποκτήσετε πρόσβαση στο UPDI, πρέπει να εφαρμοστεί ένας παλμός 12 V σε αυτόν τον ακροδέκτη. |
11 | Ρεζερβέ | NA |
Σημείωμα: Οι παλαιότερες συσκευές AVR έχουν μια διεπαφή προγραμματισμού, γνωστή ως "High-Voltage Programming» (υπάρχουν τόσο σειριακές όσο και παράλληλες παραλλαγές.) Γενικά, αυτή η διεπαφή απαιτεί την εφαρμογή 12 V στον ακροδέκτη /RESET για τη διάρκεια της περιόδου λειτουργίας προγραμματισμού. Η διεπαφή UPDI είναι μια εντελώς διαφορετική διεπαφή. Ο ακροδέκτης UPDI είναι κυρίως ένας ακροδέκτης προγραμματισμού και εντοπισμού σφαλμάτων, ο οποίος μπορεί να συγχωνευτεί για να έχει μια εναλλακτική λειτουργία (/RESET ή GPIO). Εάν επιλεγεί η εναλλακτική λειτουργία, τότε απαιτείται παλμός 12 V σε αυτόν τον ακροδέκτη για να ενεργοποιηθεί ξανά η λειτουργία UPDI.
Σημείωμα: Εάν μια σχεδίαση απαιτεί την κοινή χρήση του σήματος UPDI λόγω περιορισμών των ακροδεκτών, πρέπει να ληφθούν μέτρα για να διασφαλιστεί ότι η συσκευή μπορεί να προγραμματιστεί. Για να διασφαλίσετε ότι το σήμα UPDI μπορεί να λειτουργήσει σωστά, καθώς και για να αποφευχθεί η ζημιά σε εξωτερικά εξαρτήματα από τον παλμό 12 V, συνιστάται να αποσυνδέετε τυχόν εξαρτήματα σε αυτόν τον ακροδέκτη κατά την προσπάθεια εντοπισμού σφαλμάτων ή προγραμματισμού της συσκευής. Αυτό μπορεί να γίνει χρησιμοποιώντας μια αντίσταση 0Ω, η οποία είναι τοποθετημένη από προεπιλογή και αφαιρείται ή αντικαθίσταται από μια κεφαλίδα pin κατά τον εντοπισμό σφαλμάτων. Αυτή η διαμόρφωση ουσιαστικά σημαίνει ότι ο προγραμματισμός πρέπει να γίνει πριν από την τοποθέτηση της συσκευής.
Σπουδαίος: Το Atmel-ICE δεν υποστηρίζει 12V στη γραμμή UPDI. Με άλλα λόγια, εάν η ακίδα UPDI έχει ρυθμιστεί ως GPIO ή RESET, το Atmel-ICE δεν θα μπορεί να ενεργοποιήσει τη διεπαφή UPDI.
4.4.8.Σύνδεση με στόχο UPDI
Το συνιστώμενο pinout για την υποδοχή UPDI 6 ακίδων φαίνεται στην Εικόνα 4-12.
Σύνδεση σε κεφαλίδα UPDI 6 mil 100 ακίδων
Χρησιμοποιήστε τη βρύση 6 mil 100 ακίδων στο επίπεδο καλώδιο (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια τυπική κεφαλίδα UPDI 100 mil.
Σύνδεση σε κεφαλίδα UPDI 6 mil 50 ακίδων
Χρησιμοποιήστε την πλακέτα προσαρμογέα (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια τυπική κεφαλίδα UPDI 50 mil.
Σύνδεση σε προσαρμοσμένη κεφαλίδα 100 μιλίων
Το καλώδιο mini-squid 10 ακίδων θα πρέπει να χρησιμοποιείται για τη σύνδεση μεταξύ της θύρας σύνδεσης Atmel-ICE AVR και της πλακέτας στόχου. Απαιτούνται τρεις συνδέσεις, όπως περιγράφεται στον παρακάτω πίνακα.
Πίνακας 4-14. Atmel-ICE UPDI Pin Mapping
Καρφίτσα θύρας Atmel-ICE AVR | Καρφίτσες στόχου | Μίνι-καλαμάρι καρφίτσα |
Atmel STK600 UPDI pinout |
Pin 1 (TCK) | 1 | ||
Pin 2 (GND) | GND | 2 | 6 |
Pin 3 (TDO) | UPDI_DATA | 3 | 1 |
Pin 4 (VTG) | VTG | 4 | 2 |
Pin 5 (TMS) | 5 | ||
Pin 6 (nSRST) | [/ΕΠΑΝΑΦΟΡΑ αίσθησης] | 6 | 5 |
Pin 7 (Δεν είναι συνδεδεμένος) | 7 | ||
Pin 8 (nTRST) | 8 | ||
Pin 9 (TDI) | 9 | ||
Pin 10 (GND) | 0 |
4.4.9 Φυσική διεπαφή TPI
Το TPI είναι μια διεπαφή μόνο προγραμματισμού για ορισμένες συσκευές AVR ATtiny. Δεν είναι διεπαφή εντοπισμού σφαλμάτων και αυτές οι συσκευές δεν διαθέτουν δυνατότητα OCD. Κατά το σχεδιασμό μιας εφαρμογής PCB που περιλαμβάνει ένα AVR με τη διεπαφή TPI, θα πρέπει να χρησιμοποιείται το pinout που φαίνεται στην παρακάτω εικόνα.
Εικόνα 4-13. Pinout κεφαλίδας TPI4.4.10.Σύνδεση με στόχο TPI
Το συνιστώμενο pinout για την υποδοχή TPI 6 ακίδων φαίνεται στην Εικόνα 4-13.
Σύνδεση σε κεφαλίδα TPI 6 mil 100 ακίδων
Χρησιμοποιήστε τη βρύση 6 mil 100 ακίδων στο επίπεδο καλώδιο (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια τυπική κεφαλίδα TPI 100 mil.
Σύνδεση σε κεφαλίδα TPI 6 mil 50 ακίδων
Χρησιμοποιήστε την πλακέτα προσαρμογέα (περιλαμβάνεται σε ορισμένα κιτ) για να συνδεθείτε σε μια τυπική κεφαλίδα TPI 50 mil.
Σύνδεση σε προσαρμοσμένη κεφαλίδα 100 μιλίων
Το καλώδιο mini-squid 10 ακίδων θα πρέπει να χρησιμοποιείται για τη σύνδεση μεταξύ της θύρας σύνδεσης Atmel-ICE AVR και της πλακέτας στόχου. Απαιτούνται έξι συνδέσεις, όπως περιγράφεται στον παρακάτω πίνακα.
Πίνακας 4-15. Atmel-ICE TPI Pin Mapping
Καρφίτσες θύρας Atmel-ICE AVR | Καρφίτσες στόχου | Μίνι-καλαμάρι καρφίτσα |
TPI pinout |
Pin 1 (TCK) | ΡΟΛΟΪ | 1 | 3 |
Pin 2 (GND) | GND | 2 | 6 |
Pin 3 (TDO) | ΔΕΔΟΜΕΝΑ | 3 | 1 |
Pin 4 (VTG) | VTG | 4 | 2 |
Pin 5 (TMS) | 5 | ||
Pin 6 (nSRST) | /ΕΠΑΝΑΦΟΡΑ | 6 | 5 |
Pin 7 (δεν είναι συνδεδεμένος) | 7 | ||
Pin 8 (nTRST) | 8 | ||
Pin 9 (TDI) | 9 | ||
Pin 10 (GND) | 0 |
4.4.11. Προηγμένος εντοπισμός σφαλμάτων (AVR JTAG /debugWIRE συσκευές)
Περιφερειακά I/O
Τα περισσότερα περιφερειακά I/O θα συνεχίσουν να εκτελούνται ακόμα κι αν η εκτέλεση του προγράμματος διακόπτεται από ένα σημείο διακοπής. Πρώηνample: Εάν επιτευχθεί ένα σημείο διακοπής κατά τη διάρκεια μιας μετάδοσης UART, η μετάδοση θα ολοκληρωθεί και θα οριστούν τα αντίστοιχα bit. Η σημαία TXC (ολοκληρώθηκε η μετάδοση) θα οριστεί και θα είναι διαθέσιμη στο επόμενο βήμα του κώδικα, παρόλο που κανονικά θα συμβεί αργότερα σε μια πραγματική συσκευή.
Όλες οι μονάδες I/O θα συνεχίσουν να εκτελούνται σε λειτουργία διακοπής με τις ακόλουθες δύο εξαιρέσεις:
- Χρονοδιακόπτης/Μετρητές (μπορεί να διαμορφωθεί χρησιμοποιώντας το μπροστινό μέρος του λογισμικού)
- Watchdog Timer (πάντα σταματά για να αποτρέπονται οι επαναφορές κατά τη διόρθωση σφαλμάτων)
Πρόσβαση I/O με ένα βήμα
Εφόσον το I/O συνεχίζει να εκτελείται σε λειτουργία διακοπής, θα πρέπει να ληφθεί μέριμνα για την αποφυγή ορισμένων προβλημάτων χρονισμού. Για π.χample, ο κωδικός:
Όταν εκτελείται κανονικά αυτός ο κωδικός, ο καταχωρητής TEMP δεν θα διαβάζει ξανά 0xAA επειδή τα δεδομένα δεν θα είχαν ακόμη ασφαλιστεί φυσικά στον ακροδέκτη μέχρι να ολοκληρωθείampμε επικεφαλής την επιχείρηση IN. Πρέπει να τοποθετηθεί μια εντολή NOP μεταξύ της εντολής OUT και της εντολής IN για να διασφαλιστεί ότι υπάρχει η σωστή τιμή στον καταχωρητή PIN.
Ωστόσο, κατά την απλή μετάβαση αυτής της συνάρτησης μέσω του OCD, αυτός ο κωδικός θα δίνει πάντα 0xAA στον καταχωρητή PIN, καθώς το I/O εκτελείται σε πλήρη ταχύτητα ακόμη και όταν ο πυρήνας σταματά κατά τη διάρκεια του απλού βήματος.
Μονό βήμα και χρονισμός
Ορισμένοι καταχωρητές πρέπει να διαβαστούν ή να γραφτούν μέσα σε έναν δεδομένο αριθμό κύκλων μετά την ενεργοποίηση ενός σήματος ελέγχου. Εφόσον το ρολόι εισόδου/εξόδου και τα περιφερειακά συνεχίζουν να λειτουργούν με πλήρη ταχύτητα στη λειτουργία διακοπής λειτουργίας, η απλή μετάβαση μέσω αυτού του κώδικα δεν θα πληροί τις απαιτήσεις χρονισμού. Ανάμεσα σε δύο μεμονωμένα βήματα, το ρολόι I/O μπορεί να έχει τρέξει εκατομμύρια κύκλους. Για την επιτυχή ανάγνωση ή εγγραφή καταχωρητών με τέτοιες απαιτήσεις χρονισμού, ολόκληρη η ακολουθία ανάγνωσης ή εγγραφής θα πρέπει να εκτελείται ως ατομική λειτουργία που εκτελεί τη συσκευή σε πλήρη ταχύτητα. Αυτό μπορεί να γίνει χρησιμοποιώντας μια μακροεντολή ή μια κλήση συνάρτησης για την εκτέλεση του κώδικα ή χρησιμοποιώντας τη συνάρτηση run-to-cursor στο περιβάλλον εντοπισμού σφαλμάτων
Πρόσβαση σε καταχωρητές 16-bit
Τα περιφερειακά Atmel AVR συνήθως περιέχουν αρκετούς καταχωρητές 16-bit στους οποίους είναι δυνατή η πρόσβαση μέσω του διαύλου δεδομένων 8-bit (π.χ.: TCNTn ενός χρονοδιακόπτη 16-bit). Ο καταχωρητής 16-bit πρέπει να έχει πρόσβαση με byte χρησιμοποιώντας δύο λειτουργίες ανάγνωσης ή εγγραφής. Η παραβίαση στη μέση μιας πρόσβασης 16 bit ή η απλή μετάβαση σε αυτήν την κατάσταση μπορεί να οδηγήσει σε εσφαλμένες τιμές.
Περιορισμένη πρόσβαση καταχωρητή εισόδου/εξόδου
Ορισμένα μητρώα δεν μπορούν να διαβαστούν χωρίς να επηρεαστεί το περιεχόμενό τους. Τέτοιοι καταχωρητές περιλαμβάνουν αυτούς που περιέχουν σημαίες που διαγράφονται με ανάγνωση ή καταχωρητές δεδομένων προσωρινής αποθήκευσης (π.χ.: UDR). Το μπροστινό μέρος του λογισμικού θα εμποδίσει την ανάγνωση αυτών των μητρώων όταν βρίσκεται σε κατάσταση διακοπής για να διατηρήσει την επιδιωκόμενη μη παρεμβατική φύση του εντοπισμού σφαλμάτων OCD. Επιπλέον, ορισμένοι καταχωρητές δεν μπορούν να γραφτούν με ασφάλεια χωρίς να εμφανιστούν παρενέργειες – αυτοί οι καταχωρητές είναι μόνο για ανάγνωση. Για π.χample:
- Μητρώα σημαίας, όπου μια σημαία διαγράφεται γράφοντας «1» σε οποιοδήποτε Αυτοί οι καταχωρητές είναι μόνο για ανάγνωση.
- Οι καταχωρητές UDR και SPDR δεν μπορούν να διαβαστούν χωρίς να επηρεαστεί η κατάσταση της μονάδας. Αυτά τα μητρώα δεν είναι
4.4.12. megaAVR Ειδικές Θεωρήσεις
Σημεία διακοπής λογισμικού
Δεδομένου ότι περιέχει μια πρώιμη έκδοση της μονάδας OCD, το ATmega128[A] δεν υποστηρίζει τη χρήση της εντολής BREAK για σημεία διακοπής λογισμικού.
JTAG ρολόι
Η στοχευόμενη συχνότητα ρολογιού πρέπει να προσδιορίζεται με ακρίβεια στη διεπαφή του λογισμικού πριν από την έναρξη μιας περιόδου λειτουργίας εντοπισμού σφαλμάτων. Για λόγους συγχρονισμού, το JTAG Το σήμα TCK πρέπει να είναι μικρότερο από το ένα τέταρτο της στοχευόμενης συχνότητας ρολογιού για αξιόπιστο εντοπισμό σφαλμάτων. Κατά τον προγραμματισμό μέσω του JTAG διεπαφή, η συχνότητα TCK περιορίζεται από τη μέγιστη ονομαστική συχνότητα της συσκευής-στόχου και όχι από την πραγματική συχνότητα ρολογιού που χρησιμοποιείται.
Όταν χρησιμοποιείτε τον εσωτερικό ταλαντωτή RC, να γνωρίζετε ότι η συχνότητα μπορεί να διαφέρει από συσκευή σε συσκευή και επηρεάζεται από τη θερμοκρασία και το VCC αλλαγές. Να είστε συντηρητικοί κατά τον καθορισμό της στοχευόμενης συχνότητας ρολογιού.
JTAGΑσφάλειες EN και OCDEN
Το JTAG Η διεπαφή ενεργοποιείται χρησιμοποιώντας το JTAGΑσφάλεια EN, η οποία είναι προγραμματισμένη από προεπιλογή. Αυτό επιτρέπει την πρόσβαση στο JTAG διεπαφή προγραμματισμού. Μέσω αυτού του μηχανισμού, η ασφάλεια OCDEN μπορεί να προγραμματιστεί (από προεπιλογή το OCDEN δεν είναι προγραμματισμένο). Αυτό επιτρέπει την πρόσβαση στο OCD προκειμένου να διευκολυνθεί ο εντοπισμός σφαλμάτων της συσκευής. Το μπροστινό μέρος του λογισμικού θα διασφαλίζει πάντα ότι η ασφάλεια OCDEN παραμένει μη προγραμματισμένη κατά τον τερματισμό μιας συνεδρίας, περιορίζοντας έτσι την περιττή κατανάλωση ενέργειας από τη μονάδα OCD. Αν το JTAGΗ ασφάλεια EN απενεργοποιήθηκε ακούσια, μπορεί να επανενεργοποιηθεί μόνο με χρήση SPI ή High Voltagηλεκτρονικές μεθόδους προγραμματισμού.
Αν το JTAGΗ ασφάλεια EN είναι προγραμματισμένη, το JTAG Η διεπαφή μπορεί ακόμα να απενεργοποιηθεί στο υλικολογισμικό ρυθμίζοντας το JTD bit. Αυτό θα καταστήσει τον κώδικα χωρίς δυνατότητα εντοπισμού σφαλμάτων και δεν πρέπει να γίνεται όταν επιχειρείτε μια περίοδο λειτουργίας εντοπισμού σφαλμάτων. Εάν αυτός ο κώδικας εκτελείται ήδη στη συσκευή Atmel AVR κατά την έναρξη μιας περιόδου λειτουργίας εντοπισμού σφαλμάτων, το Atmel-ICE θα επιβεβαιώσει τη γραμμή RESET κατά τη σύνδεση. Εάν αυτή η γραμμή συνδεθεί σωστά, θα αναγκάσει τη συσκευή στόχου AVR σε επαναφορά, επιτρέποντας έτσι ένα JTAG σύνδεση.
Αν το JTAG Η διεπαφή είναι ενεργοποιημένη, το JTAG Οι ακίδες δεν μπορούν να χρησιμοποιηθούν για εναλλακτικές λειτουργίες καρφίτσας. Θα παραμείνουν αφοσιωμένοι ΤζTAG καρφίτσες μέχρι είτε το JTAG Η διεπαφή απενεργοποιείται ορίζοντας το bit JTD από τον κώδικα του προγράμματος ή διαγράφοντας το JTAGEN ασφάλεια μέσω μιας διεπαφής προγραμματισμού.
Ακρο:
Βεβαιωθείτε ότι έχετε ελέγξει το πλαίσιο ελέγχου "χρήση εξωτερικής επαναφοράς" τόσο στο παράθυρο διαλόγου προγραμματισμού όσο και στο παράθυρο διαλόγου επιλογών εντοπισμού σφαλμάτων, προκειμένου να επιτρέψετε στο Atmel-ICE να διεκδικήσει τη γραμμή RESET και να ενεργοποιήσει ξανά το JTAG διεπαφή σε συσκευές που εκτελούν κώδικα που απενεργοποιεί το JTAG διεπαφή ορίζοντας το bit JTD.
IDR/OCDR συμβάντα
Το IDR (In-out Data Register) είναι επίσης γνωστό ως OCDR (On Chip Debug Register) και χρησιμοποιείται εκτενώς από το πρόγραμμα εντοπισμού σφαλμάτων για την ανάγνωση και εγγραφή πληροφοριών στο MCU όταν βρίσκεται σε κατάσταση διακοπής κατά τη διάρκεια μιας περιόδου λειτουργίας εντοπισμού σφαλμάτων. Όταν το πρόγραμμα εφαρμογής σε λειτουργία εκτέλεσης γράφει ένα byte δεδομένων στον καταχωρητή OCDR της συσκευής AVR που έχει εντοπιστεί σφαλμάτων, το Atmel-ICE διαβάζει αυτήν την τιμή και την εμφανίζει στο παράθυρο μηνυμάτων της διεπαφής λογισμικού. Ο καταχωρητής OCDR ελέγχεται κάθε 50 ms, επομένως η εγγραφή σε αυτόν σε υψηλότερη συχνότητα ΔΕΝ θα αποφέρει αξιόπιστα αποτελέσματα. Όταν η συσκευή AVR χάνει την ισχύ της ενώ γίνεται εντοπισμός σφαλμάτων, ενδέχεται να αναφερθούν πλαστά συμβάντα OCDR. Αυτό συμβαίνει επειδή το Atmel-ICE μπορεί ακόμα να μετρήσει τη συσκευή ως τόμο στόχοtagΤο e πέφτει κάτω από τον ελάχιστο όγκο λειτουργίας του AVRtage.
4.4.13. AVR XMEGA Ειδικές Θεωρήσεις
OCD και χρονομέτρηση
Όταν το MCU εισέρχεται σε λειτουργία διακοπής, το ρολόι OCD χρησιμοποιείται ως ρολόι MCU. Το ρολόι OCD είναι είτε το JTAG TCK εάν το JTAG χρησιμοποιείται η διεπαφή ή το PDI_CLK εάν χρησιμοποιείται η διεπαφή PDI.
Μονάδες I/O σε λειτουργία διακοπής
Σε αντίθεση με παλαιότερες συσκευές Atmel megaAVR, στο XMEGA οι μονάδες I/O σταματούν σε λειτουργία διακοπής. Αυτό σημαίνει ότι οι εκπομπές USART θα διακοπούν, οι χρονοδιακόπτες (και το PWM) θα σταματήσουν.
Σημεία διακοπής υλικού
Υπάρχουν τέσσερις συγκριτές σημείων διακοπής υλικού – δύο συγκριτές διευθύνσεων και δύο συγκριτές τιμών. Έχουν ορισμένους περιορισμούς:
- Όλα τα σημεία διακοπής πρέπει να είναι του ίδιου τύπου (πρόγραμμα ή δεδομένα)
- Όλα τα σημεία διακοπής δεδομένων πρέπει να βρίσκονται στην ίδια περιοχή μνήμης (I/O, SRAM ή XRAM)
- Μπορεί να υπάρχει μόνο ένα σημείο διακοπής εάν χρησιμοποιείται εύρος διευθύνσεων
Εδώ είναι οι διαφορετικοί συνδυασμοί που μπορούν να ρυθμιστούν:
- Δύο μεμονωμένα σημεία διακοπής διεύθυνσης δεδομένων ή προγράμματος
- Ένα σημείο διακοπής εύρους διεύθυνσης δεδομένων ή προγράμματος
- Συγκρίνονται δύο μεμονωμένα σημεία διακοπής διεύθυνσης δεδομένων με μία τιμή
- Ένα σημείο διακοπής δεδομένων με εύρος διευθύνσεων, εύρος τιμών ή και τα δύο
Το Atmel Studio θα σας πει εάν δεν μπορεί να οριστεί το σημείο διακοπής και γιατί. Τα σημεία διακοπής δεδομένων έχουν προτεραιότητα έναντι των σημείων διακοπής του προγράμματος, εάν είναι διαθέσιμα σημεία διακοπής λογισμικού.
Εξωτερική επαναφορά και PDI φυσική
Η φυσική διεπαφή PDI χρησιμοποιεί τη γραμμή επαναφοράς ως ρολόι. Κατά τον εντοπισμό σφαλμάτων, το pullup επαναφοράς πρέπει να είναι 10k ή περισσότερο ή να αφαιρεθεί. Θα πρέπει να αφαιρεθούν τυχόν πυκνωτές επαναφοράς. Άλλες εξωτερικές πηγές επαναφοράς θα πρέπει να αποσυνδεθούν.
Εντοπισμός σφαλμάτων με ύπνο για ATxmegaA1 rev H και παλαιότερες
Υπήρχε ένα σφάλμα στις πρώιμες εκδόσεις των συσκευών ATxmegaA1 που εμπόδιζε την ενεργοποίηση του OCD ενώ η συσκευή βρισκόταν σε συγκεκριμένες καταστάσεις ύπνου. Υπάρχουν δύο λύσεις για να ενεργοποιήσετε ξανά το OCD:
- Πηγαίνετε στο Atmel-ICE. Επιλογές στο μενού Εργαλεία και ενεργοποιήστε την "Πάντα να ενεργοποιείται η εξωτερική επαναφορά κατά τον επαναπρογραμματισμό της συσκευής".
- Εκτελέστε μια διαγραφή τσιπ
Οι λειτουργίες ύπνου που ενεργοποιούν αυτό το σφάλμα είναι:
- Διακοπή ρεύματος
- Εξοικονόμηση ενέργειας
- Αναμονή
- Εκτεταμένη αναμονή
4.4.1.debugWIRE Ειδικές Θεωρήσεις
Η ακίδα επικοινωνίας debugWIRE (dW) βρίσκεται φυσικά στην ίδια ακίδα με την εξωτερική επαναφορά (RESET). Επομένως, μια εξωτερική πηγή επαναφοράς δεν υποστηρίζεται όταν είναι ενεργοποιημένη η διεπαφή debugWIRE.
Η ασφάλεια DebugWIRE Enable (DWEN) πρέπει να ρυθμιστεί στη συσκευή προορισμού για να λειτουργήσει η διεπαφή debugWIRE. Αυτή η ασφάλεια είναι από προεπιλογή μη προγραμματισμένη όταν η συσκευή Atmel AVR αποστέλλεται από το εργοστάσιο. Η ίδια η διεπαφή debugWIRE δεν μπορεί να χρησιμοποιηθεί για τη ρύθμιση αυτής της ασφάλειας. Για να ρυθμίσετε την ασφάλεια DWEN, πρέπει να χρησιμοποιηθεί η λειτουργία SPI. Το μπροστινό μέρος του λογισμικού το χειρίζεται αυτόματα, υπό την προϋπόθεση ότι έχουν συνδεθεί οι απαραίτητες ακίδες SPI. Μπορεί επίσης να ρυθμιστεί χρησιμοποιώντας προγραμματισμό SPI από το παράθυρο διαλόγου προγραμματισμού του Atmel Studio.
Είτε: Προσπαθήστε να ξεκινήσετε μια περίοδο λειτουργίας εντοπισμού σφαλμάτων στο τμήμα debugWIRE. Εάν η διεπαφή debugWIRE δεν είναι ενεργοποιημένη, το Atmel Studio θα προτείνει να προσπαθήσει ξανά ή να προσπαθήσει να ενεργοποιήσει το debugWIRE χρησιμοποιώντας προγραμματισμό SPI. Εάν έχετε συνδέσει την πλήρη κεφαλίδα SPI, το debugWIRE θα ενεργοποιηθεί και θα σας ζητηθεί να αλλάξετε την τροφοδοσία στον στόχο. Αυτό απαιτείται για να είναι αποτελεσματικές οι αλλαγές της ασφάλειας.
Ή: Ανοίξτε το παράθυρο διαλόγου προγραμματισμού στη λειτουργία SPI και βεβαιωθείτε ότι η υπογραφή ταιριάζει με τη σωστή συσκευή. Ελέγξτε την ασφάλεια DWEN για να ενεργοποιήσετε το debugWIRE.
Σπουδαίος:
Είναι σημαντικό να αφήσετε την ασφάλεια SPIEN προγραμματισμένη, την ασφάλεια RSTDISBL μη προγραμματισμένη! Εάν δεν το κάνετε αυτό, η συσκευή θα κολλήσει σε λειτουργία debugWIRE και High VoltagΘα χρειαστεί προγραμματισμός e για την επαναφορά της ρύθμισης DWEN.
Για να απενεργοποιήσετε τη διεπαφή debugWIRE, χρησιμοποιήστε High VoltagΠρογραμματισμός απενεργοποίησης της ασφάλειας DWEN. Εναλλακτικά, χρησιμοποιήστε την ίδια τη διεπαφή debugWIRE για να απενεργοποιήσετε προσωρινά τον εαυτό της, κάτι που θα επιτρέψει τον προγραμματισμό SPI, υπό την προϋπόθεση ότι έχει ρυθμιστεί η ασφάλεια SPIEN.
Σπουδαίος:
Εάν η ασφάλεια SPIEN ΔΕΝ είχε προγραμματιστεί, το Atmel Studio δεν θα μπορέσει να ολοκληρώσει αυτήν τη λειτουργία και το High Voltagπρέπει να χρησιμοποιηθεί προγραμματισμός e.
Κατά τη διάρκεια μιας περιόδου λειτουργίας εντοπισμού σφαλμάτων, επιλέξτε την επιλογή μενού «Απενεργοποίηση αποσφαλμάτωσης WIRE και Κλείσιμο» από το μενού «Εντοπισμός σφαλμάτων». Το DebugWIRE θα απενεργοποιηθεί προσωρινά και το Atmel Studio θα χρησιμοποιήσει προγραμματισμό SPI για να καταργήσει τον προγραμματισμό της ασφάλειας DWEN.
Ο προγραμματισμός της ασφάλειας DWEN επιτρέπει σε ορισμένα μέρη του συστήματος ρολογιού να λειτουργούν σε όλες τις καταστάσεις αδράνειας. Αυτό θα αυξήσει την κατανάλωση ενέργειας του AVR ενώ βρίσκεται σε κατάσταση αναστολής λειτουργίας. Επομένως, η ασφάλεια DWEN θα πρέπει να είναι πάντα απενεργοποιημένη όταν δεν χρησιμοποιείται το debugWIRE.
Κατά το σχεδιασμό μιας στοχευόμενης εφαρμογής PCB όπου θα χρησιμοποιηθεί το debugWIRE, πρέπει να ληφθούν υπόψη τα ακόλουθα στοιχεία για τη σωστή λειτουργία:
- Οι αντιστάσεις έλξης στη γραμμή dW/(RESET) δεν πρέπει να είναι μικρότερες (ισχυρότερες) από 10 kΩ. Η pull-up αντίσταση δεν απαιτείται για τη λειτουργία debugWIRE, καθώς το εργαλείο εντοπισμού σφαλμάτων παρέχει
- Οποιοσδήποτε πυκνωτής σταθεροποίησης που είναι συνδεδεμένος στην ακίδα RESET πρέπει να αποσυνδεθεί όταν χρησιμοποιείται το debugWIRE, καθώς θα παρεμποδίσει τη σωστή λειτουργία της διεπαφής
- Όλες οι εξωτερικές πηγές επαναφοράς ή άλλα ενεργά προγράμματα οδήγησης στη γραμμή RESET πρέπει να αποσυνδεθούν, καθώς ενδέχεται να παρεμποδίσουν τη σωστή λειτουργία της διεπαφής
Ποτέ μην προγραμματίζετε τα μπιτ κλειδώματος στη συσκευή προορισμού. Η διεπαφή debugWIRE απαιτεί να διαγραφούν τα lock-bits προκειμένου να λειτουργήσουν σωστά.
4.4.15. Σημεία διακοπής λογισμικού debugWIRE
Το debugWIRE OCD μειώνεται δραστικά σε σύγκριση με το Atmel megaAVR (JTAG) ΙΨΔ. Αυτό σημαίνει ότι δεν έχει κανένα πρόγραμμα σύγκρισης σημείων διακοπής του μετρητή προγράμματος διαθέσιμο στο χρήστη για σκοπούς εντοπισμού σφαλμάτων. Ένας τέτοιος συγκριτής όντως υπάρχει για τους σκοπούς των λειτουργιών run-to-cursor και single-stepping, αλλά επιπλέον σημεία διακοπής χρήστη δεν υποστηρίζονται στο υλικό.
Αντίθετα, το πρόγραμμα εντοπισμού σφαλμάτων πρέπει να κάνει χρήση της εντολής AVR BREAK. Αυτή η εντολή μπορεί να τοποθετηθεί στο FLASH και όταν φορτωθεί για εκτέλεση, η CPU AVR θα εισέλθει σε λειτουργία διακοπής. Για να υποστηρίξει σημεία διακοπής κατά τον εντοπισμό σφαλμάτων, το πρόγραμμα εντοπισμού σφαλμάτων πρέπει να εισαγάγει μια εντολή BREAK στο FLASH στο σημείο στο οποίο οι χρήστες ζητούν ένα σημείο διακοπής. Η αρχική οδηγία πρέπει να αποθηκευτεί προσωρινά για αντικατάσταση αργότερα.
Όταν ξεπερνά μια εντολή BREAK, το πρόγραμμα εντοπισμού σφαλμάτων πρέπει να εκτελέσει την αρχική εντολή προσωρινής αποθήκευσης προκειμένου να διατηρήσει τη συμπεριφορά του προγράμματος. Σε ακραίες περιπτώσεις, το BREAK πρέπει να αφαιρεθεί από το FLASH και να αντικατασταθεί αργότερα. Όλα αυτά τα σενάρια μπορούν να προκαλέσουν εμφανείς καθυστερήσεις κατά την απλή μετάβαση από τα σημεία διακοπής, οι οποίες θα επιδεινωθούν όταν η συχνότητα ρολογιού στόχος είναι πολύ χαμηλή.
Επομένως, συνιστάται να τηρείτε τις ακόλουθες οδηγίες, όπου είναι δυνατόν:
- Να εκτελείτε πάντα τον στόχο σε όσο το δυνατόν υψηλότερη συχνότητα κατά τη διάρκεια του εντοπισμού σφαλμάτων. Η φυσική διεπαφή debugWIRE χρονίζεται από το ρολόι προορισμού.
- Προσπαθήστε να ελαχιστοποιήσετε τον αριθμό των προσθηκών και αφαιρέσεων σημείων διακοπής, καθώς το καθένα απαιτεί να αντικατασταθεί μια σελίδα FLASH στον στόχο
- Προσπαθήστε να προσθέσετε ή να αφαιρέσετε έναν μικρό αριθμό σημείων διακοπής κάθε φορά, για να ελαχιστοποιήσετε τον αριθμό των λειτουργιών εγγραφής σελίδας FLASH
- Εάν είναι δυνατόν, αποφύγετε την τοποθέτηση σημείων διακοπής σε οδηγίες διπλής λέξης
4.4.16. Κατανόηση του debugWIRE και της ασφάλειας DWEN
Όταν είναι ενεργοποιημένη, η διεπαφή debugWIRE αναλαμβάνει τον έλεγχο της καρφίτσας /RESET της συσκευής, γεγονός που την καθιστά αμοιβαία αποκλειστική στη διεπαφή SPI, η οποία χρειάζεται επίσης αυτήν την καρφίτσα. Κατά την ενεργοποίηση και απενεργοποίηση της μονάδας debugWIRE, ακολουθήστε μία από αυτές τις δύο προσεγγίσεις:
- Αφήστε το Atmel Studio να φροντίσει τα πράγματα (συνιστάται)
- Ρυθμίστε και διαγράψτε το DWEN με μη αυτόματο τρόπο (προσοχή, μόνο για προχωρημένους χρήστες!)
Σπουδαίος: Όταν χειρίζεστε το DWEN με μη αυτόματο τρόπο, είναι σημαντικό η ασφάλεια SPIEN να παραμένει ρυθμισμένη για να αποφευχθεί η χρήση High-Voltagηλεκτρονικό προγραμματισμό
Εικόνα 4-14. Κατανόηση του debugWIRE και της ασφάλειας DWEN4.4.17.TinyX-OCD (UPDI) Ειδικές Θεωρήσεις
Η καρφίτσα δεδομένων UPDI (UPDI_DATA) μπορεί να είναι αποκλειστική ή κοινόχρηστη καρφίτσα, ανάλογα με τη συσκευή AVR-στόχου. Ένας κοινός ακροδέκτης UPDI είναι ανεκτικός στα 12V και μπορεί να ρυθμιστεί ώστε να χρησιμοποιείται ως /RESET ή GPIO. Για περισσότερες λεπτομέρειες σχετικά με τον τρόπο χρήσης της καρφίτσας σε αυτές τις διαμορφώσεις, ανατρέξτε στη Φυσική διεπαφή UPDI.
Σε συσκευές που περιλαμβάνουν τη μονάδα CRCSCAN (Κυκλική σάρωση μνήμης ελέγχου πλεονασμού) αυτή η μονάδα δεν θα πρέπει να χρησιμοποιείται σε λειτουργία συνεχούς παρασκηνίου κατά τον εντοπισμό σφαλμάτων. Η λειτουργική μονάδα OCD έχει περιορισμένους πόρους σύγκρισης σημείων διακοπής υλικού, επομένως οι οδηγίες BREAK μπορούν να εισαχθούν στο φλας (σημεία διακοπής λογισμικού) όταν απαιτούνται περισσότερα σημεία διακοπής ή ακόμα και κατά τη διάρκεια της βηματοδότησης κώδικα σε επίπεδο πηγής. Η μονάδα CRC θα μπορούσε να εντοπίσει εσφαλμένα αυτό το σημείο διακοπής ως καταστροφή του περιεχομένου της μνήμης flash.
Η μονάδα CRCSCAN μπορεί επίσης να ρυθμιστεί ώστε να εκτελεί σάρωση CRC πριν από την εκκίνηση. Σε περίπτωση αναντιστοιχίας CRC, η συσκευή δεν θα εκκινήσει και φαίνεται να είναι σε κλειδωμένη κατάσταση. Ο μόνος τρόπος για να ανακτήσετε τη συσκευή από αυτήν την κατάσταση είναι να εκτελέσετε μια πλήρη διαγραφή chip και είτε να προγραμματίσετε μια έγκυρη εικόνα flash είτε να απενεργοποιήσετε το CRCSCAN προεκκίνησης. (Μια απλή διαγραφή τσιπ θα έχει ως αποτέλεσμα ένα κενό φλας με μη έγκυρο CRC και έτσι το εξάρτημα δεν θα εκκινεί.) Το Atmel Studio θα απενεργοποιήσει αυτόματα τις ασφάλειες CRCSCAN όταν το τσιπ διαγράφει μια συσκευή σε αυτήν την κατάσταση.
Κατά το σχεδιασμό μιας στοχευόμενης εφαρμογής PCB όπου θα χρησιμοποιηθεί η διεπαφή UPDI, πρέπει να ληφθούν υπόψη τα ακόλουθα στοιχεία για τη σωστή λειτουργία:
- Οι αντιστάσεις έλξης στη γραμμή UPDI δεν πρέπει να είναι μικρότερες (ισχυρότερες) από 10 kΩ. Δεν πρέπει να χρησιμοποιείται πτυσσόμενη αντίσταση ή πρέπει να αφαιρείται όταν χρησιμοποιείται UPDI. Το φυσικό UPDI έχει δυνατότητα ώθησης-έλξης, επομένως απαιτείται μόνο μια ασθενής αντίσταση έλξης για να αποφευχθεί η ενεργοποίηση του bit λανθασμένης εκκίνησης όταν η γραμμή είναι
- Εάν ο ακροδέκτης UPDI πρόκειται να χρησιμοποιηθεί ως ακροδέκτης RESET, οποιοσδήποτε πυκνωτής σταθεροποίησης πρέπει να αποσυνδεθεί όταν χρησιμοποιείτε UPDI, καθώς θα παρεμποδίσει τη σωστή λειτουργία της διεπαφής
- Εάν ο ακροδέκτης UPDI χρησιμοποιείται ως ακροδέκτης RESET ή GPIO, όλα τα εξωτερικά προγράμματα οδήγησης στη γραμμή πρέπει να αποσυνδεθούν κατά τον προγραμματισμό ή τον εντοπισμό σφαλμάτων, καθώς ενδέχεται να παρεμποδίσουν τη σωστή λειτουργία της διεπαφής.
Περιγραφή υλικού
5.1. ΚΟΚ
Ο επάνω πίνακας του Atmel-ICE έχει τρεις λυχνίες LED που υποδεικνύουν την κατάσταση της τρέχουσας περιόδου λειτουργίας εντοπισμού σφαλμάτων ή προγραμματισμού.
Τραπέζι 5-1. LED
LED | Λειτουργία |
Περιγραφή |
Αριστερά | Ισχύς στόχου | ΠΡΑΣΙΝΟ όταν η ισχύς στόχος είναι ΟΚ. Το αναβοσβήνει υποδεικνύει ένα σφάλμα ισχύος στόχου. Δεν ανάβει μέχρι να ξεκινήσει μια σύνδεση συνεδρίας προγραμματισμού/εντοπισμού σφαλμάτων. |
Μέσο | Κύρια δύναμη | ΚΟΚΚΙΝΟ όταν η τροφοδοσία της κύριας πλακέτας είναι ΟΚ. |
Δικαίωμα | Κατάσταση | Αναβοσβήνει ΠΡΑΣΙΝΟ όταν ο στόχος τρέχει/βηματίζει. OFF όταν ο στόχος έχει σταματήσει. |
5.2. Πίσω πίνακας
Το πίσω πλαίσιο του Atmel-ICE φιλοξενεί την υποδοχή Micro-B USB.5.3. Κάτω Πάνελ
Το κάτω πλαίσιο του Atmel-ICE έχει ένα αυτοκόλλητο που δείχνει τον σειριακό αριθμό και την ημερομηνία κατασκευής. Όταν αναζητάτε τεχνική υποστήριξη, συμπεριλάβετε αυτές τις λεπτομέρειες.5.4 .Αρχιτεκτονική Περιγραφή
Η αρχιτεκτονική Atmel-ICE φαίνεται στο μπλοκ διάγραμμα στο Σχήμα 5-1.
Εικόνα 5-1. Μπλοκ διάγραμμα Atmel-ICE5.4.1. Atmel-ICE Main Board
Η τροφοδοσία τροφοδοτείται στο Atmel-ICE από το δίαυλο USB, που ρυθμίζεται στα 3.3 V από έναν ρυθμιστή λειτουργίας μεταγωγής προς τα κάτω. Ο ακροδέκτης VTG χρησιμοποιείται μόνο ως είσοδος αναφοράς και ένα ξεχωριστό τροφοδοτικό τροφοδοτεί τη μεταβλητή voltagτην πλευρά των ενσωματωμένων μετατροπέων στάθμης. Στην καρδιά της κύριας πλακέτας Atmel-ICE βρίσκεται ο μικροελεγκτής Atmel AVR UC3 AT32UC3A4256, ο οποίος λειτουργεί μεταξύ 1MHz και 60MHz ανάλογα με τις εργασίες που υποβάλλονται σε επεξεργασία. Ο μικροελεγκτής περιλαμβάνει μια μονάδα υψηλής ταχύτητας USB 2.0 on-chip, η οποία επιτρέπει υψηλή απόδοση δεδομένων από και προς το πρόγραμμα εντοπισμού σφαλμάτων.
Η επικοινωνία μεταξύ του Atmel-ICE και της συσκευής στόχου πραγματοποιείται μέσω μιας τράπεζας μετατροπέων επιπέδου που μετατοπίζουν σήματα μεταξύ του όγκου λειτουργίας του στόχουtagε και η εσωτερική τομtagεπίπεδο στο Atmel-ICE. Επίσης στη διαδρομή σήματος υπάρχουν zener overvoltagΔίοδοι προστασίας e, αντιστάσεις τερματισμού σειράς, επαγωγικά φίλτρα και δίοδοι προστασίας ESD. Όλα τα κανάλια σήματος μπορούν να λειτουργήσουν στην περιοχή από 1.62 V έως 5.5 V, αν και το υλικό Atmel-ICE δεν μπορεί να οδηγήσει σε υψηλότερη έντασηtage από 5.0V. Η μέγιστη συχνότητα λειτουργίας ποικίλλει ανάλογα με τη διεπαφή στόχου που χρησιμοποιείται.
5.4.2. Συνδέσεις στόχου Atmel-ICE
Το Atmel-ICE δεν διαθέτει ενεργό ανιχνευτή. Χρησιμοποιείται ένα καλώδιο IDC 50 mil για σύνδεση με την εφαρμογή προορισμού είτε απευθείας είτε μέσω των προσαρμογέων που περιλαμβάνονται σε ορισμένα κιτ. Για περισσότερες πληροφορίες σχετικά με την καλωδίωση και τους προσαρμογείς, ανατρέξτε στην ενότητα Συναρμολόγηση του Atmel-ICE
5.4.3. Αριθμοί ανταλλακτικών συνδέσμων στόχου Atmel-ICE
Για να συνδέσετε το καλώδιο IDC Atmel-ICE 50 mil απευθείας σε μια πλακέτα στόχο, θα πρέπει να αρκεί οποιαδήποτε τυπική κεφαλίδα 50 ακίδων 10 mil. Συνιστάται να χρησιμοποιείτε κεφαλίδες με πλήκτρα για να διασφαλίσετε τον σωστό προσανατολισμό κατά τη σύνδεση στο στόχο, όπως αυτές που χρησιμοποιούνται στην πλακέτα προσαρμογέα που περιλαμβάνεται στο κιτ.
Ο αριθμός ανταλλακτικού για αυτήν την κεφαλίδα είναι: FTSH-105-01-L-DV-KAP από τη SAMTEC
Ενσωμάτωση λογισμικού
6.1. Atmel Studio
6.1.1. Ενσωμάτωση λογισμικού στο Atmel Studio
Το Atmel Studio είναι ένα ολοκληρωμένο περιβάλλον ανάπτυξης (IDE) για τη σύνταξη και τον εντοπισμό σφαλμάτων των εφαρμογών Atmel AVR και Atmel SAM σε περιβάλλοντα Windows. Το Atmel Studio παρέχει ένα εργαλείο διαχείρισης έργου, πηγή file επεξεργαστής, προσομοιωτής, assembler και front-end για C/C++, προγραμματισμό, εξομοίωση και εντοπισμό σφαλμάτων στο chip.
Το Atmel Studio έκδοση 6.2 ή νεότερη πρέπει να χρησιμοποιείται σε συνδυασμό με το Atmel-ICE.
6.1.2. Επιλογές προγραμματισμού
Το Atmel Studio υποστηρίζει τον προγραμματισμό συσκευών Atmel AVR και Atmel SAM ARM χρησιμοποιώντας το Atmel-ICE. Το παράθυρο διαλόγου προγραμματισμού μπορεί να ρυθμιστεί ώστε να χρησιμοποιεί το JTAGΛειτουργίες , aWire, SPI, PDI, TPI, SWD, ανάλογα με την επιλεγμένη συσκευή-στόχο.
Κατά τη διαμόρφωση της συχνότητας ρολογιού, ισχύουν διαφορετικοί κανόνες για διαφορετικές διεπαφές και οικογένειες στόχων:
- Ο προγραμματισμός SPI χρησιμοποιεί το ρολόι-στόχο. Ρυθμίστε τη συχνότητα ρολογιού ώστε να είναι μικρότερη από το ένα τέταρτο της συχνότητας στην οποία λειτουργεί αυτήν τη στιγμή η συσκευή προορισμού.
- JTAG ο προγραμματισμός σε συσκευές Atmel megaAVR είναι χρονισμένος από το Αυτό σημαίνει ότι η συχνότητα ρολογιού προγραμματισμού περιορίζεται στη μέγιστη συχνότητα λειτουργίας της ίδιας της συσκευής. (Συνήθως 16 MHz.)
- Προγραμματισμός AVR XMEGA και στα δύο JTAG και οι διεπαφές PDI χρονίζονται από τον προγραμματιστή. Αυτό σημαίνει ότι η συχνότητα ρολογιού προγραμματισμού περιορίζεται στη μέγιστη συχνότητα λειτουργίας της συσκευής (Συνήθως 32 MHz).
- Προγραμματισμός AVR UC3 στο JTAG Η διεπαφή είναι χρονισμένη από τον προγραμματιστή. Αυτό σημαίνει ότι η συχνότητα ρολογιού προγραμματισμού περιορίζεται στη μέγιστη συχνότητα λειτουργίας της ίδιας της συσκευής. (Περιορίζεται στα 33 MHz.)
- Ο προγραμματισμός AVR UC3 στη διασύνδεση aWire χρονίζεται με τη βέλτιστη συχνότητα που δίνεται από την ταχύτητα διαύλου SAB στη συσκευή προορισμού. Το πρόγραμμα εντοπισμού σφαλμάτων Atmel-ICE θα συντονίσει αυτόματα τον ρυθμό baud του aWire ώστε να πληροί αυτά τα κριτήρια. Αν και συνήθως δεν είναι απαραίτητο, ο χρήστης μπορεί να περιορίσει τον μέγιστο ρυθμό baud εάν χρειάζεται (π.χ. σε θορυβώδη περιβάλλοντα).
- Ο προγραμματισμός της συσκευής SAM στη διεπαφή SWD είναι χρονισμένος από τον προγραμματιστή. Η μέγιστη συχνότητα που υποστηρίζεται από το Atmel-ICE είναι 2MHz. Η συχνότητα δεν πρέπει να υπερβαίνει τη συχνότητα CPU-στόχου επί 10, fSWD ≤ 10fSYSCLK .
6.1.3.Επιλογές εντοπισμού σφαλμάτων
Κατά τον εντοπισμό σφαλμάτων μιας συσκευής Atmel AVR χρησιμοποιώντας το Atmel Studio, την καρτέλα "Εργαλείο" στις ιδιότητες του έργου view περιέχει μερικές σημαντικές επιλογές διαμόρφωσης. Οι επιλογές που χρειάζονται περαιτέρω επεξήγηση αναφέρονται αναλυτικά εδώ.
Συχνότητα ρολογιού στόχου
Η ακριβής ρύθμιση της συχνότητας ρολογιού στόχου είναι ζωτικής σημασίας για την επίτευξη αξιόπιστου εντοπισμού σφαλμάτων της συσκευής Atmel megaAVR μέσω του JTAG διεπαφή. Αυτή η ρύθμιση θα πρέπει να είναι μικρότερη από το ένα τέταρτο της χαμηλότερης συχνότητας λειτουργίας της συσκευής-στόχου AVR στην εφαρμογή που αποσφαλμοποιείται. Δείτε το megaAVR Special Considerations για περισσότερες πληροφορίες.
Οι συνεδρίες εντοπισμού σφαλμάτων στις συσκευές προορισμού debugWIRE χρονίζονται από την ίδια τη συσκευή προορισμού και επομένως δεν απαιτείται ρύθμιση συχνότητας. Το Atmel-ICE θα επιλέξει αυτόματα τον σωστό ρυθμό baud για την επικοινωνία κατά την έναρξη μιας περιόδου λειτουργίας εντοπισμού σφαλμάτων. Ωστόσο, εάν αντιμετωπίζετε προβλήματα αξιοπιστίας που σχετίζονται με ένα θορυβώδες περιβάλλον εντοπισμού σφαλμάτων, ορισμένα εργαλεία προσφέρουν τη δυνατότητα να επιβάλετε την ταχύτητα debugWIRE σε ένα κλάσμα της «συνιστώμενης» ρύθμισής της.
Οι περίοδοι λειτουργίας εντοπισμού σφαλμάτων σε συσκευές-στόχους AVR XMEGA μπορούν να χρονιστούν μέχρι τη μέγιστη ταχύτητα της ίδιας της συσκευής (συνήθως 32 MHz).
Εντοπισμός σφαλμάτων σε συσκευές προορισμού AVR UC3 μέσω του JTAG Η διεπαφή μπορεί να χρονιστεί μέχρι τη μέγιστη ταχύτητα της ίδιας της συσκευής (περιορίζεται στα 33 MHz). Ωστόσο, η βέλτιστη συχνότητα θα είναι ελαφρώς κάτω από το τρέχον ρολόι SAB στη συσκευή-στόχο.
Οι συνεδρίες εντοπισμού σφαλμάτων σε συσκευές προορισμού UC3 μέσω της διεπαφής aWire θα συντονιστούν αυτόματα στον βέλτιστο ρυθμό baud από το ίδιο το Atmel-ICE. Ωστόσο, εάν αντιμετωπίζετε προβλήματα αξιοπιστίας που σχετίζονται με ένα θορυβώδες περιβάλλον εντοπισμού σφαλμάτων, ορισμένα εργαλεία προσφέρουν τη δυνατότητα να επιβάλετε την ταχύτητα του aWire κάτω από ένα ρυθμιζόμενο όριο.
Οι περίοδοι λειτουργίας εντοπισμού σφαλμάτων σε συσκευές προορισμού SAM μέσω της διεπαφής SWD μπορούν να χρονιστούν έως και δέκα φορές το ρολόι της CPU (αλλά περιορίζονται στα 2 MHz το πολύ.)
Διατηρήστε την EEPROM
Ορίστε αυτήν την επιλογή για να αποφύγετε τη διαγραφή του EEPROM κατά τον επαναπρογραμματισμό του στόχου πριν από μια περίοδο λειτουργίας εντοπισμού σφαλμάτων.
Χρησιμοποιήστε εξωτερική επαναφορά
Εάν η εφαρμογή προορισμού απενεργοποιεί το JTAG διεπαφή, η εξωτερική επαναφορά πρέπει να τραβηχτεί χαμηλά κατά τον προγραμματισμό. Με την ενεργοποίηση αυτής της επιλογής αποφεύγεται η επανειλημμένη ερώτηση εάν θα χρησιμοποιηθεί η εξωτερική επαναφορά.
6.2 Βοηθητικό πρόγραμμα γραμμής εντολών
Το Atmel Studio συνοδεύεται από ένα βοηθητικό πρόγραμμα γραμμής εντολών που ονομάζεται atprogram και μπορεί να χρησιμοποιηθεί για τον προγραμματισμό στόχων χρησιμοποιώντας το Atmel-ICE. Κατά την εγκατάσταση του Atmel Studio μια συντόμευση που ονομάζεται "Atmel Studio 7.0. Command Prompt» δημιουργήθηκαν στο φάκελο Atmel στο μενού Έναρξη. Κάνοντας διπλό κλικ σε αυτή τη συντόμευση θα ανοίξει μια γραμμή εντολών και θα μπορούν να εισαχθούν εντολές προγραμματισμού. Το βοηθητικό πρόγραμμα γραμμής εντολών εγκαθίσταται στη διαδρομή εγκατάστασης του Atmel Studio στο φάκελο Atmel/Atmel Studio 7.0/atbackend/.
Για να λάβετε περισσότερη βοήθεια σχετικά με το βοηθητικό πρόγραμμα της γραμμής εντολών, πληκτρολογήστε την εντολή:
στο πρόγραμμα –βοήθεια
Προηγμένες τεχνικές εντοπισμού σφαλμάτων
7.1. Στόχοι Atmel AVR UC3
7.1.1. Χρήση EVTI / EVTO
Οι ακίδες EVTI και EVTO δεν είναι προσβάσιμες στο Atmel-ICE. Ωστόσο, μπορούν ακόμα να χρησιμοποιηθούν σε συνδυασμό με άλλο εξωτερικό εξοπλισμό.
Το EVTI μπορεί να χρησιμοποιηθεί για τους ακόλουθους σκοπούς:
- Ο στόχος μπορεί να αναγκαστεί να σταματήσει την εκτέλεση ως απόκριση σε ένα εξωτερικό συμβάν. Εάν τα bit Event In Control (EIC) στον καταχωρητή DC είναι γραμμένα σε 0b01, η μετάβαση από υψηλό σε χαμηλό στον ακροδέκτη EVTI θα δημιουργήσει μια συνθήκη σημείου διακοπής. Το EVTI πρέπει να παραμείνει χαμηλό για έναν κύκλο ρολογιού CPU για να εγγυηθεί ότι ένα σημείο διακοπής είναι Το Bit Εξωτερικού Σημείου Διακοπής (EXB) στο DS ορίζεται όταν συμβεί αυτό.
- Δημιουργία μηνυμάτων συγχρονισμού ιχνών. Δεν χρησιμοποιείται από το Atmel-ICE. Το EVTO μπορεί να χρησιμοποιηθεί για τους ακόλουθους σκοπούς:
- Ένδειξη ότι η CPU έχει εισέλθει στον εντοπισμό σφαλμάτων Η ρύθμιση των bit EOS στο DC σε 0b01 προκαλεί την έλξη του ακροδέκτη EVTO προς τα κάτω για έναν κύκλο ρολογιού CPU όταν η συσκευή-στόχος εισέρχεται σε λειτουργία εντοπισμού σφαλμάτων. Αυτό το σήμα μπορεί να χρησιμοποιηθεί ως πηγή ενεργοποίησης για έναν εξωτερικό παλμογράφο.
- Υποδεικνύει ότι η CPU έχει φτάσει σε σημείο διακοπής ή σημείο παρακολούθησης. Ρυθμίζοντας το bit EOC σε έναν αντίστοιχο καταχωρητή ελέγχου σημείου διακοπής/σημείου παρακολούθησης, το σημείο διακοπής ή η κατάσταση του σημείου παρακολούθησης υποδεικνύεται στον ακροδέκτη EVTO. Τα bit EOS στο DC πρέπει να οριστούν σε 0xb10 για να ενεργοποιηθεί αυτή η δυνατότητα. Ο πείρος EVTO μπορεί στη συνέχεια να συνδεθεί σε έναν εξωτερικό παλμογράφο για να εξετάσει το σημείο παρακολούθησης
- Δημιουργία ιχνών σημάτων χρονισμού. Δεν χρησιμοποιείται από το Atmel-ICE.
7.2 Στόχοι εντοπισμού σφαλμάτων WIRE
7.2.1.debugWIRE Σημεία διακοπής λογισμικού
Το debugWIRE OCD μειώνεται δραστικά σε σύγκριση με το Atmel megaAVR (JTAG) ΙΨΔ. Αυτό σημαίνει ότι δεν έχει κανένα πρόγραμμα σύγκρισης σημείων διακοπής του μετρητή προγράμματος διαθέσιμο στο χρήστη για σκοπούς εντοπισμού σφαλμάτων. Ένας τέτοιος συγκριτής όντως υπάρχει για τους σκοπούς των λειτουργιών run-to-cursor και single-stepping, αλλά επιπλέον σημεία διακοπής χρήστη δεν υποστηρίζονται στο υλικό.
Αντίθετα, το πρόγραμμα εντοπισμού σφαλμάτων πρέπει να κάνει χρήση της εντολής AVR BREAK. Αυτή η εντολή μπορεί να τοποθετηθεί στο FLASH και όταν φορτωθεί για εκτέλεση, η CPU AVR θα εισέλθει σε λειτουργία διακοπής. Για να υποστηρίξει σημεία διακοπής κατά τον εντοπισμό σφαλμάτων, το πρόγραμμα εντοπισμού σφαλμάτων πρέπει να εισαγάγει μια εντολή BREAK στο FLASH στο σημείο στο οποίο οι χρήστες ζητούν ένα σημείο διακοπής. Η αρχική οδηγία πρέπει να αποθηκευτεί προσωρινά για αντικατάσταση αργότερα.
Όταν ξεπερνά μια εντολή BREAK, το πρόγραμμα εντοπισμού σφαλμάτων πρέπει να εκτελέσει την αρχική εντολή προσωρινής αποθήκευσης προκειμένου να διατηρήσει τη συμπεριφορά του προγράμματος. Σε ακραίες περιπτώσεις, το BREAK πρέπει να αφαιρεθεί από το FLASH και να αντικατασταθεί αργότερα. Όλα αυτά τα σενάρια μπορούν να προκαλέσουν εμφανείς καθυστερήσεις κατά την απλή μετάβαση από τα σημεία διακοπής, οι οποίες θα επιδεινωθούν όταν η συχνότητα ρολογιού στόχος είναι πολύ χαμηλή.
Επομένως, συνιστάται να τηρείτε τις ακόλουθες οδηγίες, όπου είναι δυνατόν:
- Να εκτελείτε πάντα τον στόχο σε όσο το δυνατόν υψηλότερη συχνότητα κατά τη διάρκεια του εντοπισμού σφαλμάτων. Η φυσική διεπαφή debugWIRE χρονίζεται από το ρολόι προορισμού.
- Προσπαθήστε να ελαχιστοποιήσετε τον αριθμό των προσθηκών και αφαιρέσεων σημείων διακοπής, καθώς το καθένα απαιτεί να αντικατασταθεί μια σελίδα FLASH στον στόχο
- Προσπαθήστε να προσθέσετε ή να αφαιρέσετε έναν μικρό αριθμό σημείων διακοπής κάθε φορά, για να ελαχιστοποιήσετε τον αριθμό των λειτουργιών εγγραφής σελίδας FLASH
- Εάν είναι δυνατόν, αποφύγετε την τοποθέτηση σημείων διακοπής σε οδηγίες διπλής λέξης
Ιστορικό κυκλοφορίας και γνωστά ζητήματα
8.1 .Ιστορικό έκδοσης υλικολογισμικού
Πίνακας 8-1. Δημόσιες αναθεωρήσεις υλικολογισμικού
Έκδοση υλικολογισμικού (δεκαδική) | Ημερομηνία |
Σχετικές αλλαγές |
1.36 | 29.09.2016 | Προστέθηκε υποστήριξη για διεπαφή UPDI (συσκευές tinyX) Κατασκευάστηκε το μέγεθος τελικού σημείου USB με δυνατότητα διαμόρφωσης |
1.28 | 27.05.2015 | Προστέθηκε υποστήριξη για διασυνδέσεις SPI και USART DGI. Βελτιωμένη ταχύτητα SWD. Μικρές διορθώσεις σφαλμάτων. |
1.22 | 03.10.2014 | Προστέθηκε προφίλ κώδικα. Διορθώθηκε το πρόβλημα που σχετίζεται με το JTAG αλυσίδες μαργαρίτα με περισσότερα από 64 μπιτ εντολών. Διόρθωση για επέκταση επαναφοράς ARM. Διορθώθηκε το πρόβλημα με το led power. |
1.13 | 08.04.2014 | JTAG Διόρθωση συχνότητας ρολογιού. Διόρθωση για debugWIRE με μακρύ SUT. Διορθώθηκε η εντολή βαθμονόμησης ταλαντωτή. |
1.09 | 12.02.2014 | Πρώτη κυκλοφορία του Atmel-ICE. |
8.2 .Γνωστά ζητήματα που αφορούν το Atmel-ICE
8.2.1.Γενικά
- Οι αρχικές παρτίδες Atmel-ICE είχαν αδύναμο USB Μια νέα αναθεώρηση έγινε με μια νέα και πιο στιβαρή υποδοχή USB. Ως ενδιάμεσο διάλυμα έχει εφαρμοστεί εποξειδική κόλλα στις ήδη παραγόμενες μονάδες της πρώτης έκδοσης για βελτίωση της μηχανικής σταθερότητας.
8.2.2. Atmel AVR XMEGA OCD Ειδικά Θέματα
- Για την οικογένεια ATxmegaA1, υποστηρίζεται μόνο η έκδοση G ή μεταγενέστερη
8.2.1. Atmel AVR – Ειδικά ζητήματα συσκευής
- Το Cycling power στο ATmega32U6 κατά τη διάρκεια μιας περιόδου λειτουργίας εντοπισμού σφαλμάτων μπορεί να προκαλέσει απώλεια επαφής με τη συσκευή
Συμμόρφωση προϊόντος
9.1. RoHS και WEEE
Το Atmel-ICE και όλα τα αξεσουάρ κατασκευάζονται σύμφωνα με την Οδηγία RoHS (2002/95/EC) και την Οδηγία WEEE (2002/96/EC).
9.2. CE και FCC
Η μονάδα Atmel-ICE έχει δοκιμαστεί σύμφωνα με τις βασικές απαιτήσεις και άλλες σχετικές διατάξεις των Οδηγιών:
- Οδηγία 2004/108/ΕΚ (κατηγορία Β)
- FCC μέρος 15 υποτμήμα Β
- 2002/95/ΕΚ (RoHS, WEEE)
Για την αξιολόγηση χρησιμοποιούνται τα ακόλουθα πρότυπα:
- EN 61000-6-1 (2007)
- EN 61000-6-3 (2007) + A1(2011)
- FCC CFR 47 Μέρος 15 (2013)
Η Τεχνική Κατασκευή File βρίσκεται στη διεύθυνση:
Έχει γίνει κάθε προσπάθεια για την ελαχιστοποίηση των ηλεκτρομαγνητικών εκπομπών από αυτό το προϊόν. Ωστόσο, υπό ορισμένες συνθήκες, το σύστημα (αυτό το προϊόν είναι συνδεδεμένο σε ένα κύκλωμα εφαρμογής στόχου) μπορεί να εκπέμπει μεμονωμένες ηλεκτρομαγνητικές συχνότητες που υπερβαίνουν τις μέγιστες τιμές που επιτρέπονται από τα προαναφερθέντα πρότυπα. Η συχνότητα και το μέγεθος των εκπομπών θα καθοριστούν από διάφορους παράγοντες, συμπεριλαμβανομένης της διάταξης και της δρομολόγησης της εφαρμογής-στόχου με την οποία χρησιμοποιείται το προϊόν.
Ιστορικό αναθεώρησης
Έγγρ. Στροφή μηχανής. |
Ημερομηνία |
Σχόλια |
42330C | 10/2016 | Προστέθηκε διεπαφή UPDI και ενημερωμένο Ιστορικό έκδοσης υλικολογισμικού |
42330Β | 03/2016 | • Αναθεωρημένο κεφάλαιο Εντοπισμός σφαλμάτων στο Chip • Νέα μορφοποίηση του ιστορικού εκδόσεων υλικολογισμικού στο κεφάλαιο Ιστορικό εκδόσεων και γνωστά ζητήματα • Προστέθηκε pinout καλωδίου εντοπισμού σφαλμάτων |
42330A | 06/2014 | Αρχική δημοσιοποίηση εγγράφου |
Atmel®, λογότυπο Atmel και συνδυασμοί αυτών, Ενεργοποίηση απεριόριστων δυνατοτήτων®, AVR®, megaAVR®, STK®, tinyAVR®, XMEGA®, και άλλα είναι σήματα κατατεθέντα ή εμπορικά σήματα της Atmel Corporation στις ΗΠΑ και σε άλλες χώρες. ΜΠΡΑΤΣΟ®, ARM Connected® λογότυπο, Cortex®, και άλλα είναι σήματα κατατεθέντα ή εμπορικά σήματα της ARM Ltd. Windows® είναι σήμα κατατεθέν της Microsoft Corporation στις ΗΠΑ και ή σε άλλες χώρες. Άλλοι όροι και ονόματα προϊόντων μπορεί να είναι εμπορικά σήματα άλλων.
ΑΠΟΠΟΙΗΣΗ ΕΥΘΥΝΗΣ: Οι πληροφορίες σε αυτό το έγγραφο παρέχονται σε σχέση με προϊόντα Atmel. Καμία άδεια, ρητή ή σιωπηρή, με estoppel ή με άλλο τρόπο, για οποιοδήποτε δικαίωμα πνευματικής ιδιοκτησίας δεν χορηγείται από αυτό το έγγραφο ή σε σχέση με την πώληση προϊόντων Atmel. ΕΚΤΟΣ ΟΣΟΝ ΔΙΑΘΕΤΕΙ ΣΤΟΥΣ ΟΡΟΥΣ ΚΑΙ ΠΡΟΫΠΟΘΕΣΕΙΣ ΠΩΛΗΣΕΩΝ ATMEL ΠΟΥ ΕΝΤΟΠΙΖΟΝΤΑΙ ΣΤΟ ATMEL WEBΟ ΙΣΤΟΤΟΠΟΣ, Η ATMEL ΔΕΝ ΑΝΑΛΑΜΒΑΝΕΙ ΚΑΜΙΑ ΕΥΘΥΝΗ ΚΑΙ ΑΠΟΠΟΙΕΙΤΑΙ ΟΠΟΙΑΔΗΠΟΤΕ ΡΗΤΗ, ΣΙΩΠΗΡΗ Ή ΝΟΜΙΚΕΣ ΕΓΓΥΗΣΗ ΣΧΕΤΙΚΑ ΜΕ ΤΑ ΠΡΟΪΟΝΤΑ ΤΟΥ ΣΥΜΠΕΡΙΛΑΜΒΑΝΟΜΕΝΩΝ, ΑΛΛΑ ΔΕΝ ΠΕΡΙΟΡΙΣΤΟΥΝ ΤΗΝ ΣΙΩΠΗΡΩΜΕΝΗ ΕΓΓΥΗΣΗ ΤΗΣ ΕΓΓΥΗΣΗΣ ΤΗΣ ΕΓΓΥΗΣΗΣ, -ΠΑΡΑΒΑΣΗ. ΣΕ ΚΑΜΙΑ ΠΕΡΙΠΤΩΣΗ ΔΕΝ ΕΙΝΑΙ ΥΠΕΥΘΥΝΗ Η ATMEL ΓΙΑ ΟΠΟΙΑΔΗΠΟΤΕ ΑΜΕΣΗ, ΕΜΜΕΣΗ, ΕΠΑΓΓΕΛΜΑΤΙΚΗ, ΤΙΜΩΡΙΚΗ, ΕΙΔΙΚΕΣ Ή ΣΥΜΠΑΙΤΙΚΕΣ ΖΗΜΙΕΣ (ΣΥΜΠΕΡΙΛΑΜΒΑΝΟΜΕΝΩΝ, ΧΩΡΙΣ ΠΕΡΙΟΡΙΣΜΟ, ΖΗΜΙΕΣ ΓΙΑ ΑΠΩΛΕΙΑ ΚΑΙ ΑΠΩΛΕΙΑ, ΑΠΩΛΕΙΑ). ΕΚΤΟΣ ΧΡΗΣΗΣ Ή ΑΔΥΝΑΤΟΤΗΤΑΣ ΧΡΗΣΗΣ ΑΥΤΟ ΤΟ ΕΓΓΡΑΦΟ, ΑΚΟΜΑ ΚΑΙ ΑΝ ΕΧΕΙ ΣΥΜΒΟΥΛΕΥΘΕΙ η ATMEL
ΤΗΣ ΠΙΘΑΝΟΤΗΤΑΣ ΤΕΤΟΙΩΝ ΖΗΜΙΩΝ. Η Atmel δεν προβαίνει σε δηλώσεις ή εγγυήσεις σχετικά με την ακρίβεια ή την πληρότητα των περιεχομένων αυτού του εγγράφου και διατηρεί το δικαίωμα να κάνει αλλαγές στις προδιαγραφές και τις περιγραφές των προϊόντων ανά πάσα στιγμή χωρίς προειδοποίηση. Η Atmel δεν δεσμεύεται να ενημερώσει τις πληροφορίες που περιέχονται στο παρόν. Εκτός εάν ορίζεται διαφορετικά, τα προϊόντα της Atmel δεν είναι κατάλληλα και δεν πρέπει να χρησιμοποιούνται σε εφαρμογές αυτοκινήτων. Τα προϊόντα Atmel δεν προορίζονται, εξουσιοδοτούνται ή καλύπτονται από εγγύηση για χρήση ως εξαρτήματα σε εφαρμογές που προορίζονται για υποστήριξη ή διατήρηση ζωής.
ΑΠΟΠΟΙΗΣΗ ΕΥΘΥΝΗΣ ΕΦΑΡΜΟΓΩΝ ΑΣΦΑΛΕΙΑΣ ΚΡΙΣΙΜΕΣ, ΣΤΡΑΤΙΩΤΙΚΕΣ ΚΑΙ ΑΥΤΟΚΙΝΗΤΟΥ: Τα προϊόντα Atmel δεν έχουν σχεδιαστεί και δεν θα χρησιμοποιηθούν σε σχέση με εφαρμογές όπου η αποτυχία τέτοιων προϊόντων αναμένεται εύλογα να οδηγήσει σε σημαντικό τραυματισμό ή θάνατο (“Safety-Critical Αιτήσεις») χωρίς ειδική γραπτή συγκατάθεση αξιωματικού της Atmel. Οι κρίσιμες για την ασφάλεια Εφαρμογές περιλαμβάνουν, χωρίς περιορισμό, συσκευές και συστήματα υποστήριξης ζωής, εξοπλισμό ή συστήματα για τη λειτουργία πυρηνικών εγκαταστάσεων και οπλικών συστημάτων. Τα προϊόντα της Atmel δεν έχουν σχεδιαστεί ούτε προορίζονται για χρήση σε στρατιωτικές ή αεροδιαστημικές εφαρμογές ή περιβάλλοντα, εκτός εάν ορίζονται ρητά από την Atmel ως στρατιωτικής ποιότητας. Τα προϊόντα της Atmel δεν έχουν σχεδιαστεί ούτε προορίζονται για χρήση σε εφαρμογές αυτοκινήτων, εκτός εάν ορίζονται ρητά από την Atmel ως αυτοκινητοβιομηχανίας.
Atmel Corporation
1600 Technology Drive, San Jose, CA 95110 ΗΠΑ
Τ: (+1)(408) 441.0311
F: (+1)(408) 436.4200
www.atmel.com
© 2016 Atmel Corporation.
Αναθ.: Atmel-42330C-Atmel-ICE_User Guide-10/2016
Έγγραφα / Πόροι
![]() |
Atmel Οι προγραμματιστές του Atmel-ICE Debugger [pdf] Οδηγός χρήστη The Atmel-ICE Debugger Programmers, The Atmel-ICE, Debugger Programmers, Programmers |