ICE Debugger-programmeurs
Gebruikershandleiding Programmeurs en Debuggers
Atmel-ICE
GEBRUIKERSHANDLEIDING
De Atmel-ICE-debugger
Atmel-ICE is een krachtige ontwikkelingstool voor het debuggen en programmeren van op ARM® Cortex®-M gebaseerde Atmel®SAM- en Atmel AVR-microcontrollers met® On-Chip Debug-mogelijkheid.
Het ondersteunt:
- Programmeren en debuggen op de chip van alle Atmel AVR 32-bit microcontrollers op zowel JTAG en aWire-interfaces
- Programmeren en debuggen op de chip van alle Atmel AVR XMEGA®-apparaten op zowel JTAG en PDI 2-draads interfaces
- Programmeren (JTAG, SPI, UPDI) en debuggen van alle Atmel AVR 8-bit microcontrollers met OCD-ondersteuning op beide JTAG, debugWIRE- of UPDI-interfaces
- Programmeren en debuggen van alle Atmel SAM ARM Cortex-M-gebaseerde microcontrollers op zowel SWD als JTAG interfaces
- Programmering (TPI) van alle Atmel tinyAVR® 8-bit microcontrollers met ondersteuning voor deze interface
Raadpleeg de lijst met ondersteunde apparaten in de Atmel Studio-gebruikershandleiding voor een volledige lijst met apparaten en interfaces die door deze firmwareversie worden ondersteund.
Invoering
1.1. Inleiding tot de Atmel-ICE
Atmel-ICE is een krachtige ontwikkelingstool voor het debuggen en programmeren van op ARM Cortex-M gebaseerde Atmel SAM- en Atmel AVR-microcontrollers met On-Chip Debug-mogelijkheden.
Het ondersteunt:
- Programmeren en debuggen op de chip van alle Atmel AVR UC3-microcontrollers op zowel JTAG en aWire-interfaces
- Programmeren en debuggen op de chip van alle apparaten uit de AVR XMEGA-familie op zowel JTAG en PDI 2wire-interfaces
- Programmeren (JTAG en SPI) en debuggen van alle AVR 8-bit microcontrollers met OCD-ondersteuning op zowel JTAG of debugWIRE-interfaces
- Programmeren en debuggen van alle Atmel SAM ARM Cortex-M-gebaseerde microcontrollers op zowel SWD als JTAG interfaces
- Programmering (TPI) van alle Atmel tinyAVR 8-bit microcontrollers met ondersteuning voor deze interface
1.2. Atmel-ICE-functies
- Volledig compatibel met Atmel Studio
- Ondersteunt het programmeren en debuggen van alle Atmel AVR UC3 32-bit microcontrollers
- Ondersteunt programmeren en debuggen van alle 8-bit AVR XMEGA-apparaten
- Ondersteunt het programmeren en debuggen van alle 8-bit Atmel megaAVR®- en tinyAVR-apparaten met OCS
- Ondersteunt het programmeren en debuggen van alle op SAM ARM Cortex-M gebaseerde microcontrollers
- Doel operationeel voltage bereik van 1.62V tot 5.5V
- Trekt minder dan 3 mA van doel-VTref bij gebruik van debugWIRE-interface en minder dan 1 mA voor alle andere interfaces
- Ondersteunt JTAG klokfrequenties van 32 kHz tot 7.5 MHz
- Ondersteunt PDI-klokfrequenties van 32 kHz tot 7.5 MHz
- Ondersteunt debugWIRE-baudsnelheden van 4 kbit/s tot 0.5 Mbit/s
- Ondersteunt aWire-baudsnelheden van 7.5 kbit/s tot 7 Mbit/s
- Ondersteunt SPI-klokfrequenties van 8 kHz tot 5 MHz
- Ondersteunt UPDI-baudsnelheden tot 750 kbit/s
- Ondersteunt SWD-klokfrequenties van 32 kHz tot 10 MHz
- USB 2.0 hogesnelheidshostinterface
- ITM seriële tracering met maximaal 3 MB/s
- Ondersteunt DGI SPI- en USART-interfaces wanneer er geen foutopsporing of programmering plaatsvindt
- Ondersteunt 10-pins 50-mil JTAG connector met zowel AVR- als Cortex-pinouts. De standaard sondekabel ondersteunt AVR 6-pins ISP/PDI/TPI 100-mil headers en 10-pins 50-mil. Er is een adapter beschikbaar ter ondersteuning van 6-pins 50-mil, 10-pins 100-mil en 20-pins 100-mil headers. Er zijn verschillende kitopties beschikbaar met verschillende bekabeling en adapters.
1.3. Systeemvereisten
De Atmel-ICE-eenheid vereist dat een front-end debugging-omgeving Atmel Studio versie 6.2 of hoger op uw computer is geïnstalleerd.
De Atmel-ICE moet op de hostcomputer worden aangesloten met behulp van de meegeleverde USB-kabel of een gecertificeerde micro-USB-kabel.
Aan de slag met de Atmel-ICE
2.1. Volledige kitinhoud
De volledige Atmel-ICE-kit bevat deze items:
- Atmel-ICE-eenheid
- USB-kabel (1.8 m, hoge snelheid, Micro-B)
- Adapterkaart met 50 mil AVR, 100 mil AVR/SAM en 100 mil 20-pins SAM-adapters
- IDC-vlakke kabel met 10-pins 50-mil connector en 6-pins 100-mil connector
- 50 mil 10-pins mini-inktviskabel met 10 x 100 mil-aansluitingen
Figuur 2-1. Atmel-ICE volledige kitinhoud2.2. Inhoud basispakket
De Atmel-ICE basiskit bevat deze items:
- Atmel-ICE-eenheid
- USB-kabel (1.8 m, hoge snelheid, Micro-B)
- IDC-vlakke kabel met 10-pins 50-mil connector en 6-pins 100-mil connector
Figuur 2-2. Inhoud van de Atmel-ICE-basisset2.3. Inhoud PCBA-kit
De Atmel-ICE PCBA-kit bevat deze items:
- Atmel-ICE-unit zonder plastic omhulling
Figuur 2-3. Inhoud van de Atmel-ICE PCBA-kit2.4. Reserveonderdelensets
De volgende reserveonderdelensets zijn verkrijgbaar:
- Adapterkit
- Kabelset
Figuur 2-4. Inhoud Atmel-ICE-adapterset2.5. Kit voorbijview
De Atmel-ICE-kitopties worden hier schematisch weergegeven:
Figuur 2-6. Atmel-ICE-kit voorbijview2.6. Het assembleren van de Atmel-ICE
De Atmel-ICE-eenheid wordt geleverd zonder aangesloten kabels. De volledige set bevat twee kabelopties:
- 50-mil 10-pins IDC platte kabel met 6-pins ISP en 10-pins connectoren
- 50-mil 10-pins mini-inktviskabel met 10 x 100-mil sockets
Figuur 2-7. Atmel-ICE-kabelsVoor de meeste doeleinden kan de 50-mil 10-pins IDC platte kabel worden gebruikt, die ofwel standaard op de 10-pins of 6-pins connectoren kan worden aangesloten, of via de adapterkaart kan worden aangesloten. Er worden drie adapters meegeleverd op één kleine PCBA. De volgende adapters worden meegeleverd:
- 100 mil 10-pins JTAG/SWD-adapter
- 100 mil 20-pins SAM JTAG/SWD-adapter
- 50-mil 6-pins SPI/debugWIRE/PDI/aWire-adapter
Figuur 2-8. Atmel-ICE-adaptersOpmerking:
Een J van 50 miljoenTAG Er is geen adapter meegeleverd – dit komt omdat de 50-mil 10-pins IDC-kabel kan worden gebruikt om rechtstreeks verbinding te maken met een 50-mil JTAG koptekst. Voor het onderdeelnummer van het onderdeel dat wordt gebruikt voor de 50-mil 10-pins connector, zie Atmel-ICE Target Connectors onderdeelnummers.
De 6-pins ISP/PDI-header wordt meegeleverd als onderdeel van de 10-pins IDC-kabel. Deze beëindiging kan worden afgebroken als dit niet nodig is.
Om uw Atmel-ICE in de standaardconfiguratie te monteren, sluit u de 10-pins 50-mil IDC-kabel aan op het apparaat, zoals hieronder weergegeven. Zorg ervoor dat u de kabel zo richt dat de rode draad (pin 1) op de kabel op één lijn ligt met de driehoekige indicator op de blauwe band van de behuizing. De kabel moet vanaf het apparaat naar boven worden aangesloten. Zorg ervoor dat u verbinding maakt met de poort die overeenkomt met de pinout van uw doel – AVR of SAM.
Figuur 2-9. Atmel-ICE-kabelverbindingFiguur 2-10. Atmel-ICE AVR-sondeaansluiting
Figuur 2-11. Atmel-ICE SAM-sondeverbinding
2.7. Het openen van de Atmel-ICE
Opmerking:
Voor normaal gebruik mag de Atmel-ICE-unit niet worden geopend. Het openen van het toestel gebeurt op eigen risico.
Er moeten antistatische voorzorgsmaatregelen worden genomen.
De Atmel-ICE-behuizing bestaat uit drie afzonderlijke plastic componenten – bovenklep, onderklep en blauwe riem – die tijdens de montage aan elkaar worden geklikt. Om het apparaat te openen, steekt u eenvoudig een grote platte schroevendraaier in de openingen in de blauwe riem, oefent u enige druk naar binnen uit en draait u voorzichtig. Herhaal het proces bij de andere snappergaten en de bovenklep springt eraf.
Figuur 2-12. Openen van de Atmel-ICE (1)
Figuur 2-13. Openen van de Atmel-ICE (2)
Figuur 2-14. Het openen van de Atmel-ICE(3)
Om het apparaat weer te sluiten, lijnt u eenvoudigweg de boven- en onderafdekkingen correct uit en drukt u ze stevig op elkaar.
2.8. De Atmel-ICE van stroom voorzien
De Atmel-ICE wordt gevoed door de USB-bus voltage. De werking vereist minder dan 100 mA en kan daarom worden gevoed via een USB-hub. De voedings-LED gaat branden wanneer het apparaat is aangesloten. Als het apparaat niet is aangesloten tijdens een actieve programmeer- of foutopsporingssessie, gaat het apparaat naar de modus voor laag energieverbruik om de batterij van uw computer te sparen. De Atmel-ICE kan niet worden uitgeschakeld; hij moet worden losgekoppeld wanneer deze niet in gebruik is.
2.9. Verbinding maken met de hostcomputer
De Atmel-ICE communiceert voornamelijk via een standaard HID-interface en vereist geen speciaal stuurprogramma op de hostcomputer. Om de geavanceerde Data Gateway-functionaliteit van de Atmel-ICE te gebruiken, moet u het USB-stuurprogramma op de hostcomputer installeren. Dit gebeurt automatisch bij het installeren van de front-end software die gratis door Atmel wordt geleverd. Zien www.atmel.com voor meer informatie of om de nieuwste front-end software te downloaden.
De Atmel-ICE moet worden aangesloten op een beschikbare USB-poort op de hostcomputer met behulp van de meegeleverde USB-kabel of een geschikte USB-gecertificeerde microkabel. De Atmel-ICE bevat een USB 2.0-compatibele controller en kan zowel op volle snelheid als op hoge snelheid werken. Voor de beste resultaten sluit u de Atmel-ICE rechtstreeks aan op een USB 2.0-compatibele hogesnelheidshub op de hostcomputer met behulp van de meegeleverde kabel.
2.10. Installatie van USB-stuurprogramma
2.10.1. Vensters
Wanneer u de Atmel-ICE installeert op een computer met Microsoft® Windows®, wordt het USB-stuurprogramma geladen wanneer de Atmel-ICE voor het eerst wordt aangesloten.
Opmerking:
Zorg ervoor dat u de front-endsoftwarepakketten installeert voordat u het apparaat voor de eerste keer aansluit.
Eenmaal succesvol geïnstalleerd, verschijnt de Atmel-ICE in Apparaatbeheer als een “Human Interface Device”.
De Atmel-ICE aansluiten
3.1. Verbinding maken met AVR- en SAM-doelapparaten
De Atmel-ICE is uitgerust met twee 50-mil 10-pins JTAG connectoren. Beide connectoren zijn rechtstreeks elektrisch verbonden, maar voldoen aan twee verschillende pin-outs; de AVR JTAG header en de ARM Cortex Debug-header. De connector moet worden geselecteerd op basis van de pinout van het doelbord, en niet op het doel-MCU-type – bijvoorbeeldampEen SAM-apparaat gemonteerd in een AVR STK® 600-stack moet de AVR-header gebruiken.
In de verschillende Atmel-ICE kits zijn diverse bekabeling en adapters verkrijgbaar. Een voorbijview van de verbindingsopties wordt weergegeven.
Figuur 3-1. Atmel-ICE-verbindingsoptiesDe rode draad markeert pin 1 van de 10-pins 50-mil connector. Pin 1 van de 6-pins 100-mil connector wordt rechts van de sleutel geplaatst wanneer de connector vanaf de kabel wordt gezien. Pin 1 van elke connector op de adapter is gemarkeerd met een witte stip. De onderstaande afbeelding toont de pin-out van de debug-kabel. De connector gemarkeerd met A wordt aangesloten op de debugger, terwijl de B-kant wordt aangesloten op het doelbord.
Figuur 3-2. Foutopsporing in kabelpinout
3.2. Verbinding maken met een JTAG Doel
De Atmel-ICE is uitgerust met twee 50-mil 10-pins JTAG connectoren. Beide connectoren zijn rechtstreeks elektrisch verbonden, maar voldoen aan twee verschillende pin-outs; de AVR JTAG header en de ARM Cortex Debug-header. De connector moet worden geselecteerd op basis van de pinout van het doelbord, en niet op het doel-MCU-type – bijvoorbeeldampEen SAM-apparaat dat in een AVR STK600-stack is gemonteerd, moet de AVR-header gebruiken.
De aanbevolen pinout voor de 10-pins AVR JTAG connector wordt weergegeven in Figuur 4-6. De aanbevolen pinout voor de 10-pins ARM Cortex Debug-connector wordt weergegeven in Figuur 4-2.
Directe aansluiting op een standaard 10-pins 50-mil header
Gebruik de 50-pins platte kabel van 10 mil (meegeleverd in sommige sets) om rechtstreeks verbinding te maken met een bord dat dit headertype ondersteunt. Gebruik de AVR-connectorpoort op de Atmel-ICE voor headers met de AVR-pinout, en de SAM-connectorpoort voor headers die voldoen aan de ARM Cortex Debug-headerpinout.
De pinouts voor beide 10-pins connectorpoorten worden hieronder weergegeven.
Aansluiting op een standaard 10-pins 100-mil header
Gebruik een standaard adapter van 50 mil naar 100 mil om verbinding te maken met headers van 100 mil. Voor dit doel kan een adapterbord (meegeleverd in sommige kits) worden gebruikt, of als alternatief de JTAGICE3-adapter kan worden gebruikt voor AVR-doelen.
Belangrijk:
De JTAGICE3 100-mil adapter kan niet worden gebruikt met de SAM-connectorpoort, omdat pin 2 en 10 (AVR GND) op de adapter zijn aangesloten.
Verbinding met een aangepaste header van 100 mil
Als uw doelbord geen compatibele 10-pins JTAG header in 50 of 100 mil, kunt u een aangepaste pinout toewijzen met behulp van de 10-pins "mini-inktvis" -kabel (meegeleverd in sommige kits), die toegang geeft tot tien individuele 100 mil-aansluitingen.
Aansluiting op een 20-pins 100-mil kopr
Gebruik het adapterbord (meegeleverd in sommige sets) om verbinding te maken met doelen met een 20-pins 100-mil header.
Tabel 3-1. Atmel-ICE JTAG Pinbeschrijving
Naam | AVR poort pin | SAM poort pin | Beschrijving |
TCK | 1 | 4 | Testklok (kloksignaal van de Atmel-ICE naar het doelapparaat). |
TMS | 5 | 2 | Testmodus selecteren (stuursignaal van de Atmel-ICE naar het doelapparaat). |
TDI | 9 | 8 | Test Data In (gegevens verzonden van de Atmel-ICE naar het doelapparaat). |
TDO | 3 | 6 | Test Data Out (gegevens verzonden van het doelapparaat naar de Atmel-ICE). |
nTRST | 8 | – | Testreset (optioneel, alleen op sommige AVR-apparaten). Wordt gebruikt om de J te resettenTAG TAP-controller. |
nSRST | 6 | 10 | Opnieuw instellen (optioneel). Wordt gebruikt om het doelapparaat te resetten. Het wordt aanbevolen om deze pin aan te sluiten, omdat de Atmel-ICE hierdoor het doelapparaat in een resetstatus kan houden, wat essentieel kan zijn voor foutopsporing in bepaalde scenario's. |
VTG | 4 | 1 | doel voltage referentie. De Atmel-ICE'samples het doel voltage op deze pin om de niveauconverters correct van stroom te voorzien. De Atmel-ICE trekt minder dan 3 mA van deze pin in debugWIRE-modus en minder dan 1 mA in andere modi. |
GND | 2, 10 | 3, 5, 9 | Grond. Ze moeten allemaal worden aangesloten om ervoor te zorgen dat de Atmel-ICE en het doelapparaat dezelfde aardreferentie delen. |
3.3. Verbinding maken met een aWire Target
De aWire-interface heeft naast VCC en GND slechts één datalijn nodig. Op het doel is deze regel de nRESET-regel, hoewel de debugger de JTAG TDO-lijn als de datalijn.
De aanbevolen pinout voor de 6-pins aWire-connector wordt weergegeven in Afbeelding 4-8.
Aansluiting op een 6-pins 100 mil aWire-header
Gebruik de 6-pins 100-mil kraan op de platte kabel (meegeleverd in sommige sets) om verbinding te maken met een standaard 100-mil aWire-header.
Aansluiting op een 6-pins 50 mil aWire-header
Gebruik de adapterkaart (meegeleverd in sommige sets) om verbinding te maken met een standaard 50-mil aWire-header.
Verbinding met een aangepaste header van 100 mil
De 10-pins mini-inktviskabel moet worden gebruikt om verbinding te maken tussen de Atmel-ICE AVR-connectorpoort en het doelbord. Er zijn drie aansluitingen vereist, zoals beschreven in de onderstaande tabel.
Tabel 3-2. Atmel-ICE aWire-pintoewijzing
Atmel-ICE AVR-poortpinnen |
Doelpinnen | Mini-inktvispin |
aWire-pinout |
Pen 1 (TCK) | 1 | ||
Pen 2 (GND) | GND | 2 | 6 |
Pin 3 (TDO) | GEGEVENS | 3 | 1 |
Pen 4 (VTG) | VTG | 4 | 2 |
Pin 5 (TMS) | 5 | ||
Pin 6 (nSRST) | 6 | ||
Pin 7 (niet aangesloten) | 7 | ||
Pin 8 (nTRST) | 8 | ||
Pen 9 (TDI) | 9 | ||
Pen 10 (GND) | 0 |
3.4. Verbinding maken met een PDI-doel
De aanbevolen pinout voor de 6-pins PDI-connector wordt weergegeven in Afbeelding 4-11.
Aansluiting op een 6-pins 100 mil PDI-header
Gebruik de 6-pins 100-mil kraan op de platte kabel (meegeleverd in sommige sets) om verbinding te maken met een standaard 100-mil PDI-header.
Aansluiting op een 6-pins 50 mil PDI-header
Gebruik de adapterkaart (meegeleverd in sommige sets) om verbinding te maken met een standaard 50-mil PDI-header.
Verbinding met een aangepaste header van 100 mil
De 10-pins mini-inktviskabel moet worden gebruikt om verbinding te maken tussen de Atmel-ICE AVR-connectorpoort en het doelbord. Er zijn vier aansluitingen vereist, zoals beschreven in de onderstaande tabel.
Belangrijk:
De vereiste pinout is anders dan die van de JTAGICE mkII JTAG sonde, waarbij PDI_DATA is aangesloten op pin 9. De Atmel-ICE is compatibel met de pinout die wordt gebruikt door de Atmel-ICE, JTAGICE3-, AVR ONE!- en AVR Dragon™-producten.
Tabel 3-3. Atmel-ICE PDI-pintoewijzing
Atmel-ICE AVR-poortpinnen | Doelpinnen | Mini-inktvispin |
aWire-pinout |
Pen 1 (TCK) | 1 | ||
Pen 2 (GND) | GND | 2 | 6 |
Pin 3 (TDO) | GEGEVENS | 3 | 1 |
Pen 4 (VTG) | VTG | 4 | 2 |
Pin 5 (TMS) | 5 | ||
Pin 6 (nSRST) | 6 | ||
Pin 7 (niet aangesloten) | 7 | ||
Pin 8 (nTRST) | 8 | ||
Pen 9 (TDI) | 9 | ||
Pen 10 (GND) | 0 |
3.4 Verbinding maken met een PDI-doel
De aanbevolen pinout voor de 6-pins PDI-connector wordt weergegeven in Afbeelding 4-11.
Aansluiting op een 6-pins 100 mil PDI-header
Gebruik de 6-pins 100-mil kraan op de platte kabel (meegeleverd in sommige sets) om verbinding te maken met een standaard 100-mil PDI-header.
Aansluiting op een 6-pins 50 mil PDI-header
Gebruik de adapterkaart (meegeleverd in sommige sets) om verbinding te maken met een standaard 50-mil PDI-header.
Verbinding met een aangepaste header van 100 mil
De 10-pins mini-inktviskabel moet worden gebruikt om verbinding te maken tussen de Atmel-ICE AVR-connectorpoort en het doelbord. Er zijn vier aansluitingen vereist, zoals beschreven in de onderstaande tabel.
Belangrijk:
De vereiste pinout is anders dan die van de JTAGICE mkII JTAG sonde, waarbij PDI_DATA is aangesloten op pin 9. De Atmel-ICE is compatibel met de pinout die wordt gebruikt door de Atmel-ICE, JTAGICE3, AVR ONE! en AVR Dragon™ producten.
Tabel 3-3. Atmel-ICE PDI-pintoewijzing
Atmel-ICE AVR-poortpin | Doelpinnen | Mini-inktvispin | Atmel STK600 PDI pin-out |
Pen 1 (TCK) | 1 | ||
Pen 2 (GND) | GND | 2 | 6 |
Pin 3 (TDO) | PDI_DATA | 3 | 1 |
Pen 4 (VTG) | VTG | 4 | 2 |
Pin 5 (TMS) | 5 | ||
Pin 6 (nSRST) | PDI_CLK | 6 | 5 |
Pin 7 (niet aangesloten) | 7 | ||
Pin 8 (nTRST) | 8 | ||
Pen 9 (TDI) | 9 | ||
Pen 10 (GND) | 0 |
3.5 Verbinding maken met een UPDI-doel
De aanbevolen pinout voor de 6-pins UPDI-connector wordt weergegeven in Afbeelding 4-12.
Aansluiting op een 6-pins 100 mil UPDI-header
Gebruik de 6-pins 100-mil kraan op de platte kabel (meegeleverd in sommige sets) om verbinding te maken met een standaard 100-mil UPDI-header.
Aansluiting op een 6-pins 50 mil UPDI-header
Gebruik de adapterkaart (meegeleverd in sommige sets) om verbinding te maken met een standaard UPDI-header van 50 mil.
Verbinding met een aangepaste header van 100 mil
De 10-pins mini-inktviskabel moet worden gebruikt om verbinding te maken tussen de Atmel-ICE AVR-connectorpoort en het doelbord. Er zijn drie aansluitingen vereist, zoals beschreven in de onderstaande tabel.
Tabel 3-4. Atmel-ICE UPDI-pintoewijzing
Atmel-ICE AVR-poortpin | Doelpinnen | Mini-inktvispin |
Atmel STK600 UPDI pin-out |
Pen 1 (TCK) | 1 | ||
Pen 2 (GND) | GND | 2 | 6 |
Pin 3 (TDO) | UPDI_DATA | 3 | 1 |
Pen 4 (VTG) | VTG | 4 | 2 |
Pin 5 (TMS) | 5 | ||
Pin 6 (nSRST) | [/RESET gevoel] | 6 | 5 |
Pin 7 (niet aangesloten) | 7 | ||
Pin 8 (nTRST) | 8 | ||
Pen 9 (TDI) | 9 | ||
Pen 10 (GND) | 0 |
3.6 Verbinding maken met een debugWIRE Target
De aanbevolen pinout voor de 6-pins debugWIRE (SPI)-connector wordt weergegeven in Tabel 3-6.
Aansluiting op een 6-pins 100-mil SPI-header
Gebruik de 6-pins 100-mil kraan op de platte kabel (meegeleverd in sommige sets) om verbinding te maken met een standaard 100-mil SPI-header.
Aansluiting op een 6-pins 50-mil SPI-header
Gebruik de adapterkaart (meegeleverd in sommige sets) om verbinding te maken met een standaard 50-mil SPI-header.
Verbinding met een aangepaste header van 100 mil
De 10-pins mini-inktviskabel moet worden gebruikt om verbinding te maken tussen de Atmel-ICE AVR-connectorpoort en het doelbord. Er zijn drie aansluitingen vereist, zoals beschreven in Tabel 3-5.
Hoewel de debugWIRE-interface slechts één signaallijn (RESET) nodig heeft, kan VCC en GND om correct te werken, wordt geadviseerd om toegang te hebben tot de volledige SPI-connector, zodat de debugWIRE-interface kan worden in- en uitgeschakeld met behulp van SPI-programmering.
Wanneer de DWEN-zekering is ingeschakeld, wordt de SPI-interface intern overschreven, zodat de OCD-module controle heeft over de RESET-pin. De debugWIRE OCD kan zichzelf tijdelijk uitschakelen (met behulp van de knop op het debugging-tabblad in het eigenschappendialoogvenster in Atmel Studio), waardoor de controle over de RESET-regel wordt vrijgegeven. De SPI-interface is dan weer beschikbaar (alleen als de SPIEN-zekering is geprogrammeerd), waardoor de DWEN-zekering kan worden gedeprogrammeerd met behulp van de SPI-interface. Als de stroom wordt omgeschakeld voordat de DWEN-zekering niet is geprogrammeerd, zal de debugWIRE-module opnieuw de controle over de RESET-pin overnemen.
Opmerking:
Het wordt ten zeerste aanbevolen om Atmel Studio het instellen en wissen van de DWEN-zekering eenvoudigweg te laten doen.
Het is niet mogelijk om de debugWIRE-interface te gebruiken als de lockbits op het doel-AVR-apparaat zijn geprogrammeerd. Zorg er altijd voor dat de lockbits zijn gewist voordat u de DWEN-zekering programmeert en stel nooit de lockbits in terwijl de DWEN-zekering is geprogrammeerd. Als zowel de debugWIRE enable fuse (DWEN) als de lockbits zijn ingesteld, kan men High Voltage Programmering om een chip te wissen en zo de lockbits te wissen.
Wanneer de lockbits zijn gewist, wordt de debugWIRE-interface opnieuw ingeschakeld. De SPI-interface kan alleen zekeringen lezen, handtekeningen lezen en een chip wissen wanneer de DWEN-zekering niet is geprogrammeerd.
Tabel 3-5. Atmel-ICE debugWIRE pintoewijzing
Atmel-ICE AVR-poortpin | Doelpinnen |
Mini-inktvispin |
Pen 1 (TCK) | 1 | |
Pen 2 (GND) | GND | 2 |
Pin 3 (TDO) | 3 | |
Pen 4 (VTG) | VTG | 4 |
Pin 5 (TMS) | 5 | |
Pin 6 (nSRST) | RESET | 6 |
Pin 7 (niet aangesloten) | 7 | |
Pin 8 (nTRST) | 8 | |
Pen 9 (TDI) | 9 | |
Pen 10 (GND) | 0 |
3.7 Verbinding maken met een SPI Target
De aanbevolen pinout voor de 6-pins SPI-connector wordt weergegeven in Figuur 4-10.
Aansluiting op een 6-pins 100-mil SPI-header
Gebruik de 6-pins 100-mil kraan op de platte kabel (meegeleverd in sommige sets) om verbinding te maken met een standaard 100-mil SPI-header.
Aansluiting op een 6-pins 50-mil SPI-header
Gebruik de adapterkaart (meegeleverd in sommige sets) om verbinding te maken met een standaard 50-mil SPI-header.
Verbinding met een aangepaste header van 100 mil
De 10-pins mini-inktviskabel moet worden gebruikt om verbinding te maken tussen de Atmel-ICE AVR-connectorpoort en het doelbord. Er zijn zes aansluitingen nodig, zoals beschreven in onderstaande tabel.
Belangrijk:
De SPI-interface wordt effectief uitgeschakeld wanneer de debugWIRE enable-zekering (DWEN) is geprogrammeerd, zelfs als de SPIEN-zekering ook is geprogrammeerd. Om de SPI-interface opnieuw in te schakelen, moet de opdracht 'disable debugWIRE' worden gegeven tijdens een debugWIRE-foutopsporingssessie. Als u debugWIRE op deze manier wilt uitschakelen, moet de SPIEN-zekering al zijn geprogrammeerd. Als Atmel Studio er niet in slaagt debugWIRE uit te schakelen, komt dit waarschijnlijk doordat de SPIEN-zekering NIET is geprogrammeerd. Als dit het geval is, is het noodzakelijk om een high-voltage programmeerinterface voor het programmeren van de SPIEN-zekering.
Informatie:
De SPI-interface wordt vaak “ISP” genoemd, omdat dit de eerste In System Programming-interface op Atmel AVR-producten was. Er zijn nu andere interfaces beschikbaar voor In System Programming.
Tabel 3-6. Atmel-ICE SPI-pintoewijzing
Atmel-ICE AVR-poortpinnen | Doelpinnen | Mini-inktvispin |
SPI-pinout |
Pen 1 (TCK) | SCK | 1 | 3 |
Pen 2 (GND) | GND | 2 | 6 |
Pin 3 (TDO) | MISO | 3 | 1 |
Pen 4 (VTG) | VTG | 4 | 2 |
Pin 5 (TMS) | 5 | ||
Pin 6 (nSRST) | /RESETTEN | 6 | 5 |
Pin 7 (niet aangesloten) | 7 | ||
Pin 8 (nTRST) | 8 | ||
Pen 9 (TDI) | MOSI | 9 | 4 |
Pen 10 (GND) | 0 |
3.8 Verbinding maken met een TPI-doel
De aanbevolen pinout voor de 6-pins TPI-connector wordt weergegeven in Figuur 4-13.
Aansluiting op een 6-pins 100 mil TPI-header
Gebruik de 6-pins 100-mil kraan op de platte kabel (meegeleverd in sommige sets) om verbinding te maken met een standaard 100-mil TPI-header.
Aansluiting op een 6-pins 50 mil TPI-header
Gebruik de adapterkaart (meegeleverd in sommige sets) om verbinding te maken met een standaard 50 mil TPI-header.
Verbinding met een aangepaste header van 100 mil
De 10-pins mini-inktviskabel moet worden gebruikt om verbinding te maken tussen de Atmel-ICE AVR-connectorpoort en het doelbord. Er zijn zes aansluitingen nodig, zoals beschreven in onderstaande tabel.
Tabel 3-7. Atmel-ICE TPI-pintoewijzing
Atmel-ICE AVR-poortpinnen | Doelpinnen | Mini-inktvispin |
TPI-pinout |
Pen 1 (TCK) | KLOK | 1 | 3 |
Pen 2 (GND) | GND | 2 | 6 |
Pin 3 (TDO) | GEGEVENS | 3 | 1 |
Pen 4 (VTG) | VTG | 4 | 2 |
Pin 5 (TMS) | 5 |
Pin 6 (nSRST) | /RESETTEN | 6 | 5 |
Pin 7 (niet aangesloten) | 7 | ||
Pin 8 (nTRST) | 8 | ||
Pen 9 (TDI) | 9 | ||
Pen 10 (GND) | 0 |
3.9 Verbinding maken met een SWD-doel
De ARM SWD-interface is een subset van de JTAG interface, waarbij gebruik wordt gemaakt van de TCK- en TMS-pinnen, wat betekent dat bij aansluiting op een SWD-apparaat de 10-pins JTAG connector kan technisch worden gebruikt. De ARMJTAG en AVRJTAG connectoren zijn echter niet pin-compatibel, dus dit hangt af van de lay-out van het gebruikte doelbord. Bij gebruik van een STK600 of een bord dat gebruik maakt van de AVR JTAG pinout, moet de AVR-connectorpoort op de Atmel-ICE worden gebruikt. Bij aansluiting op een bord, dat gebruik maakt van de ARM JTAG pinout, moet de SAM-connectorpoort op de Atmel-ICE worden gebruikt.
De aanbevolen pinout voor de 10-pins Cortex Debug-connector wordt weergegeven in Figuur 4-4.
Aansluiting op een 10-pins 50-mil Cortex-header
Gebruik de platte kabel (meegeleverd in sommige sets) om verbinding te maken met een standaard Cortex-header van 50 mil.
Aansluiting op een 10-pins 100-mil Cortex-layout-header
Gebruik de adapterkaart (meegeleverd in sommige sets) om verbinding te maken met een Cortex-pinout-header van 100 mil.
Aansluiting op een 20-pins 100-mil SAM-header
Gebruik de adapterkaart (meegeleverd in sommige sets) om verbinding te maken met een 20-pins 100-mil SAM-header.
Verbinding met een aangepaste header van 100 mil
De 10-pins mini-inktviskabel moet worden gebruikt om verbinding te maken tussen de Atmel-ICE AVR- of SAM-connectorpoort en het doelbord. Er zijn zes aansluitingen nodig, zoals beschreven in onderstaande tabel.
Tabel 3-8. Atmel-ICE SWD-pintoewijzing
Naam | AVR poort pin | SAM poort pin | Beschrijving |
SWDC LK | 1 | 4 | Seriële draadfoutopsporingsklok. |
SWDIO | 5 | 2 | Invoer/uitvoer van seriële foutopsporingsgegevens. |
ZWO | 3 | 6 | Seriële draaduitgang (optioneel - niet op alle apparaten geïmplementeerd). |
nSRST | 6 | 10 | Opnieuw instellen. |
VTG | 4 | 1 | doel voltage referentie. |
GND | 2, 10 | 3, 5, 9 | Grond. |
3.10 Verbinding maken met de datagateway-interface
De Atmel-ICE ondersteunt een beperkte Data Gateway Interface (DGI) wanneer er geen foutopsporing en programmering plaatsvindt. De functionaliteit is identiek aan die van Atmel Xplained Pro-kits, aangedreven door het Atmel EDBG-apparaat.
De Data Gateway Interface is een interface voor het streamen van gegevens van het doelapparaat naar een computer. Dit is bedoeld als hulpmiddel bij het debuggen van applicaties en voor het demonstreren van functies in de applicatie die op het doelapparaat draait.
DGI bestaat uit meerdere kanalen voor datastreaming. De Atmel-ICE ondersteunt de volgende modi:
- USART
- SPI
Tabel 3-9. Atmel-ICE DGI USART Pin-out
AVR-poort |
SAM-poort | DGI USART-pin |
Beschrijving |
3 | 6 | TX | Verzend de pin van Atmel-ICE naar het doelapparaat |
4 | 1 | VTG | doel voltage (referentie voltage) |
8 | 7 | RX | Ontvang pin van het doelapparaat naar Atmel-ICE |
9 | 8 | KLIK | USART-klok |
2, 10 | 3, 5, 9 | GND | Grond |
Tabel 3-10. Atmel-ICE DGI SPI pin-out
AVR-poort |
SAM-poort | DGI SPI-pin |
Beschrijving |
1 | 4 | SCK | SPI-klok |
3 | 6 | MISO | Meester in slaaf uit |
4 | 1 | VTG | doel voltage (referentie voltage) |
5 | 2 | NCS | Chipselectie actief laag |
9 | 8 | MOSI | Master Uit Slave In |
2, 10 | 3, 5, 9 | GND | Grond |
Belangrijk: SPI- en USART-interfaces kunnen niet tegelijkertijd worden gebruikt.
Belangrijk: DGI en programmeren of debuggen kunnen niet tegelijkertijd worden gebruikt.
Foutopsporing op de chip
4.1 Inleiding
Foutopsporing op de chip
Een on-chip debug-module is een systeem waarmee een ontwikkelaar de uitvoering op een apparaat kan monitoren en controleren vanaf een extern ontwikkelingsplatform, meestal via een apparaat dat bekend staat als een debugger of debug-adapter.
Met een OCD-systeem kan de applicatie worden uitgevoerd terwijl de exacte elektrische en timingkarakteristieken in het doelsysteem behouden blijven, terwijl de uitvoering voorwaardelijk of handmatig kan worden gestopt en de programmastroom en het geheugen kunnen worden geïnspecteerd.
Run-modus
In de Run-modus is de uitvoering van code volledig onafhankelijk van de Atmel-ICE. De Atmel-ICE zal het doelapparaat voortdurend controleren om te zien of er een onderbrekingstoestand is opgetreden. Wanneer dit gebeurt, zal het OCD-systeem het apparaat ondervragen via de debug-interface, waardoor de gebruiker dit kan doen view de interne toestand van het apparaat.
Gestopte modus
Wanneer een breekpunt wordt bereikt, wordt de uitvoering van het programma stopgezet, maar sommige I/O kan blijven draaien alsof er geen breekpunt heeft plaatsgevonden. Bijvoorbeeldample, neem aan dat een USART-verzending zojuist is gestart wanneer een breekpunt wordt bereikt. In dit geval blijft de USART op volle snelheid draaien, waardoor de transmissie wordt voltooid, ook al bevindt de kern zich in de gestopte modus.
Hardware-breekpunten
De doel-OCD-module bevat een aantal programmatellervergelijkers die in de hardware zijn geïmplementeerd. Wanneer de programmateller overeenkomt met de waarde die is opgeslagen in een van de comparatorregisters, gaat de OCD naar de stopmodus. Omdat hardwarebreekpunten speciale hardware op de OCD-module vereisen, hangt het aantal beschikbare breekpunten af van de grootte van de OCD-module die op het doel is geïmplementeerd. Meestal wordt zo'n hardwarevergelijker door de debugger 'gereserveerd' voor intern gebruik.
Software-breekpunten
Een softwarebreekpunt is een BREAK-instructie die in het programmageheugen op het doelapparaat wordt geplaatst. Wanneer deze instructie wordt geladen, wordt de programma-uitvoering afgebroken en gaat de OCD naar de gestopte modus. Om de uitvoering voort te zetten, moet een “start”-commando worden gegeven vanaf de OCD. Niet alle Atmel-apparaten hebben OCS-modules die de BREAK-instructie ondersteunen.
4.2 SAM-apparaten met JTAG/SWD
Alle SAM-apparaten zijn voorzien van de SWD-interface voor programmeren en debuggen. Bovendien beschikken sommige SAM-apparaten over een JTAG interface met identieke functionaliteit. Controleer het gegevensblad van het apparaat voor ondersteunde interfaces van dat apparaat.
4.2.1.ARM CoreSight-componenten
Op Atmel ARM Cortex-M gebaseerde microcontrollers implementeren CoreSight-compatibele OCS-componenten. De kenmerken van deze componenten kunnen van apparaat tot apparaat variëren. Raadpleeg voor meer informatie de datasheet van het apparaat en de CoreSight-documentatie van ARM.
4.2.1. IkTAG Fysieke interface
De JTAG interface bestaat uit een 4-draads Test Access Port (TAP)-controller die voldoet aan de IEEE® 1149.1 standaard. De IEEE-standaard is ontwikkeld om een industriestandaard manier te bieden om de connectiviteit van printplaten efficiënt te testen (Boundary Scan). Atmel AVR- en SAM-apparaten hebben deze functionaliteit uitgebreid met volledige ondersteuning voor programmeren en debuggen op de chip.
Figuur 4-1. JTAG Basisprincipes van de interface
4.2.2.1 SAM JTAG Pinout (Cortex-M-foutopsporingsconnector)
Bij het ontwerpen van een applicatie-PCB met een Atmel SAM met de JTAG interface, wordt het aanbevolen om de pin-out te gebruiken zoals weergegeven in de onderstaande afbeelding. Zowel 100 mil als 50 mil varianten van deze pinout worden ondersteund, afhankelijk van de bekabeling en adapters die bij de specifieke set worden geleverd.
Figuur 4-2. SAM JTAG Kop Pinout
Tabel 4-1. SAM JTAG Pinbeschrijving
Naam | Pin |
Beschrijving |
TCK | 4 | Testklok (kloksignaal van de Atmel-ICE naar het doelapparaat). |
TMS | 2 | Testmodus selecteren (stuursignaal van de Atmel-ICE naar het doelapparaat). |
TDI | 8 | Test Data In (gegevens verzonden van de Atmel-ICE naar het doelapparaat). |
TDO | 6 | Test Data Out (gegevens verzonden van het doelapparaat naar de Atmel-ICE). |
nRESETTEN | 10 | Opnieuw instellen (optioneel). Wordt gebruikt om het doelapparaat te resetten. Het wordt aanbevolen om deze pin aan te sluiten, omdat de Atmel-ICE hierdoor het doelapparaat in een resetstatus kan houden, wat essentieel kan zijn voor foutopsporing in bepaalde scenario's. |
VTG | 1 | doel voltage referentie. De Atmel-ICE'samples het doel voltage op deze pin om de niveauconverters correct van stroom te voorzien. In deze modus trekt de Atmel-ICE minder dan 1 mA van deze pin. |
GND | 3, 5, 9 | Grond. Ze moeten allemaal worden aangesloten om ervoor te zorgen dat de Atmel-ICE en het doelapparaat dezelfde aardreferentie delen. |
SLEUTEL | 7 | Intern verbonden met de TRST-pin op de AVR-connector. Aanbevolen omdat niet verbonden. |
Tip: Vergeet niet om een ontkoppelcondensator tussen pin 1 en GND aan te brengen.
4.2.2.2 JTAG Madeliefje Ketting
De JTAG Met de interface kunnen meerdere apparaten in een serieschakeling op één enkele interface worden aangesloten. De doelapparaten moeten allemaal worden gevoed door hetzelfde voedingsvolumetage, delen een gemeenschappelijk aardknooppunt en moeten worden aangesloten zoals weergegeven in de onderstaande afbeelding.
Figuur 4-3. JTAG Daisy-ketting
Bij het aansluiten van apparaten in serieschakeling moeten de volgende punten in acht worden genomen:
- Alle apparaten moeten een gemeenschappelijke aarde delen, verbonden met GND op de Atmel-ICE-sonde
- Alle apparaten moeten op hetzelfde doelvolume werkentage. VTG op de Atmel-ICE moet op deze voltage.
- TMS en TCK zijn parallel geschakeld; TDI en TDO zijn serieel verbonden
- nSRST op de Atmel-ICE-sonde moet worden aangesloten op RESET op de apparaten als een van de apparaten in de keten zijn J uitschakeltTAG haven
- “Apparaten eerder” verwijst naar het aantal JTAG apparaten waar het TDI-signaal doorheen moet in de serieschakeling voordat het het doelapparaat bereikt. Op dezelfde manier is “apparaten na” het aantal apparaten waar het signaal doorheen moet gaan na het doelapparaat voordat het de Atmel-ICE TDO bereikt
- “Instructiebits “voor” en “na” verwijzen naar de totale som van alle JTAG de instructieregisterlengtes van apparaten, die voor en na het doelapparaat in de serieschakeling zijn aangesloten
- De totale IR-lengte (instructiebits ervoor + Atmel-doelapparaat IR-lengte + instructiebits erna) is beperkt tot maximaal 256 bits. Het aantal apparaten in de keten is beperkt tot 15 ervoor en 15 erna.
Tip:
Daisy chaining bijvampbestand: TDI → ATmega1280 → ATxmega128A1 → ATUC3A0512 → TDO.
Om verbinding te maken met de Atmel AVR XMEGA® apparaat, zijn de serieschakelingsinstellingen:
- Apparaten vóór: 1
- Apparaten na: 1
- Instructiebits ervoor: 4 (8-bit AVR-apparaten hebben 4 IR-bits)
- Instructiebits na: 5 (32-bit AVR-apparaten hebben 5 IR-bits)
Tabel 4-2. IR-lengtes van Atmel MCU's
Apparaattype | IR-lengte |
AVR 8-bits | 4-bits |
AVR 32-bits | 5-bits |
SAM | 4-bits |
4.2.3. Verbinding maken met een JTAG Doel
De Atmel-ICE is uitgerust met twee 50-mil 10-pins JTAG connectoren. Beide connectoren zijn rechtstreeks elektrisch verbonden, maar voldoen aan twee verschillende pin-outs; de AVR JTAG header en de ARM Cortex Debug-header. De connector moet worden geselecteerd op basis van de pinout van het doelbord, en niet op het doel-MCU-type – bijvoorbeeldampEen SAM-apparaat dat in een AVR STK600-stack is gemonteerd, moet de AVR-header gebruiken.
De aanbevolen pinout voor de 10-pins AVR JTAG connector wordt weergegeven in Figuur 4-6.
De aanbevolen pinout voor de 10-pins ARM Cortex Debug-connector wordt weergegeven in Figuur 4-2.
Directe aansluiting op een standaard 10-pins 50-mil header
Gebruik de 50-pins platte kabel van 10 mil (meegeleverd in sommige sets) om rechtstreeks verbinding te maken met een bord dat dit headertype ondersteunt. Gebruik de AVR-connectorpoort op de Atmel-ICE voor headers met de AVR-pinout, en de SAM-connectorpoort voor headers die voldoen aan de ARM Cortex Debug-headerpinout.
De pinouts voor beide 10-pins connectorpoorten worden hieronder weergegeven.
Aansluiting op een standaard 10-pins 100-mil header
Gebruik een standaard adapter van 50 mil naar 100 mil om verbinding te maken met headers van 100 mil. Voor dit doel kan een adapterbord (meegeleverd in sommige kits) worden gebruikt, of als alternatief de JTAGICE3-adapter kan worden gebruikt voor AVR-doelen.
Belangrijk:
De JTAGICE3 100-mil adapter kan niet worden gebruikt met de SAM-connectorpoort, omdat pin 2 en 10 (AVR GND) op de adapter zijn aangesloten.
Verbinding met een aangepaste header van 100 mil
Als uw doelbord geen compatibele 10-pins JTAG header in 50 of 100 mil, kunt u een aangepaste pinout toewijzen met behulp van de 10-pins "mini-inktvis" -kabel (meegeleverd in sommige kits), die toegang geeft tot tien individuele 100 mil-aansluitingen.
Aansluiting op een 20-polige 100-mil-header
Gebruik het adapterbord (meegeleverd in sommige sets) om verbinding te maken met doelen met een 20-pins 100-mil header.
Tabel 4-3. Atmel-ICE JTAG Pinbeschrijving
Naam | AVR poort pin | SAM poort pin | Beschrijving |
TCK | 1 | 4 | Testklok (kloksignaal van de Atmel-ICE naar het doelapparaat). |
TMS | 5 | 2 | Testmodus selecteren (stuursignaal van de Atmel-ICE naar het doelapparaat). |
TDI | 9 | 8 | Test Data In (gegevens verzonden van de Atmel-ICE naar het doelapparaat). |
TDO | 3 | 6 | Test Data Out (gegevens verzonden van het doelapparaat naar de Atmel-ICE). |
nTRST | 8 | – | Testreset (optioneel, alleen op sommige AVR-apparaten). Wordt gebruikt om de J te resettenTAG TAP-controller. |
nSRST | 6 | 10 | Opnieuw instellen (optioneel). Wordt gebruikt om het doelapparaat te resetten. Het wordt aanbevolen om deze pin aan te sluiten, omdat de Atmel-ICE hierdoor het doelapparaat in een resetstatus kan houden, wat essentieel kan zijn voor foutopsporing in bepaalde scenario's. |
VTG | 4 | 1 | doel voltage referentie. De Atmel-ICE'samples het doel voltage op deze pin om de niveauconverters correct van stroom te voorzien. De Atmel-ICE trekt minder dan 3 mA van deze pin in debugWIRE-modus en minder dan 1 mA in andere modi. |
GND | 2, 10 | 3, 5, 9 | Grond. Ze moeten allemaal worden aangesloten om ervoor te zorgen dat de Atmel-ICE en het doelapparaat dezelfde aardreferentie delen. |
4.2.4. Fysieke SWD-interface
De ARM SWD-interface is een subset van de JTAG interface, gebruikmakend van TCK- en TMS-pinnen. De ARMJTAG en AVRJTAG connectoren zijn echter niet pin-compatibel, dus bij het ontwerpen van een applicatie-PCB, die gebruik maakt van een SAM-apparaat met SWD of JTAG interface, wordt het aanbevolen om de ARM-pinout te gebruiken die wordt weergegeven in de onderstaande afbeelding. De SAM-connectorpoort op de Atmel-ICE kan rechtstreeks op deze pinout worden aangesloten.
Figuur 4-4. Aanbevolen ARM SWD/JTAG Kop Pinout
De Atmel-ICE kan ITM-tracering in UART-formaat naar de hostcomputer streamen. Trace wordt vastgelegd op de TRACE/SWO-pin van de 10-pins header (JTAG TDO-pin). Gegevens worden intern op de Atmel-ICE gebufferd en via de HID-interface naar de hostcomputer verzonden. De maximale betrouwbare gegevenssnelheid bedraagt ongeveer 3 MB/s.
4.2.5. Verbinding maken met een SWD-doel
De ARM SWD-interface is een subset van de JTAG interface, waarbij gebruik wordt gemaakt van de TCK- en TMS-pinnen, wat betekent dat bij aansluiting op een SWD-apparaat de 10-pins JTAG connector kan technisch worden gebruikt. De ARMJTAG en AVRJTAG connectoren zijn echter niet pin-compatibel, dus dit hangt af van de lay-out van het gebruikte doelbord. Bij gebruik van een STK600 of een bord dat gebruik maakt van de AVR JTAG pinout, moet de AVR-connectorpoort op de Atmel-ICE worden gebruikt. Bij aansluiting op een bord, dat gebruik maakt van de ARM JTAG pinout, moet de SAM-connectorpoort op de Atmel-ICE worden gebruikt.
De aanbevolen pinout voor de 10-pins Cortex Debug-connector wordt weergegeven in Figuur 4-4.
Aansluiting op een 10-pins 50-mil Cortex-header
Gebruik de platte kabel (meegeleverd in sommige sets) om verbinding te maken met een standaard Cortex-header van 50 mil.
Aansluiting op een 10-pins 100-mil Cortex-layout-header
Gebruik de adapterkaart (meegeleverd in sommige sets) om verbinding te maken met een Cortex-pinout-header van 100 mil.
Aansluiting op een 20-pins 100-mil SAM-header
Gebruik de adapterkaart (meegeleverd in sommige sets) om verbinding te maken met een 20-pins 100-mil SAM-header.
Verbinding met een aangepaste header van 100 mil
De 10-pins mini-inktviskabel moet worden gebruikt om verbinding te maken tussen de Atmel-ICE AVR- of SAM-connectorpoort en het doelbord. Er zijn zes aansluitingen nodig, zoals beschreven in onderstaande tabel.
Tabel 4-4. Atmel-ICE SWD-pintoewijzing
Naam | AVR poort pin | SAM poort pin | Beschrijving |
SWDC LK | 1 | 4 | Seriële draadfoutopsporingsklok. |
SWDIO | 5 | 2 | Invoer/uitvoer van seriële foutopsporingsgegevens. |
ZWO | 3 | 6 | Seriële draaduitgang (optioneel - niet op alle apparaten geïmplementeerd). |
nSRST | 6 | 10 | Opnieuw instellen. |
VTG | 4 | 1 | doel voltage referentie. |
GND | 2, 10 | 3, 5, 9 | Grond. |
4.2.6 Speciale overwegingen
WIS pincode
Sommige SAM-apparaten bevatten een ERASE-pin waarvan wordt beweerd dat deze een volledige chipwis- en ontgrendeling uitvoert van apparaten waarop de beveiligingsbit is ingesteld. Deze functie is zowel aan het apparaat zelf als aan de flitscontroller gekoppeld en maakt geen deel uit van de ARM-kern.
De ERASE-pin maakt GEEN deel uit van een debug-header en de Atmel-ICE kan dit signaal dus niet gebruiken om een apparaat te ontgrendelen. In dergelijke gevallen moet de gebruiker het wissen handmatig uitvoeren voordat een foutopsporingssessie wordt gestart.
Fysieke interfaces JTAG interface
De RESET-lijn moet altijd aangesloten zijn, zodat de Atmel-ICE de JTAG interface.
SWD-interface
De RESET-lijn moet altijd aangesloten zijn, zodat de Atmel-ICE de SWD-interface kan inschakelen.
4.3 AVR UC3-apparaten met JTAG/een draad
Alle AVR UC3-apparaten zijn voorzien van de JTAG interface voor programmeren en debuggen. Bovendien zijn sommige AVR UC3-apparaten voorzien van de aWire-interface met identieke functionaliteit met behulp van een enkele draad. Controleer het gegevensblad van het apparaat voor ondersteunde interfaces van dat apparaat
4.3.1 Atmel AVR UC3 on-chip debugsysteem
Het Atmel AVR UC3 OCD-systeem is ontworpen in overeenstemming met de Nexus 2.0-standaard (IEEE-ISTO 5001™-2003), een zeer flexibele en krachtige open on-chip debug-standaard voor 32-bit microcontrollers. Het ondersteunt de volgende functies:
- Nexus-compatibele foutopsporingsoplossing
- OCD ondersteunt elke CPU-snelheid
- Zes hardwarebreekpunten voor programmatellers
- Twee gegevensbreekpunten
- Breekpunten kunnen worden geconfigureerd als controlepunten
- Hardwarebreekpunten kunnen worden gecombineerd om onderbrekingsbereiken te creëren
- Onbeperkt aantal breekpunten voor gebruikersprogramma's (met behulp van BREAK)
- Real-time tracering van programmatellervertakkingen, gegevenstracering, procestracering (alleen ondersteund door debuggers met parallelle traceringspoort)
Voor meer informatie over het AVR UC3 OCD-systeem raadpleegt u de AVR32UC Technical Reference Manuals, te vinden op www.atmel.com/uc3.
4.3.2. IkTAG Fysieke interface
De JTAG interface bestaat uit een 4-draads Test Access Port (TAP)-controller die voldoet aan de IEEE® 1149.1 standaard. De IEEE-standaard is ontwikkeld om een industriestandaard manier te bieden om de connectiviteit van printplaten efficiënt te testen (Boundary Scan). Atmel AVR- en SAM-apparaten hebben deze functionaliteit uitgebreid met volledige ondersteuning voor programmeren en debuggen op de chip.
Figuur 4-5. JTAG Basisprincipes van de interface
4.3.2.1 AVR JTAG Pinout
Bij het ontwerpen van een applicatie-PCB, inclusief een Atmel AVR met de JTAG interface, wordt het aanbevolen om de pin-out te gebruiken zoals weergegeven in de onderstaande afbeelding. Zowel 100 mil als 50 mil varianten van deze pinout worden ondersteund, afhankelijk van de bekabeling en adapters die bij de specifieke set worden geleverd.
Figuur 4-6. AVR JTAG Kop Pinout
Tafel 4-5. AVR JTAG Pinbeschrijving
Naam | Pin |
Beschrijving |
TCK | 1 | Testklok (kloksignaal van de Atmel-ICE naar het doelapparaat). |
TMS | 5 | Testmodus selecteren (stuursignaal van de Atmel-ICE naar het doelapparaat). |
TDI | 9 | Test Data In (gegevens verzonden van de Atmel-ICE naar het doelapparaat). |
TDO | 3 | Test Data Out (gegevens verzonden van het doelapparaat naar de Atmel-ICE). |
nTRST | 8 | Testreset (optioneel, alleen op sommige AVR-apparaten). Wordt gebruikt om de J te resettenTAG TAP-controller. |
nSRST | 6 | Opnieuw instellen (optioneel). Wordt gebruikt om het doelapparaat te resetten. Het wordt aanbevolen om deze pin aan te sluiten, omdat de Atmel-ICE hierdoor het doelapparaat in een resetstatus kan houden, wat essentieel kan zijn voor foutopsporing in bepaalde scenario's. |
VTG | 4 | doel voltage referentie. De Atmel-ICE'samples het doel voltage op deze pin om de niveauconverters correct van stroom te voorzien. De Atmel-ICE trekt minder dan 3 mA van deze pin in debugWIRE-modus en minder dan 1 mA in andere modi. |
GND | 2, 10 | Grond. Beide moeten worden aangesloten om ervoor te zorgen dat de Atmel-ICE en het doelapparaat dezelfde aardreferentie delen. |
Tip: Vergeet niet om een ontkoppelcondensator tussen pin 4 en GND aan te brengen.
4.3.2.2 JTAG Madeliefje Ketting
De JTAG Met de interface kunnen meerdere apparaten in een serieschakeling op één enkele interface worden aangesloten. De doelapparaten moeten allemaal worden gevoed door hetzelfde voedingsvolumetage, delen een gemeenschappelijk aardknooppunt en moeten worden aangesloten zoals weergegeven in de onderstaande afbeelding.
Figuur 4-7. JTAG Daisy-ketting
Bij het aansluiten van apparaten in serieschakeling moeten de volgende punten in acht worden genomen:
- Alle apparaten moeten een gemeenschappelijke aarde delen, verbonden met GND op de Atmel-ICE-sonde
- Alle apparaten moeten op hetzelfde doelvolume werkentage. VTG op de Atmel-ICE moet op deze voltage.
- TMS en TCK zijn parallel geschakeld; TDI en TDO zijn in een seriële keten verbonden.
- nSRST op de Atmel-ICE-sonde moet worden aangesloten op RESET op de apparaten als een van de apparaten in de keten zijn J uitschakeltTAG haven
- “Apparaten eerder” verwijst naar het aantal JTAG apparaten waar het TDI-signaal doorheen moet in de serieschakeling voordat het het doelapparaat bereikt. Op dezelfde manier is “apparaten na” het aantal apparaten waar het signaal doorheen moet gaan na het doelapparaat voordat het de Atmel-ICE TDO bereikt
- “Instructiebits “voor” en “na” verwijzen naar de totale som van alle JTAG de instructieregisterlengtes van apparaten, die voor en na het doelapparaat in de serieschakeling zijn aangesloten
- De totale IR-lengte (instructiebits ervoor + Atmel-doelapparaat IR-lengte + instructiebits erna) is beperkt tot maximaal 256 bits. Het aantal apparaten in de keten is beperkt tot 15 ervoor en 15 erna.
Tip:
Daisy chaining bijvampbestand: TDI → ATmega1280 → ATxmega128A1 → ATUC3A0512 → TDO.
Om verbinding te maken met de Atmel AVR XMEGA® apparaat, zijn de serieschakelingsinstellingen:
- Apparaten vóór: 1
- Apparaten na: 1
- Instructiebits ervoor: 4 (8-bit AVR-apparaten hebben 4 IR-bits)
- Instructiebits na: 5 (32-bit AVR-apparaten hebben 5 IR-bits)
Tabel 4-6. IR-lengtes van Atmel MCUS
Apparaattype | IR-lengte |
AVR 8-bits | 4-bits |
AVR 32-bits | 5-bits |
SAM | 4-bits |
4.3.3.Verbinding maken met een JTAG Doel
De Atmel-ICE is uitgerust met twee 50-mil 10-pins JTAG connectoren. Beide connectoren zijn rechtstreeks elektrisch verbonden, maar voldoen aan twee verschillende pin-outs; de AVR JTAG header en de ARM Cortex Debug-header. De connector moet worden geselecteerd op basis van de pinout van het doelbord, en niet op het doel-MCU-type – bijvoorbeeldampEen SAM-apparaat dat in een AVR STK600-stack is gemonteerd, moet de AVR-header gebruiken.
De aanbevolen pinout voor de 10-pins AVR JTAG connector wordt weergegeven in Figuur 4-6.
De aanbevolen pinout voor de 10-pins ARM Cortex Debug-connector wordt weergegeven in Figuur 4-2.
Directe aansluiting op een standaard 10-pins 50-mil header
Gebruik de 50-pins platte kabel van 10 mil (meegeleverd in sommige sets) om rechtstreeks verbinding te maken met een bord dat dit headertype ondersteunt. Gebruik de AVR-connectorpoort op de Atmel-ICE voor headers met de AVR-pinout, en de SAM-connectorpoort voor headers die voldoen aan de ARM Cortex Debug-headerpinout.
De pinouts voor beide 10-pins connectorpoorten worden hieronder weergegeven.
Aansluiting op een standaard 10-pins 100-mil header
Gebruik een standaard adapter van 50 mil naar 100 mil om verbinding te maken met headers van 100 mil. Voor dit doel kan een adapterbord (meegeleverd in sommige kits) worden gebruikt, of als alternatief de JTAGICE3-adapter kan worden gebruikt voor AVR-doelen.
Belangrijk:
De JTAGICE3 100-mil adapter kan niet worden gebruikt met de SAM-connectorpoort, omdat pin 2 en 10 (AVR GND) op de adapter zijn aangesloten.
Verbinding met een aangepaste header van 100 mil
Als uw doelbord geen compatibele 10-pins JTAG header in 50 of 100 mil, kunt u een aangepaste pinout toewijzen met behulp van de 10-pins "mini-inktvis" -kabel (meegeleverd in sommige kits), die toegang geeft tot tien individuele 100 mil-aansluitingen.
Aansluiting op een 20-polige 100-mil-header
Gebruik het adapterbord (meegeleverd in sommige sets) om verbinding te maken met doelen met een 20-pins 100-mil header.
Tabel 4-7. Atmel-ICE JTAG Pinbeschrijving
Naam |
AVR-poortpin | SAM-poortpin |
Beschrijving |
TCK | 1 | 4 | Testklok (kloksignaal van de Atmel-ICE naar het doelapparaat). |
TMS | 5 | 2 | Testmodus selecteren (stuursignaal van de Atmel-ICE naar het doelapparaat). |
TDI | 9 | 8 | Test Data In (gegevens verzonden van de Atmel-ICE naar het doelapparaat). |
TDO | 3 | 6 | Test Data Out (gegevens verzonden van het doelapparaat naar de Atmel-ICE). |
nTRST | 8 | – | Testreset (optioneel, alleen op sommige AVR-apparaten). Wordt gebruikt om de J te resettenTAG TAP-controller. |
nSRST | 6 | 10 | Opnieuw instellen (optioneel). Wordt gebruikt om het doelapparaat te resetten. Het wordt aanbevolen om deze pin aan te sluiten, omdat de Atmel-ICE hierdoor het doelapparaat in een resetstatus kan houden, wat essentieel kan zijn voor foutopsporing in bepaalde scenario's. |
VTG | 4 | 1 | doel voltage referentie. De Atmel-ICE'samples het doel voltage op deze pin om de niveauconverters correct van stroom te voorzien. De Atmel-ICE trekt minder dan 3 mA van deze pin in debugWIRE-modus en minder dan 1 mA in andere modi. |
GND | 2, 10 | 3, 5, 9 | Grond. Ze moeten allemaal worden aangesloten om ervoor te zorgen dat de Atmel-ICE en het doelapparaat dezelfde aardreferentie delen. |
4.3.4 aWire fysieke interface
De aWire-interface maakt gebruik van de RESET-draad van het AVR-apparaat om programmeer- en foutopsporingsfuncties mogelijk te maken. Een speciale activeringssequentie wordt verzonden door de Atmel-ICE, waardoor de standaard RESET-functionaliteit van de pin wordt uitgeschakeld. Bij het ontwerpen van een applicatie-PCB, die een Atmel AVR met de aWire-interface bevat, wordt aanbevolen om de pin-out te gebruiken zoals weergegeven in afbeelding 4 -8. Zowel 100 mil als 50 mil varianten van deze pinout worden ondersteund, afhankelijk van de bekabeling en adapters die bij de specifieke set worden geleverd.
Figuur 4-8. aWire-header pin-out
Tip:
Omdat aWire een half-duplex interface is, wordt een pull-up-weerstand op de RESET-lijn in de orde van 47 kΩ aanbevolen om valse startbitdetectie te voorkomen bij het veranderen van richting.
De aWire-interface kan zowel als programmeer- als debugging-interface worden gebruikt. Alle functies van het OCD-systeem zijn beschikbaar via de 10-pins JTAG De interface is ook toegankelijk via aWire.
4.3.5 Verbinding maken met een aWire Target
De aWire-interface heeft naast V slechts één datalijn nodigCC en GND. Op het doel is deze regel de nRESET-regel, hoewel de debugger de JTAG TDO-lijn als de datalijn.
De aanbevolen pinout voor de 6-pins aWire-connector wordt weergegeven in Afbeelding 4-8.
Aansluiting op een 6-pins 100 mil aWire-header
Gebruik de 6-pins 100-mil kraan op de platte kabel (meegeleverd in sommige sets) om verbinding te maken met een standaard 100-mil aWire-header.
Aansluiting op een 6-pins 50 mil aWire-header
Gebruik de adapterkaart (meegeleverd in sommige sets) om verbinding te maken met een standaard 50-mil aWire-header.
Verbinding met een aangepaste header van 100 mil
De 10-pins mini-inktviskabel moet worden gebruikt om verbinding te maken tussen de Atmel-ICE AVR-connectorpoort en het doelbord. Er zijn drie aansluitingen vereist, zoals beschreven in de onderstaande tabel.
Tabel 4-8. Atmel-ICE aWire-pintoewijzing
Atmel-ICE AVR-poortpinnen | Doelpinnen | Mini-inktvispin |
aWire-pinout |
Pen 1 (TCK) | 1 | ||
Pen 2 (GND) | GND | 2 | 6 |
Pin 3 (TDO) | GEGEVENS | 3 | 1 |
Pen 4 (VTG) | VTG | 4 | 2 |
Pin 5 (TMS) | 5 | ||
Pin 6 (nSRST) | 6 | ||
Pin 7 (niet aangesloten) | 7 | ||
Pin 8 (nTRST) | 8 | ||
Pen 9 (TDI) | 9 | ||
Pen 10 (GND) | 0 |
4.3.6. Speciale overwegingen
JTAG interface
Op sommige Atmel AVR UC3-apparaten is de JTAG poort is standaard niet ingeschakeld. Bij gebruik van deze apparaten is het essentieel om de RESET-lijn aan te sluiten, zodat de Atmel-ICE de JTAG interface.
aWire-interface
De baudsnelheid van aWire-communicatie is afhankelijk van de frequentie van de systeemklok, aangezien gegevens tussen deze twee domeinen moeten worden gesynchroniseerd. De Atmel-ICE zal automatisch detecteren dat de systeemklok is verlaagd en de baudrate dienovereenkomstig opnieuw kalibreren. De automatische kalibratie werkt alleen tot een systeemklokfrequentie van 8 kHz. Als u tijdens een foutopsporingssessie overschakelt naar een lagere systeemklok, kan het contact met het doel verloren gaan.
Indien nodig kan de aWire-baudsnelheid worden beperkt door de aWire-klokparameter in te stellen. Automatische detectie werkt nog steeds, maar er wordt een plafondwaarde aan de resultaten opgelegd.
Elke stabilisatiecondensator die op de RESET-pin is aangesloten, moet worden losgekoppeld wanneer u een draad gebruikt, omdat deze de juiste werking van de interface zal verstoren. Een zwakke externe pullup (10kΩ of hoger) op deze lijn wordt aanbevolen.
Schakel de slaapmodus uit
Sommige AVR UC3-apparaten hebben een interne regelaar die kan worden gebruikt in de 3.3V-voedingsmodus met 1.8V gereguleerde I/O-lijnen. Dit betekent dat de interne regelaar zowel de kern als het grootste deel van de I/O aanstuurt. Alleen Atmel AVR ONE! debugger ondersteunt foutopsporing tijdens het gebruik van slaapmodi waarbij deze regelaar is uitgeschakeld.
4.3.7. EVTI/EVTO-gebruik
De EVTI- en EVTO-pinnen zijn niet toegankelijk op de Atmel-ICE. Ze kunnen echter nog steeds worden gebruikt in combinatie met andere externe apparatuur.
EVTI kan voor de volgende doeleinden worden gebruikt:
- Het doel kan worden gedwongen de uitvoering te stoppen als reactie op een externe gebeurtenis. Als de Event In Control (EIC)-bits in het DC-register naar 0b01 worden geschreven, zal de overgang van hoog naar laag op de EVTI-pin een breekpuntconditie genereren. EVTI moet gedurende één CPU-klokcyclus laag blijven om te garanderen dat er een breekpunt is. Het externe breekpuntbit (EXB) in DS wordt ingesteld wanneer dit gebeurt.
- Tracesynchronisatieberichten genereren. Niet gebruikt door de Atmel-ICE.
EVTO kan voor de volgende doeleinden worden gebruikt:
- Dit geeft aan dat de CPU debug is gestart. Het instellen van de EOS-bits in DC op 0b01 zorgt ervoor dat de EVTO-pin gedurende één CPU-klokcyclus laag wordt getrokken wanneer het doelapparaat naar de debug-modus gaat. Dit signaal kan worden gebruikt als triggerbron voor een externe oscilloscoop.
- Dit geeft aan dat de CPU een breekpunt of controlepunt heeft bereikt. Door de EOC-bit in te stellen in een overeenkomstig breekpunt/watchpoint-controleregister, wordt de breekpunt- of watchpoint-status aangegeven op de EVTO-pin. De EOS-bits in DC moeten worden ingesteld op 0xb10 om deze functie in te schakelen. De EVTO-pin kan vervolgens worden aangesloten op een externe oscilloscoop om het kijkpunt te onderzoeken
- Trace-timingsignalen genereren. Niet gebruikt door de Atmel-ICE.
4.4 tinyAVR-, megaAVR- en XMEGA-apparaten
AVR-apparaten beschikken over verschillende programmeer- en foutopsporingsinterfaces. Controleer het gegevensblad van het apparaat voor ondersteunde interfaces van dat apparaat.
- Een kleine AVR® apparaten hebben een TPI TPI kan alleen worden gebruikt voor het programmeren van het apparaat, en deze apparaten hebben helemaal geen foutopsporingsmogelijkheden op de chip.
- Sommige tinyAVR-apparaten en sommige megaAVR-apparaten hebben de debugWIRE-interface, die verbinding maakt met een on-chip debug-systeem dat bekend staat als tinyOCD. Alle apparaten met debugWIRE hebben ook de SPI-interface voor in-systeem
- Sommige megaAVR-apparaten hebben een JTAG interface voor programmeren en debuggen, met een on-chip debug-systeem, ook bekend als All devices with JTAG beschikken ook over de SPI-interface als alternatieve interface voor in-systeemprogrammering.
- Alle AVR XMEGA-apparaten hebben de PDI-interface voor programmering en sommige AVR XMEGA-apparaten hebben ook een JTAG interface met identieke functionaliteit.
- Nieuwe tinyAVR-apparaten hebben een UPDI-interface, die wordt gebruikt voor programmeren en debuggen
Tabel 4-9. Samenvatting van programmeer- en foutopsporingsinterfaces
|
UPDI | TPI | SPI | debugWIR E | JTAG | PDI | een draad |
ZWD |
kleine AVR | Nieuwe apparaten | Sommige apparaten | Sommige apparaten | Sommige apparaten | ||||
megaAV R | Alle apparaten | Sommige apparaten | Sommige apparaten | |||||
AVR XMEGA | Sommige apparaten | Alle apparaten | ||||||
AVR UC | Alle apparaten | Sommige apparaten | ||||||
SAM | Sommige apparaten | Alle apparaten |
4.4.1. IkTAG Fysieke interface
De JTAG interface bestaat uit een 4-draads Test Access Port (TAP)-controller die voldoet aan de IEEE® 1149.1 standaard. De IEEE-standaard is ontwikkeld om een industriestandaard manier te bieden om de connectiviteit van printplaten efficiënt te testen (Boundary Scan). Atmel AVR- en SAM-apparaten hebben deze functionaliteit uitgebreid met volledige ondersteuning voor programmeren en debuggen op de chip.
Figuur 4-9. JTAG Basisprincipes van de interface4.4.2. Verbinding maken met een JTAG Doel
De Atmel-ICE is uitgerust met twee 50-mil 10-pins JTAG connectoren. Beide connectoren zijn rechtstreeks elektrisch verbonden, maar voldoen aan twee verschillende pin-outs; de AVR JTAG header en de ARM Cortex Debug-header. De connector moet worden geselecteerd op basis van de pinout van het doelbord, en niet op het doel-MCU-type – bijvoorbeeldampEen SAM-apparaat dat in een AVR STK600-stack is gemonteerd, moet de AVR-header gebruiken.
De aanbevolen pinout voor de 10-pins AVR JTAG connector wordt weergegeven in Figuur 4-6.
De aanbevolen pinout voor de 10-pins ARM Cortex Debug-connector wordt weergegeven in Figuur 4-2.
Directe aansluiting op een standaard 10-pins 50-mil header
Gebruik de 50-pins platte kabel van 10 mil (meegeleverd in sommige sets) om rechtstreeks verbinding te maken met een bord dat dit headertype ondersteunt. Gebruik de AVR-connectorpoort op de Atmel-ICE voor headers met de AVR-pinout, en de SAM-connectorpoort voor headers die voldoen aan de ARM Cortex Debug-headerpinout.
De pinouts voor beide 10-pins connectorpoorten worden hieronder weergegeven.
Aansluiting op een standaard 10-pins 100-mil header
Gebruik een standaard adapter van 50 mil naar 100 mil om verbinding te maken met headers van 100 mil. Voor dit doel kan een adapterbord (meegeleverd in sommige kits) worden gebruikt, of als alternatief de JTAGICE3-adapter kan worden gebruikt voor AVR-doelen.
Belangrijk:
De JTAGICE3 100-mil adapter kan niet worden gebruikt met de SAM-connectorpoort, omdat pin 2 en 10 (AVR GND) op de adapter zijn aangesloten.
Verbinding met een aangepaste header van 100 mil
Als uw doelbord geen compatibele 10-pins JTAG header in 50 of 100 mil, kunt u een aangepaste pinout toewijzen met behulp van de 10-pins "mini-inktvis" -kabel (meegeleverd in sommige kits), die toegang geeft tot tien individuele 100 mil-aansluitingen.
Aansluiting op een 20-polige 100-mil-header
Gebruik het adapterbord (meegeleverd in sommige sets) om verbinding te maken met doelen met een 20-pins 100-mil header.
Tabel 4-10. Atmel-ICE JTAG Pinbeschrijving
Naam | AVR poort pin | SAM poort pin | Beschrijving |
TCK | 1 | 4 | Testklok (kloksignaal van de Atmel-ICE naar het doelapparaat). |
TMS | 5 | 2 | Testmodus selecteren (stuursignaal van de Atmel-ICE naar het doelapparaat). |
TDI | 9 | 8 | Test Data In (gegevens verzonden van de Atmel-ICE naar het doelapparaat). |
TDO | 3 | 6 | Test Data Out (gegevens verzonden van het doelapparaat naar de Atmel-ICE). |
nTRST | 8 | – | Testreset (optioneel, alleen op sommige AVR-apparaten). Wordt gebruikt om de J te resettenTAG TAP-controller. |
nSRST | 6 | 10 | Opnieuw instellen (optioneel). Wordt gebruikt om het doelapparaat te resetten. Het wordt aanbevolen om deze pin aan te sluiten, omdat de Atmel-ICE hierdoor het doelapparaat in een resetstatus kan houden, wat essentieel kan zijn voor foutopsporing in bepaalde scenario's. |
VTG | 4 | 1 | doel voltage referentie. De Atmel-ICE'samples het doel voltage op deze pin om de niveauconverters correct van stroom te voorzien. De Atmel-ICE trekt minder dan 3 mA van deze pin in debugWIRE-modus en minder dan 1 mA in andere modi. |
GND | 2, 10 | 3, 5, 9 | Grond. Ze moeten allemaal worden aangesloten om ervoor te zorgen dat de Atmel-ICE en het doelapparaat dezelfde aardreferentie delen. |
4.4.3.Fysieke SPI-interface
In-System Programming maakt gebruik van de interne SPI (Serial Peripheral Interface) van de doel-Atmel AVR om code naar de flash- en EEPROM-geheugens te downloaden. Het is geen foutopsporingsinterface. Bij het ontwerpen van een applicatie-PCB, die een AVR met de SPI-interface bevat, moet de pin-out zoals weergegeven in de onderstaande afbeelding worden gebruikt.
Figuur 4-10. Pin-out van SPI-header4.4.4. Verbinding maken met een SPI Target
De aanbevolen pinout voor de 6-pins SPI-connector wordt weergegeven in Figuur 4-10.
Aansluiting op een 6-pins 100-mil SPI-header
Gebruik de 6-pins 100-mil kraan op de platte kabel (meegeleverd in sommige sets) om verbinding te maken met een standaard 100-mil SPI-header.
Aansluiting op een 6-pins 50-mil SPI-header
Gebruik de adapterkaart (meegeleverd in sommige sets) om verbinding te maken met een standaard 50-mil SPI-header.
Verbinding met een aangepaste header van 100 mil
De 10-pins mini-inktviskabel moet worden gebruikt om verbinding te maken tussen de Atmel-ICE AVR-connectorpoort en het doelbord. Er zijn zes aansluitingen nodig, zoals beschreven in onderstaande tabel.
Belangrijk:
De SPI-interface wordt effectief uitgeschakeld wanneer de debugWIRE enable-zekering (DWEN) is geprogrammeerd, zelfs als de SPIEN-zekering ook is geprogrammeerd. Om de SPI-interface opnieuw in te schakelen, moet de opdracht 'disable debugWIRE' worden gegeven tijdens een debugWIRE-foutopsporingssessie. Als u debugWIRE op deze manier wilt uitschakelen, moet de SPIEN-zekering al zijn geprogrammeerd. Als Atmel Studio er niet in slaagt debugWIRE uit te schakelen, komt dit waarschijnlijk doordat de SPIEN-zekering NIET is geprogrammeerd. Als dit het geval is, is het noodzakelijk om een high-voltage programmeerinterface voor het programmeren van de SPIEN-zekering.
Informatie:
De SPI-interface wordt vaak “ISP” genoemd, omdat dit de eerste In System Programming-interface op Atmel AVR-producten was. Er zijn nu andere interfaces beschikbaar voor In System Programming.
Tabel 4-11. Atmel-ICE SPI-pintoewijzing
Atmel-ICE AVR-poortpinnen | Doelpinnen | Mini-inktvispin |
SPI-pinout |
Pen 1 (TCK) | SCK | 1 | 3 |
Pen 2 (GND) | GND | 2 | 6 |
Pin 3 (TDO) | MISO | 3 | 1 |
Pen 4 (VTG) | VTG | 4 | 2 |
Pin 5 (TMS) | 5 | ||
Pin 6 (nSRST) | /RESETTEN | 6 | 5 |
Pin 7 (niet aangesloten) | 7 | ||
Pin 8 (nTRST) | 8 | ||
Pen 9 (TDI) | MOSI | 9 | 4 |
Pen 10 (GND) | 0 |
4.4.5. PDI
De Program and Debug Interface (PDI) is een eigen Atmel-interface voor externe programmering en foutopsporing op de chip van een apparaat. PDI Physical is een 2-pins interface die bidirectionele half-duplex synchrone communicatie met het doelapparaat biedt.
Bij het ontwerpen van een applicatie-PCB, die een Atmel AVR met de PDI-interface bevat, moet de pin-out zoals weergegeven in de onderstaande afbeelding worden gebruikt. Een van de 6-pins adapters die bij de Atmel-ICE-kit worden geleverd, kan vervolgens worden gebruikt om de Atmel-ICE-sonde op de applicatie-PCB aan te sluiten.
Figuur 4-11. Pinout PDI-header4.4.6.Verbinding maken met een PDI-doel
De aanbevolen pinout voor de 6-pins PDI-connector wordt weergegeven in Afbeelding 4-11.
Aansluiting op een 6-pins 100 mil PDI-header
Gebruik de 6-pins 100-mil kraan op de platte kabel (meegeleverd in sommige sets) om verbinding te maken met een standaard 100-mil PDI-header.
Aansluiting op een 6-pins 50 mil PDI-header
Gebruik de adapterkaart (meegeleverd in sommige sets) om verbinding te maken met een standaard 50-mil PDI-header.
Verbinding met een aangepaste header van 100 mil
De 10-pins mini-inktviskabel moet worden gebruikt om verbinding te maken tussen de Atmel-ICE AVR-connectorpoort en het doelbord. Er zijn vier aansluitingen vereist, zoals beschreven in de onderstaande tabel.
Belangrijk:
De vereiste pinout is anders dan die van de JTAGICE mkII JTAG sonde, waarbij PDI_DATA is aangesloten op pin 9. De Atmel-ICE is compatibel met de pinout die wordt gebruikt door de Atmel-ICE, JTAGICE3, AVR ONE! en AVR Dragon™ producten.
Tabel 4-12. Atmel-ICE PDI-pintoewijzing
Atmel-ICE AVR-poortpin |
Doelpinnen | Mini-inktvispin |
Atmel STK600 PDI pin-out |
Pen 1 (TCK) | 1 | ||
Pen 2 (GND) | GND | 2 | 6 |
Pin 3 (TDO) | PDI_DATA | 3 | 1 |
Pen 4 (VTG) | VTG | 4 | 2 |
Pin 5 (TMS) | 5 | ||
Pin 6 (nSRST) | PDI_CLK | 6 | 5 |
Pin 7 (niet aangesloten) | 7 | ||
Pin 8 (nTRST) | 8 | ||
Pen 9 (TDI) | 9 | ||
Pen 10 (GND) | 0 |
4.4.7. UPDI fysieke interface
De Unified Program and Debug Interface (UPDI) is een eigen Atmel-interface voor externe programmering en foutopsporing op de chip van een apparaat. Het is een opvolger van de PDI 2-draads fysieke interface, die op alle AVR XMEGA-apparaten te vinden is. UPDI is een enkeldraads interface die bidirectionele half-duplex asynchrone communicatie met het doelapparaat biedt voor programmeer- en foutopsporingsdoeleinden.
Bij het ontwerpen van een applicatie-PCB, die een Atmel AVR met de UPDI-interface bevat, moet de hieronder weergegeven pin-out worden gebruikt. Een van de 6-pins adapters die bij de Atmel-ICE-kit worden geleverd, kan vervolgens worden gebruikt om de Atmel-ICE-sonde op de applicatie-PCB aan te sluiten.
Figuur 4-12. Pinout UPDI-header4.4.7.1 UPDI en /RESET
De UPDI-ééndraadsinterface kan een speciale pin of een gedeelde pin zijn, afhankelijk van het doel-AVR-apparaat. Raadpleeg het datablad van het apparaat voor meer informatie.
Wanneer de UPDI-interface zich op een gedeelde pin bevindt, kan de pin worden geconfigureerd als UPDI, /RESET of GPIO door de RSTPINCFG[1:0]-zekeringen in te stellen.
De RSTPINCFG[1:0]-zekeringen hebben de volgende configuraties, zoals beschreven in het gegevensblad. De praktische implicaties van elke keuze worden hier gegeven.
Tabel 4-13. RSTPINCFG[1:0] Zekeringconfiguratie
RSTPINCFG[1:0] | Configuratie |
Gebruik |
00 | GPIO | I/O-pin voor algemeen gebruik. Om toegang te krijgen tot UPDI moet er een 12V-puls op deze pin worden gezet. Er is geen externe resetbron beschikbaar. |
01 | UPDI | Speciale programmeer- en foutopsporingspin. Er is geen externe resetbron beschikbaar. |
10 | Opnieuw instellen | Signaalingang resetten. Om toegang te krijgen tot UPDI moet er een 12V-puls op deze pin worden gezet. |
11 | Gereserveerd | NA |
Opmerking: Oudere AVR-apparaten hebben een programmeerinterface, bekend als “High-Voltage Programmeren” (er bestaan zowel seriële als parallelle varianten.) Over het algemeen vereist deze interface dat er 12V wordt toegepast op de /RESET-pin gedurende de duur van de programmeersessie. De UPDI-interface is een geheel andere interface. De UPDI-pin is in de eerste plaats een programmeer- en debugging-pin, die kan worden gefuseerd om een alternatieve functie te hebben (/RESET of GPIO). Als de alternatieve functie wordt geselecteerd, is een 12V-puls op die pin vereist om de UPDI-functionaliteit opnieuw te activeren.
Opmerking: Als een ontwerp het delen van het UPDI-signaal vereist vanwege pinbeperkingen, moeten er stappen worden ondernomen om ervoor te zorgen dat het apparaat kan worden geprogrammeerd. Om ervoor te zorgen dat het UPDI-signaal correct kan functioneren en om schade aan externe componenten door de 12V-puls te voorkomen, wordt aanbevolen om alle componenten op deze pin los te koppelen wanneer u probeert het apparaat te debuggen of te programmeren. Dit kan worden gedaan met behulp van een weerstand van 0Ω, die standaard wordt gemonteerd en tijdens het debuggen wordt verwijderd of vervangen door een pinheader. Deze configuratie betekent feitelijk dat het programmeren moet worden uitgevoerd voordat het apparaat wordt gemonteerd.
Belangrijk: De Atmel-ICE ondersteunt geen 12V op de UPDI-lijn. Met andere woorden, als de UPDI-pin is geconfigureerd als GPIO of RESET, kan de Atmel-ICE de UPDI-interface niet inschakelen.
4.4.8.Verbinding maken met een UPDI-doel
De aanbevolen pinout voor de 6-pins UPDI-connector wordt weergegeven in Afbeelding 4-12.
Aansluiting op een 6-pins 100 mil UPDI-header
Gebruik de 6-pins 100-mil kraan op de platte kabel (meegeleverd in sommige sets) om verbinding te maken met een standaard 100-mil UPDI-header.
Aansluiting op een 6-pins 50 mil UPDI-header
Gebruik de adapterkaart (meegeleverd in sommige sets) om verbinding te maken met een standaard UPDI-header van 50 mil.
Verbinding met een aangepaste header van 100 mil
De 10-pins mini-inktviskabel moet worden gebruikt om verbinding te maken tussen de Atmel-ICE AVR-connectorpoort en het doelbord. Er zijn drie aansluitingen vereist, zoals beschreven in de onderstaande tabel.
Tabel 4-14. Atmel-ICE UPDI-pintoewijzing
Atmel-ICE AVR-poortpin | Doelpinnen | Mini-inktvispin |
Atmel STK600 UPDI pin-out |
Pen 1 (TCK) | 1 | ||
Pen 2 (GND) | GND | 2 | 6 |
Pin 3 (TDO) | UPDI_DATA | 3 | 1 |
Pen 4 (VTG) | VTG | 4 | 2 |
Pin 5 (TMS) | 5 | ||
Pin 6 (nSRST) | [/RESET gevoel] | 6 | 5 |
Pin 7 (niet aangesloten) | 7 | ||
Pin 8 (nTRST) | 8 | ||
Pen 9 (TDI) | 9 | ||
Pen 10 (GND) | 0 |
4.4.9 Fysieke TPI-interface
TPI is een interface voor alleen programmeren voor sommige AVR ATtiny-apparaten. Het is geen foutopsporingsinterface en deze apparaten hebben geen OCD-mogelijkheid. Bij het ontwerpen van een applicatie-PCB die een AVR met de TPI-interface bevat, moet de pin-out zoals weergegeven in de onderstaande afbeelding worden gebruikt.
Figuur 4-13. Pinout TPI-header4.4.10.Verbinding maken met een TPI-doel
De aanbevolen pinout voor de 6-pins TPI-connector wordt weergegeven in Figuur 4-13.
Aansluiting op een 6-pins 100 mil TPI-header
Gebruik de 6-pins 100-mil kraan op de platte kabel (meegeleverd in sommige sets) om verbinding te maken met een standaard 100-mil TPI-header.
Aansluiting op een 6-pins 50 mil TPI-header
Gebruik de adapterkaart (meegeleverd in sommige sets) om verbinding te maken met een standaard 50 mil TPI-header.
Verbinding met een aangepaste header van 100 mil
De 10-pins mini-inktviskabel moet worden gebruikt om verbinding te maken tussen de Atmel-ICE AVR-connectorpoort en het doelbord. Er zijn zes aansluitingen nodig, zoals beschreven in onderstaande tabel.
Tabel 4-15. Atmel-ICE TPI-pintoewijzing
Atmel-ICE AVR-poortpinnen | Doelpinnen | Mini-inktvispin |
TPI-pinout |
Pen 1 (TCK) | KLOK | 1 | 3 |
Pen 2 (GND) | GND | 2 | 6 |
Pin 3 (TDO) | GEGEVENS | 3 | 1 |
Pen 4 (VTG) | VTG | 4 | 2 |
Pin 5 (TMS) | 5 | ||
Pin 6 (nSRST) | /RESETTEN | 6 | 5 |
Pin 7 (niet aangesloten) | 7 | ||
Pin 8 (nTRST) | 8 | ||
Pen 9 (TDI) | 9 | ||
Pen 10 (GND) | 0 |
4.4.11. Geavanceerde foutopsporing (AVR JTAG /debugWIRE-apparaten)
I/O-randapparatuur
De meeste I/O-randapparaten blijven werken, ook al wordt de programma-uitvoering gestopt door een breekpunt. Example: Als tijdens een UART-transmissie een breekpunt wordt bereikt, wordt de transmissie voltooid en worden de bijbehorende bits ingesteld. De TXC-vlag (verzenden voltooid) wordt ingesteld en is beschikbaar bij de volgende stap van de code, ook al zou dit normaal gesproken later gebeuren op een echt apparaat.
Alle I/O-modules blijven in de gestopte modus draaien, met de volgende twee uitzonderingen:
- Timer/Tellers (configureerbaar met behulp van de software front-end)
- Watchdog Timer (altijd gestopt om resets tijdens foutopsporing te voorkomen)
Single Stepping I/O-toegang
Omdat de I/O in de gestopte modus blijft werken, moet ervoor worden gezorgd dat bepaalde timingproblemen worden vermeden. Bijvoorbeeldample, de code:
Wanneer deze code normaal wordt uitgevoerd, leest het TEMP-register 0xAA niet terug, omdat de gegevens nog niet fysiek op de pin zijn vergrendeld tegen de tijd dat deze wordt uitgevoerd.ampgeleid door de IN-operatie. Tussen de OUT- en de IN-instructie moet een NOP-instructie worden geplaatst om ervoor te zorgen dat de juiste waarde in het PIN-register aanwezig is.
Wanneer deze functie echter enkelvoudig door de OCD wordt geleid, zal deze code altijd 0xAA in het PIN-register weergeven, aangezien de I/O op volle snelheid draait, zelfs wanneer de kern tijdens de enkele stap wordt gestopt.
Enkele stappen en timing
Bepaalde registers moeten binnen een bepaald aantal cycli worden gelezen of geschreven nadat een stuursignaal is geactiveerd. Omdat de I/O-klok en randapparatuur in de gestopte modus op volle snelheid blijven draaien, zal het enkelvoudig doorlopen van dergelijke code niet voldoen aan de timingvereisten. Tussen twee afzonderlijke stappen kan de I/O-klok miljoenen cycli hebben doorlopen. Om registers met dergelijke timingvereisten succesvol te kunnen lezen of schrijven, moet de hele lees- of schrijfsequentie worden uitgevoerd als een atomaire operatie waarbij het apparaat op volle snelheid draait. Dit kan worden gedaan door een macro of een functieaanroep te gebruiken om de code uit te voeren, of door de run-to-cursor-functie te gebruiken in de foutopsporingsomgeving
Toegang tot 16-bits registers
De Atmel AVR-randapparatuur bevat doorgaans verschillende 16-bits registers die toegankelijk zijn via de 8-bits databus (bijvoorbeeld: TCNTn van een 16-bits timer). Het 16-bits register moet door bytes worden benaderd met behulp van twee lees- of schrijfbewerkingen. Als u halverwege een 16-bits toegang onderbreekt of deze situatie eenmalig doorloopt, kan dit resulteren in onjuiste waarden.
Beperkte I/O-registertoegang
Bepaalde registers kunnen niet worden gelezen zonder de inhoud ervan te beïnvloeden. Dergelijke registers omvatten registers die vlaggen bevatten die worden gewist door te lezen, of gebufferde dataregisters (bijvoorbeeld: UDR). De software-front-end voorkomt dat deze registers worden gelezen in de gestopte modus om het bedoelde, niet-opdringerige karakter van OCS-foutopsporing te behouden. Bovendien kunnen sommige registers niet veilig worden geschreven zonder dat er bijwerkingen optreden; deze registers zijn alleen-lezen. Bijvoorbeeldampon:
- Vlagregisters, waarbij een vlag wordt gewist door '1' naar een willekeurige te schrijven. Deze registers zijn alleen-lezen.
- UDR- en SPDR-registers kunnen niet worden gelezen zonder de status van de module te beïnvloeden. Deze registers zijn dat niet
4.4.12. megaAVR Speciale overwegingen
Software-breekpunten
Omdat het een vroege versie van de OCD-module bevat, ondersteunt ATmega128[A] het gebruik van de BREAK-instructie voor softwarebreekpunten niet.
JTAG klok
De doelklokfrequentie moet nauwkeurig worden opgegeven in de softwarefront-end voordat een foutopsporingssessie wordt gestart. Om synchronisatieredenen is de JTAG Voor betrouwbare foutopsporing moet het TCK-signaal minder dan een vierde van de doelklokfrequentie zijn. Bij het programmeren via de JTAG interface wordt de TCK-frequentie beperkt door de maximale frequentieclassificatie van het doelapparaat, en niet door de daadwerkelijk gebruikte klokfrequentie.
Houd er bij gebruik van de interne RC-oscillator rekening mee dat de frequentie van apparaat tot apparaat kan variëren en wordt beïnvloed door temperatuur en VCC veranderingen. Wees conservatief bij het opgeven van de doelklokfrequentie.
JTAGEN- en OCDEN-zekeringen
De JTAG interface wordt ingeschakeld met behulp van de JTAGEN-zekering, die standaard is geprogrammeerd. Dit geeft toegang tot de JTAG programmeerinterface. Via dit mechanisme kan de OCDEN-zekering worden geprogrammeerd (standaard is OCDEN niet geprogrammeerd). Dit geeft toegang tot de OCD om het debuggen van het apparaat te vergemakkelijken. De software front-end zorgt er altijd voor dat de OCDEN-zekering niet geprogrammeerd blijft bij het beëindigen van een sessie, waardoor onnodig stroomverbruik door de OCD-module wordt beperkt. Als de JTAGEN-zekering is onbedoeld uitgeschakeld, deze kan alleen opnieuw worden ingeschakeld met behulp van SPI of High Voltage programmeermethoden.
Als de JTAGEN-zekering is geprogrammeerd, de JTAG interface kan nog steeds worden uitgeschakeld in de firmware door de JTD-bit in te stellen. Dit zorgt ervoor dat de code niet meer kan worden opgespoord, en dit mag niet worden gedaan tijdens een poging tot een foutopsporingssessie. Als dergelijke code al wordt uitgevoerd op het Atmel AVR-apparaat bij het starten van een foutopsporingssessie, zal de Atmel-ICE de RESET-lijn bevestigen tijdens het verbinden. Als deze lijn correct is aangesloten, wordt het doel-AVR-apparaat geforceerd gereset, waardoor een JTAG verbinding.
Als de JTAG interface is ingeschakeld, wordt de JTAG pinnen kunnen niet worden gebruikt voor alternatieve pinfuncties. Zij zullen toegewijd blijven JTAG pinnen totdat de JTAG interface wordt uitgeschakeld door de JTD-bit uit de programmacode in te stellen, of door de JTAGEN-zekering via een programmeerinterface.
Tip:
Zorg ervoor dat u het selectievakje "Externe reset gebruiken" in zowel het programmeerdialoogvenster als het dialoogvenster met foutopsporingsopties aanvinkt, zodat de Atmel-ICE de RESET-regel kan bevestigen en de J opnieuw kan inschakelen.TAG interface op apparaten waarop code wordt uitgevoerd die de JTAG interface door het JTD-bit in te stellen.
IDR/OCDR-gebeurtenissen
Het IDR (In-out Data Register) is ook bekend als het OCDR (On Chip Debug Register) en wordt veelvuldig gebruikt door de debugger om informatie naar de MCU te lezen en te schrijven in de gestopte modus tijdens een debug-sessie. Wanneer het applicatieprogramma in de run-modus een byte aan gegevens naar het OCDR-register van het AVR-apparaat schrijft dat wordt gedebugd, leest de Atmel-ICE deze waarde uit en geeft deze weer in het berichtenvenster van de software-front-end. Het OCDR-register wordt elke 50 ms ondervraagd, dus schrijven ernaar met een hogere frequentie levert GEEN betrouwbare resultaten op. Wanneer het AVR-apparaat stroom verliest tijdens het debuggen, kunnen valse OCDR-gebeurtenissen worden gerapporteerd. Dit gebeurt omdat de Atmel-ICE het apparaat mogelijk nog steeds als doelvoltage daalt tot onder het minimale bedrijfsvolume van de AVRtage.
4.4.13. AVR XMEGA Speciale overwegingen
OCS en klokken
Wanneer de MCU naar de gestopte modus gaat, wordt de OCD-klok gebruikt als MCU-klok. De OCD-klok is ofwel de JTAG TCK als de JTAG interface wordt gebruikt, of de PDI_CLK als de PDI-interface wordt gebruikt.
I/O-modules in gestopte modus
In tegenstelling tot eerdere Atmel megaAVR-apparaten worden in XMEGA de I/O-modules gestopt in de stopmodus. Dit betekent dat USART-transmissies worden onderbroken en timers (en PWM) worden gestopt.
Hardware-breekpunten
Er zijn vier hardware-breekpuntvergelijkers: twee adresvergelijkers en twee waardevergelijkers. Ze hebben bepaalde beperkingen:
- Alle breekpunten moeten van hetzelfde type zijn (programma of gegevens)
- Alle gegevensbreekpunten moeten zich in hetzelfde geheugengebied bevinden (I/O, SRAM of XRAM)
- Er kan slechts één breekpunt zijn als het adresbereik wordt gebruikt
Hier zijn de verschillende combinaties die kunnen worden ingesteld:
- Twee enkele gegevens- of programma-adresbreekpunten
- Eén gegevens- of programma-adresbereikbreekpunt
- Twee afzonderlijke gegevensadresbreekpunten met vergelijking van één waarde
- Eén gegevensbreekpunt met adresbereik, waardebereik of beide
Atmel Studio zal u vertellen of het breekpunt niet kan worden ingesteld, en waarom. Gegevensbreekpunten hebben voorrang op programmabreekpunten, als er softwarebreekpunten beschikbaar zijn.
Externe reset en PDI fysiek
De fysieke PDI-interface gebruikt de resetlijn als klok. Tijdens het debuggen moet de reset-pullup 10k of meer zijn of worden verwijderd. Eventuele resetcondensatoren moeten worden verwijderd. Andere externe resetbronnen moeten worden losgekoppeld.
Foutopsporing met slaap voor ATxmegaA1 rev H en eerder
Er bestond een bug in vroege versies van ATxmegaA1-apparaten die verhinderden dat de OCS werd ingeschakeld terwijl het apparaat zich in bepaalde slaapmodi bevond. Er zijn twee oplossingen om OCD opnieuw in te schakelen:
- Ga de Atmel-ICE in. Opties in het menu Extra en schakel 'Altijd externe reset activeren bij herprogrammering apparaat' in.
- Voer een chipwising uit
De slaapmodi die deze bug activeren zijn:
- Stroomstoring
- Energiebesparing
- Stand-by
- Uitgebreide stand-by
4.4.1.debugWIRE Speciale overwegingen
De debugWIRE-communicatiepin (dW) bevindt zich fysiek op dezelfde pin als de externe reset (RESET). Een externe resetbron wordt daarom niet ondersteund als de debugWIRE-interface is ingeschakeld.
De debugWIRE Enable-zekering (DWEN) moet op het doelapparaat worden ingesteld om de debugWIRE-interface te laten functioneren. Deze zekering is standaard niet geprogrammeerd wanneer het Atmel AVR-apparaat de fabriek verlaat. De debugWIRE-interface zelf kan niet worden gebruikt om deze zekering in te stellen. Om de DWEN-zekering in te stellen, moet de SPI-modus worden gebruikt. De software front-end handelt dit automatisch af, op voorwaarde dat de benodigde SPI-pinnen zijn aangesloten. Het kan ook worden ingesteld met behulp van SPI-programmering vanuit het Atmel Studio-programmeerdialoogvenster.
Of: Probeer een foutopsporingssessie te starten op het debugWIRE-gedeelte. Als de debugWIRE-interface niet is ingeschakeld, zal Atmel Studio aanbieden om het opnieuw te proberen, of proberen debugWIRE in te schakelen met behulp van SPI-programmering. Als u de volledige SPI-header hebt aangesloten, wordt debugWIRE ingeschakeld en wordt u gevraagd het doel in te schakelen. Dit is nodig om het vervangen van de zekeringen effectief te laten zijn.
Of: Open het programmeerdialoogvenster in de SPI-modus en controleer of de handtekening overeenkomt met het juiste apparaat. Controleer de DWEN-zekering om debugWIRE in te schakelen.
Belangrijk:
Het is belangrijk om de SPIEN-zekering geprogrammeerd te laten, de RSTDISBL-zekering niet geprogrammeerd! Als u dit niet doet, blijft het apparaat in de debugWIRE-modus hangen en wordt High VoltagEr is programmering nodig om de DWEN-instelling terug te zetten.
Om de debugWIRE-interface uit te schakelen, gebruikt u High Voltage programmeren om de DWEN-zekering te deprogrammeren. Als alternatief kunt u de debugWIRE-interface zelf gebruiken om zichzelf tijdelijk uit te schakelen, waardoor SPI-programmering kan plaatsvinden, op voorwaarde dat de SPIEN-zekering is ingesteld.
Belangrijk:
Als de SPIEN-zekering NIET geprogrammeerd is gebleven, kan Atmel Studio deze bewerking niet voltooien en zal High VoltagEr moet gebruik worden gemaakt van e-programmering.
Selecteer tijdens een foutopsporingssessie de menuoptie 'DebugWIRE uitschakelen en sluiten' in het menu 'Debug'. DebugWIRE wordt tijdelijk uitgeschakeld en Atmel Studio zal SPI-programmering gebruiken om de DWEN-zekering te deprogrammeren.
Als de DWEN-zekering is geprogrammeerd, kunnen sommige delen van het kloksysteem in alle slaapmodi werken. Hierdoor zal het stroomverbruik van de AVR in de slaapstand toenemen. De DWEN-zekering moet daarom altijd worden uitgeschakeld als debugWIRE niet wordt gebruikt.
Bij het ontwerpen van een PCB voor een doeltoepassing waarbij debugWIRE zal worden gebruikt, moeten de volgende overwegingen worden gemaakt voor een correcte werking:
- Pull-up-weerstanden op de dW/(RESET)-lijn mogen niet kleiner (sterker) zijn dan 10 kΩ. De pull-up-weerstand is niet vereist voor de debugWIRE-functionaliteit, aangezien de debugger-tool daarin voorziet
- Elke stabilisatiecondensator die op de RESET-pin is aangesloten, moet worden losgekoppeld bij gebruik van debugWIRE, omdat deze de juiste werking van de interface zullen verstoren
- Alle externe resetbronnen of andere actieve stuurprogramma's op de RESET-lijn moeten worden losgekoppeld, omdat deze de juiste werking van de interface kunnen verstoren
Programmeer nooit de lock-bits op het doelapparaat. De debugWIRE-interface vereist dat lock-bits worden gewist om correct te kunnen functioneren.
4.4.15. debugWIRE softwarebreekpunten
De debugWIRE OCD is drastisch verkleind in vergelijking met de Atmel megaAVR (JTAG) OCD. Dit betekent dat er geen breekpuntvergelijkers voor programmatellers beschikbaar zijn voor de gebruiker voor foutopsporingsdoeleinden. Er bestaat wel een dergelijke vergelijker voor run-to-cursor- en single-stepping-bewerkingen, maar aanvullende gebruikersonderbrekingspunten worden niet ondersteund in hardware.
In plaats daarvan moet de debugger gebruik maken van de AVR BREAK-instructie. Deze instructie kan in FLASH worden geplaatst en wanneer deze wordt geladen voor uitvoering, zal de CPU van de AVR in de gestopte modus gaan. Om breekpunten tijdens het debuggen te ondersteunen, moet de debugger een BREAK-instructie in FLASH invoegen op het punt waarop de gebruikers een breekpunt aanvragen. De originele instructie moet in de cache worden opgeslagen voor latere vervanging.
Bij het enkelvoudig overstappen van een BREAK-instructie moet de debugger de oorspronkelijke in de cache opgeslagen instructie uitvoeren om het programmagedrag te behouden. In extreme gevallen moet de BREAK uit FLASH worden verwijderd en later worden vervangen. Al deze scenario's kunnen schijnbare vertragingen veroorzaken bij het enkelvoudig stappen vanaf breekpunten, wat nog zal worden verergerd wanneer de doelklokfrequentie erg laag is.
Het wordt daarom aanbevolen om, waar mogelijk, de volgende richtlijnen in acht te nemen:
- Laat het doel tijdens het debuggen altijd op een zo hoog mogelijke frequentie draaien. De fysieke debugWIRE-interface wordt geklokt vanaf de doelklok.
- Probeer het aantal toevoegingen en verwijderingen van breekpunten tot een minimum te beperken, omdat voor elk ervan een FLASH-pagina op het doel moet worden vervangen
- Probeer een klein aantal breekpunten tegelijk toe te voegen of te verwijderen, om het aantal FLASH-paginaschrijfbewerkingen te minimaliseren
- Vermijd indien mogelijk het plaatsen van breekpunten bij instructies met dubbele woorden
4.4.16. DebugWIRE en de DWEN-zekering begrijpen
Indien ingeschakeld, neemt de debugWIRE-interface de controle over de /RESET-pin van het apparaat, waardoor deze wederzijds exclusief is voor de SPI-interface, die deze pin ook nodig heeft. Volg bij het in- en uitschakelen van de debugWIRE-module een van deze twee benaderingen:
- Laat Atmel Studio de zaken regelen (aanbevolen)
- DWEN handmatig instellen en wissen (wees voorzichtig, alleen voor geavanceerde gebruikers!)
Belangrijk: Bij het handmatig manipuleren van DWEN is het belangrijk dat de SPIEN-zekering ingesteld blijft om te voorkomen dat High-Vol moet worden gebruikttage programmering
Figuur 4-14. DebugWIRE en de DWEN-zekering begrijpen4.4.17. Speciale overwegingen voor TinyX-OCD (UPDI).
De UPDI-datapin (UPDI_DATA) kan een speciale pin of een gedeelde pin zijn, afhankelijk van het doel-AVR-apparaat. Een gedeelde UPDI-pin is 12V-tolerant en kan worden geconfigureerd om te worden gebruikt als /RESET of GPIO. Zie UPDI Physical Interface voor meer informatie over het gebruik van de pin in deze configuraties.
Op apparaten die de CRCSCAN-module (Cyclic Redundancy Check Memory Scan) bevatten, mag deze module tijdens het debuggen niet in de continue achtergrondmodus worden gebruikt. De OCD-module heeft beperkte bronnen voor hardware-breekpuntvergelijkers, dus BREAK-instructies kunnen in flash (software-breekpunten) worden ingevoegd wanneer er meer breekpunten nodig zijn, of zelfs tijdens het stappen van code op bronniveau. De CRC-module kan dit breekpunt ten onrechte detecteren als een beschadiging van de inhoud van het flashgeheugen.
De CRCSCAN-module kan ook worden geconfigureerd om vóór het opstarten een CRC-scan uit te voeren. In het geval van een CRC-mismatch zal het apparaat niet opstarten en lijkt het in een vergrendelde toestand te verkeren. De enige manier om het apparaat uit deze toestand te herstellen is door de chip volledig te wissen en een geldig flash-image te programmeren of de pre-boot CRCSCAN uit te schakelen. (Het eenvoudig wissen van de chip zal resulteren in een lege flits met ongeldige CRC, en het onderdeel zal dus nog steeds niet opstarten.) Atmel Studio zal automatisch de CRCSCAN-zekeringen uitschakelen wanneer de chip een apparaat in deze staat wist.
Bij het ontwerpen van een PCB voor een doeltoepassing waarbij de UPDI-interface zal worden gebruikt, moeten de volgende overwegingen worden gemaakt voor een correcte werking:
- Pull-up-weerstanden op de UPDI-lijn mogen niet kleiner (sterker) zijn dan 10 kΩ. Er mag geen pull-down-weerstand worden gebruikt, of deze moet worden verwijderd bij gebruik van UPDI. De fysieke UPDI is geschikt voor push-pull, dus er is slechts een zwakke pull-up-weerstand nodig om te voorkomen dat er een valse startbit wordt geactiveerd wanneer de lijn wordt onderbroken.
- Als de UPDI-pin als RESET-pin moet worden gebruikt, moet elke stabilisatiecondensator worden losgekoppeld bij gebruik van UPDI, omdat deze de juiste werking van de interface zal verstoren
- Als de UPDI-pin wordt gebruikt als RESET- of GPIO-pin, moeten alle externe stuurprogramma's op de lijn worden losgekoppeld tijdens het programmeren of debuggen, omdat deze de juiste werking van de interface kunnen verstoren.
Hardwarebeschrijving
5.1.LED's
Het Atmel-ICE-bovenpaneel heeft drie LED's die de status van huidige debug- of programmeersessies aangeven.
Tafel 5-1. LED's
LED | Functie |
Beschrijving |
Links | Doelkracht | GROEN als de doelkracht in orde is. Knipperen duidt op een fout in de doelvoeding. Licht pas op als er een programmeer-/foutopsporingssessieverbinding is gestart. |
Midden | Hoofdstroom | ROOD wanneer de voeding op het moederbord in orde is. |
Rechts | Staat | Knippert GROEN wanneer het doel rent/stapt. UIT wanneer het doel is gestopt. |
5.2. Achter paneel
Het achterpaneel van de Atmel-ICE herbergt de Micro-B USB-connector.5.3. Onderste paneel
Op het onderpaneel van de Atmel-ICE zit een sticker waarop het serienummer en de productiedatum staan vermeld. Wanneer u technische ondersteuning zoekt, vermeld dan deze details.5.4 Architectuurbeschrijving
De Atmel-ICE-architectuur wordt weergegeven in het blokdiagram in figuur 5-1.
Figuur 5-1. Atmel-ICE-blokdiagram5.4.1. Atmel-ICE-moederbord
De Atmel-ICE wordt van stroom voorzien via de USB-bus, geregeld op 3.3 V door een step-down switch-mode-regelaar. De VTG-pin wordt alleen als referentie-ingang gebruikt en een aparte voeding voedt de variabele voltage-zijde van de ingebouwde niveauconverters. Het hart van het Atmel-ICE-moederbord wordt gevormd door de Atmel AVR UC3-microcontroller AT32UC3A4256, die tussen 1 MHz en 60 MHz werkt, afhankelijk van de taken die worden verwerkt. De microcontroller bevat een on-chip USB 2.0 hogesnelheidsmodule, die een hoge gegevensdoorvoer van en naar de debugger mogelijk maakt.
Communicatie tussen de Atmel-ICE en het doelapparaat vindt plaats via een reeks niveauconverters die signalen verschuiven tussen het bedieningsvolume van het doel.tage en de interne voltage-niveau op de Atmel-ICE. Ook in het signaalpad bevinden zich zener-overvoltage beveiligingsdiodes, serieafsluitweerstanden, inductieve filters en ESD-beveiligingsdiodes. Alle signaalkanalen kunnen worden gebruikt in het bereik van 1.62 V tot 5.5 V, hoewel de Atmel-ICE-hardware een hoger volume niet kan verdrijven.tage dan 5.0V. De maximale werkfrequentie varieert afhankelijk van de gebruikte doelinterface.
5.4.2.Atmel-ICE-doelconnectoren
De Atmel-ICE hebben geen actieve sonde. Er wordt een IDC-kabel van 50 mil gebruikt om rechtstreeks of via de adapters in sommige sets verbinding te maken met de doeltoepassing. Voor meer informatie over de bekabeling en adapters, zie paragraaf Monteren van de Atmel-ICE
5.4.3. Atmel-ICE doelconnectoren onderdeelnummers
Om de Atmel-ICE 50-mil IDC-kabel rechtstreeks op een doelbord aan te sluiten, zou elke standaard 50-mil 10-pins header moeten volstaan. Het wordt geadviseerd om gecodeerde headers te gebruiken om de juiste oriëntatie te garanderen bij aansluiting op het doel, zoals die worden gebruikt op de adapterkaart die bij de set wordt geleverd.
Het onderdeelnummer voor deze header is: FTSH-105-01-L-DV-KAP van SAMTEC
Software-integratie
6.1. Atmel Studio
6.1.1.Software-integratie in Atmel Studio
Atmel Studio is een Integrated Development Environment (IDE) voor het schrijven en debuggen van Atmel AVR- en Atmel SAM-applicaties in Windows-omgevingen. Atmel Studio biedt een projectmanagementtool, source file editor, simulator, assembler en front-end voor C/C++, programmeren, emulatie en debuggen op de chip.
Atmel Studio versie 6.2 of hoger moet worden gebruikt in combinatie met de Atmel-ICE.
6.1.2. Programmeeropties
Atmel Studio ondersteunt het programmeren van Atmel AVR- en Atmel SAM ARM-apparaten met behulp van de Atmel-ICE. Het programmeerdialoogvenster kan worden geconfigureerd om JTAG, aWire, SPI, PDI, TPI, SWD-modi, afhankelijk van het geselecteerde doelapparaat.
Bij het configureren van de klokfrequentie gelden voor verschillende interfaces en doelfamilies verschillende regels:
- SPI-programmering maakt gebruik van de doelklok. Configureer de klokfrequentie zo dat deze lager is dan een vierde van de frequentie waarop het doelapparaat momenteel draait.
- JTAG programmeren op Atmel megaAVR-apparaten wordt geklokt door de. Dit betekent dat de programmeerklokfrequentie beperkt is tot de maximale bedrijfsfrequentie van het apparaat zelf. (Meestal 16 MHz.)
- AVR XMEGA-programmering op zowel JTAG en PDI-interfaces worden geklokt door de programmeur. Dit betekent dat de programmeerklokfrequentie beperkt is tot de maximale werkfrequentie van het apparaat (meestal 32 MHz).
- AVR UC3-programmering op JTAG interface wordt geklokt door de programmeur. Dit betekent dat de programmeerklokfrequentie beperkt is tot de maximale werkfrequentie van het apparaat zelf. (Beperkt tot 33 MHz.)
- AVR UC3-programmering op een Wire-interface wordt geklokt door de De optimale frequentie wordt gegeven door de SAB-bussnelheid in het doelapparaat. De Atmel-ICE-debugger stemt de aWire-baudsnelheid automatisch af om aan deze criteria te voldoen. Hoewel dit meestal niet nodig is, kan de gebruiker de maximale baudsnelheid indien nodig beperken (bijvoorbeeld in luidruchtige omgevingen).
- SAM-apparaatprogrammering op de SWD-interface wordt geklokt door de programmeur. De maximale frequentie die door Atmel-ICE wordt ondersteund, is 2 MHz. De frequentie mag de doel-CPU-frequentie maal 10, fSWD ≤ 10fSYSCLK niet overschrijden.
6.1.3.Debug-opties
Bij het debuggen van een Atmel AVR-apparaat met behulp van Atmel Studio, het tabblad 'Tool' in de projecteigenschappen view bevat enkele belangrijke configuratieopties. De opties die verdere uitleg behoeven, worden hier gedetailleerd beschreven.
Doelklokfrequentie
Het nauwkeurig instellen van de doelklokfrequentie is van cruciaal belang voor betrouwbare foutopsporing van het Atmel megaAVR-apparaat via de JTAG koppel. Deze instelling moet minder dan een vierde van de laagste werkfrequentie van uw AVR-doelapparaat zijn in de toepassing waarvan de fout wordt opgespoord. Zie speciale overwegingen voor megaAVR voor meer informatie.
Foutopsporingssessies op debugWIRE-doelapparaten worden geklokt door het doelapparaat zelf, en er is dus geen frequentie-instelling vereist. De Atmel-ICE selecteert automatisch de juiste baudsnelheid voor communicatie aan het begin van een debug-sessie. Als u echter betrouwbaarheidsproblemen ondervindt die verband houden met een luidruchtige debug-omgeving, bieden sommige tools de mogelijkheid om de debugWIRE-snelheid te forceren tot een fractie van de “aanbevolen” instelling.
Debug-sessies op AVR XMEGA-doelapparaten kunnen worden geklokt op de maximale snelheid van het apparaat zelf (meestal 32 MHz).
Debug-sessies op AVR UC3-doelapparaten via de JTAG interface kan worden geklokt op de maximale snelheid van het apparaat zelf (beperkt tot 33 MHz). De optimale frequentie ligt echter iets lager dan de huidige SAB-klok op het doelapparaat.
Debugsessies op UC3-doelapparaten via de aWire-interface worden automatisch door de Atmel-ICE zelf afgestemd op de optimale baudsnelheid. Als u echter betrouwbaarheidsproblemen ondervindt die verband houden met een luidruchtige debug-omgeving, bieden sommige tools de mogelijkheid om de aWire-snelheid onder een configureerbare limiet te dwingen.
Debug-sessies op SAM-doelapparaten via de SWD-interface kunnen worden geklokt op maximaal tien keer de CPU-klok (maar beperkt tot maximaal 2 MHz).
EEPROM behouden
Selecteer deze optie om te voorkomen dat de EEPROM wordt gewist tijdens het herprogrammeren van het doel vóór een foutopsporingssessie.
Gebruik externe reset
Als uw doeltoepassing de JTAG interface, moet de externe reset tijdens het programmeren laag worden getrokken. Als u deze optie selecteert, voorkomt u dat u herhaaldelijk wordt gevraagd of u de externe reset wilt gebruiken.
6.2 Opdrachtregelhulpprogramma
Atmel Studio wordt geleverd met een opdrachtregelhulpprogramma genaamd atprogram dat kan worden gebruikt om doelen te programmeren met behulp van de Atmel-ICE. Tijdens de installatie van Atmel Studio wordt een snelkoppeling genaamd “Atmel Studio 7.0. Command Prompt” zijn gemaakt in de Atmel-map in het Start-menu. Door op deze snelkoppeling te dubbelklikken wordt een opdrachtprompt geopend en kunnen programmeeropdrachten worden ingevoerd. Het opdrachtregelprogramma wordt geïnstalleerd in het Atmel Studio-installatiepad in de map Atmel/Atmel Studio 7.0/atbackend/.
Voor meer hulp bij het opdrachtregelhulpprogramma typt u de opdracht:
atprogramma –help
Geavanceerde foutopsporingstechnieken
7.1. Atmel AVR UC3-doelen
7.1.1. EVTI/EVTO-gebruik
De EVTI- en EVTO-pinnen zijn niet toegankelijk op de Atmel-ICE. Ze kunnen echter nog steeds worden gebruikt in combinatie met andere externe apparatuur.
EVTI kan voor de volgende doeleinden worden gebruikt:
- Het doel kan worden gedwongen de uitvoering te stoppen als reactie op een externe gebeurtenis. Als de Event In Control (EIC)-bits in het DC-register naar 0b01 worden geschreven, zal de overgang van hoog naar laag op de EVTI-pin een breekpuntconditie genereren. EVTI moet gedurende één CPU-klokcyclus laag blijven om te garanderen dat er een breekpunt is. Het externe breekpuntbit (EXB) in DS wordt ingesteld wanneer dit gebeurt.
- Tracesynchronisatieberichten genereren. Niet gebruikt door de Atmel-ICE. EVTO kan voor de volgende doeleinden worden gebruikt:
- Dit geeft aan dat de CPU debug is gestart. Het instellen van de EOS-bits in DC op 0b01 zorgt ervoor dat de EVTO-pin gedurende één CPU-klokcyclus laag wordt getrokken wanneer het doelapparaat naar de debug-modus gaat. Dit signaal kan worden gebruikt als triggerbron voor een externe oscilloscoop.
- Dit geeft aan dat de CPU een breekpunt of controlepunt heeft bereikt. Door de EOC-bit in te stellen in een overeenkomstig breekpunt/watchpoint-controleregister, wordt de breekpunt- of watchpoint-status aangegeven op de EVTO-pin. De EOS-bits in DC moeten worden ingesteld op 0xb10 om deze functie in te schakelen. De EVTO-pin kan vervolgens worden aangesloten op een externe oscilloscoop om het kijkpunt te onderzoeken
- Trace-timingsignalen genereren. Niet gebruikt door de Atmel-ICE.
7.2 foutopsporing in WIRE-doelen
7.2.1.debugWIRE-softwareonderbrekingspunten
De debugWIRE OCD is drastisch verkleind in vergelijking met de Atmel megaAVR (JTAG) OCD. Dit betekent dat er geen breekpuntvergelijkers voor programmatellers beschikbaar zijn voor de gebruiker voor foutopsporingsdoeleinden. Er bestaat wel een dergelijke vergelijker voor run-to-cursor- en single-stepping-bewerkingen, maar aanvullende gebruikersonderbrekingspunten worden niet ondersteund in hardware.
In plaats daarvan moet de debugger gebruik maken van de AVR BREAK-instructie. Deze instructie kan in FLASH worden geplaatst en wanneer deze wordt geladen voor uitvoering, zal de CPU van de AVR in de gestopte modus gaan. Om breekpunten tijdens het debuggen te ondersteunen, moet de debugger een BREAK-instructie in FLASH invoegen op het punt waarop de gebruikers een breekpunt aanvragen. De originele instructie moet in de cache worden opgeslagen voor latere vervanging.
Bij het enkelvoudig overstappen van een BREAK-instructie moet de debugger de oorspronkelijke in de cache opgeslagen instructie uitvoeren om het programmagedrag te behouden. In extreme gevallen moet de BREAK uit FLASH worden verwijderd en later worden vervangen. Al deze scenario's kunnen schijnbare vertragingen veroorzaken bij het enkelvoudig stappen vanaf breekpunten, wat nog zal worden verergerd wanneer de doelklokfrequentie erg laag is.
Het wordt daarom aanbevolen om, waar mogelijk, de volgende richtlijnen in acht te nemen:
- Laat het doel tijdens het debuggen altijd op een zo hoog mogelijke frequentie draaien. De fysieke debugWIRE-interface wordt geklokt vanaf de doelklok.
- Probeer het aantal toevoegingen en verwijderingen van breekpunten tot een minimum te beperken, omdat voor elk ervan een FLASH-pagina op het doel moet worden vervangen
- Probeer een klein aantal breekpunten tegelijk toe te voegen of te verwijderen, om het aantal FLASH-paginaschrijfbewerkingen te minimaliseren
- Vermijd indien mogelijk het plaatsen van breekpunten bij instructies met dubbele woorden
Releasegeschiedenis en bekende problemen
8.1 .Firmware-releasegeschiedenis
Tabel 8-1. Openbare firmwarerevisies
Firmwareversie (decimaal) | Datum |
Relevante wijzigingen |
1.36 | 29.09.2016 | Ondersteuning toegevoegd voor UPDI-interface (tinyX-apparaten) Grootte van USB-eindpunt configureerbaar gemaakt |
1.28 | 27.05.2015 | Ondersteuning toegevoegd voor SPI- en USART DGI-interfaces. Verbeterde SWD-snelheid. Kleine bugfixes. |
1.22 | 03.10.2014 | Codeprofilering toegevoegd. Probleem opgelost met betrekking tot JTAG serieschakelingen met meer dan 64 instructiebits. Oplossing voor uitbreiding van ARM-reset. Probleem met doelstroomled opgelost. |
1.13 | 08.04.2014 | JTAG klokfrequentie vast. Oplossing voor debugWIRE met lange SUT. Vaste opdracht voor oscillatorkalibratie. |
1.09 | 12.02.2014 | Eerste release van Atmel-ICE. |
8.2 Bekende problemen met de Atmel-ICE
8.2.1.Algemeen
- De eerste Atmel-ICE-batches hadden een zwakke USB. Er is een nieuwe revisie gemaakt met een nieuwe en robuustere USB-connector. Als tussenoplossing is op de reeds geproduceerde units van de eerste versie epoxylijm aangebracht om de mechanische stabiliteit te verbeteren.
8.2.2. Atmel AVR XMEGA OCS-specifieke problemen
- Voor de ATxmegaA1-familie wordt alleen revisie G of hoger ondersteund
8.2.1. Atmel AVR – Apparaatspecifieke problemen
- Het uit- en inschakelen van de ATmega32U6 tijdens een foutopsporingssessie kan ertoe leiden dat het contact met het apparaat verloren gaat
Productconformiteit
9.1. RoHS en AEEA
De Atmel-ICE en alle accessoires zijn vervaardigd in overeenstemming met zowel de RoHS-richtlijn (2002/95/EC) als de WEEE-richtlijn (2002/96/EC).
9.2. CE en FCC
De Atmel-ICE-unit is getest in overeenstemming met de essentiële eisen en andere relevante bepalingen van richtlijnen:
- Richtlijn 2004/108/EG (klasse B)
- FCC deel 15 subdeel B
- 2002/95/EG (RoHS, AEEA)
Bij de evaluatie worden de volgende normen gebruikt:
- EN 61000-6-1 (2007)
- EN 61000-6-3 (2007) + A1(2011)
- FCC CFR 47 Deel 15 (2013)
De technische constructie File bevindt zich op:
Er is alles aan gedaan om de elektromagnetische emissies van dit product tot een minimum te beperken. Onder bepaalde omstandigheden kan het systeem (dit product aangesloten op een doeltoepassingscircuit) echter individuele elektromagnetische componentfrequenties uitzenden die de maximale waarden overschrijden die zijn toegestaan door de bovengenoemde normen. De frequentie en omvang van de emissies zullen worden bepaald door verschillende factoren, waaronder de lay-out en routing van de doeltoepassing waarmee het product wordt gebruikt.
Revisiegeschiedenis
dok. ds. |
Datum |
Reacties |
42330C | 10/2016 | UPDI-interface toegevoegd en firmware-releasegeschiedenis bijgewerkt |
42330B | 03/2016 | • Herzien hoofdstuk On-Chip Debugging • Nieuwe opmaak van de releasegeschiedenis van de firmware in het hoofdstuk Releasegeschiedenis en Bekende problemen • Pinout voor debug-kabel toegevoegd |
42330A | 06/2014 | Eerste documentvrijgave |
Atmel®, Atmel-logo en combinaties daarvan, Enabling Unlimited Possibilities®, AVR®, megaAVR®, STK®, kleineAVR®, XMEGA®en andere zijn geregistreerde handelsmerken of handelsmerken van Atmel Corporation in de VS en andere landen. ARM®, ARM aangesloten® logo, Cortex®en andere zijn de geregistreerde handelsmerken of handelsmerken van ARM Ltd. Windows® is een geregistreerd handelsmerk van Microsoft Corporation in de VS en/of andere landen. Andere termen en productnamen kunnen handelsmerken van anderen zijn.
DISCLAIMER: De informatie in dit document wordt verstrekt in verband met Atmel-producten. Er wordt geen licentie, expliciet of impliciet, door uitsluiting of anderszins, verleend voor enig intellectueel eigendomsrecht door dit document of in verband met de verkoop van Atmel-producten. BEHALVE ZOALS VERMELD IN DE ATMEL-VOORWAARDEN VOOR VERKOOP OP DE ATMEL WEBSITE AANVAARDT ATMEL GEEN ENKELE AANSPRAKELIJKHEID EN WIJST ELKE EXPLICIETE, IMPLICIETE OF WETTELIJKE GARANTIE AF MET BETREKKING TOT HAAR PRODUCTEN, INCLUSIEF MAAR NIET BEPERKT TOT DE IMPLICIETE GARANTIE VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL OF NIET-INBREUK. IN GEEN GEVAL ZAL ATMEL AANSPRAKELIJK ZIJN VOOR ENIGE DIRECTE, INDIRECTE, GEVOLGSCHADE, PUNITIEVE, SPECIALE OF INCIDENTELE SCHADE (INCLUSIEF, MAAR NIET BEPERKT TOT, SCHADE DOOR VERLIES EN WINST, BEDRIJFSONDERBREKING OF VERLIES VAN INFORMATIE) VOORTVLOEIEND UIT HET GEBRUIK OF DE ONMOGELIJKHEID TOT GEBRUIK DIT DOCUMENT, ZELFS ALS ATMEL IS GEADVISEERD
VAN DE MOGELIJKHEID VAN DERGELIJKE SCHADE. Atmel geeft geen verklaringen of garanties met betrekking tot de juistheid of volledigheid van de inhoud van dit document en behoudt zich het recht voor om op elk moment zonder voorafgaande kennisgeving wijzigingen aan te brengen in de specificaties en productbeschrijvingen. Atmel doet geen enkele belofte om de hierin opgenomen informatie bij te werken. Tenzij specifiek anders bepaald, zijn Atmel-producten niet geschikt voor en mogen ze niet worden gebruikt in automobieltoepassingen. Atmel-producten zijn niet bedoeld, geautoriseerd of gegarandeerd voor gebruik als componenten in toepassingen die bedoeld zijn om het leven te ondersteunen of in stand te houden.
DISCLAIMER VOOR VEILIGHEIDSKRITIEKE, MILITAIRE EN AUTOMOBIELTOEPASSINGEN: Atmel-producten zijn niet ontworpen voor en zullen niet worden gebruikt in verband met toepassingen waarbij het falen van dergelijke producten redelijkerwijs zou resulteren in aanzienlijk persoonlijk letsel of de dood (“Veiligheidskritische Sollicitaties”) zonder de specifieke schriftelijke toestemming van een Atmel-functionaris. Veiligheidskritische toepassingen omvatten, zonder beperking, levensondersteunende apparaten en systemen, apparatuur of systemen voor de werking van nucleaire faciliteiten en wapensystemen. Atmel-producten zijn niet ontworpen of bedoeld voor gebruik in militaire of ruimtevaarttoepassingen of -omgevingen, tenzij door Atmel specifiek aangegeven als militaire kwaliteit. Atmel-producten zijn niet ontworpen of bedoeld voor gebruik in automobieltoepassingen, tenzij door Atmel specifiek aangegeven als automobielkwaliteit.
Atmel-corporatie
1600 Technology Drive, San Jose, CA 95110 VS
T: (+1)(408) 441.0311
F: (+1)(408) 436.4200
www.atmel.com
© 2016 Atmel Corporation.
Rev.: Atmel-42330C-Atmel-ICE_Gebruikershandleiding-10/2016
Documenten / Bronnen
![]() |
Atmel De Atmel-ICE Debugger-programmeurs [pdf] Gebruikershandleiding De Atmel-ICE Debugger-programmeurs, De Atmel-ICE, Debugger-programmeurs, Programmeurs |