Trimension® XMEGATM BreakOut-Board Produkt Dokumentation Copyright © by Trimension® Jürgen Werner, Cologne 1997-2013 http://www.trimension.de Rev. 1.0 (November 2013) Trimension® ist ein eingetragenes Warenzeichen von Jürgen Werner, Deutschland TM XMEGA ist ein eingetragenes Warenzeichen der Firma Atmel Corporation, Norwegen Atmel® ist ein eingetragenes Warenzeichen der Firma Atmel Corporation, Norwegen Produktbeschreibung Das XMEGATM Board ist ein universell einsetzbares Entwicklungswerkzeug. Es vereinfacht und beschleunigt die Produktentwicklung und ermöglicht für das Prototyping einen schnellen Aufbau auf einem Steckbrett. Auf Grund der einfachen Handhabung, ist es hervorragend geeignet, die Möglichkeiten und Leistungsmerkmale der XMEGA-Familie zu untersuchen, bestimmte Funktionen auszutesten oder sich mit der Programmierung dieser AVR-Mikrocontroller zu beschäftigen. Auf Grund der Leistungsfähigkeit dieser Controller-Familie (Die Datenblätter umfassen fast 1000 Seiten), sind die Einsatzmöglichkeiten sehr vielseitig. Das Board ist bestückt mit einem leistungsfähigen Atmel® XMEGATM 32A4U Mikroprozessor [1]. Es enthält die komplette Grundbeschaltung des Controllers, sodaß das Board sofort einsatzbereit ist und nur noch die Peripherie, also das Wesentliche, beschaltet werden muss. Das folgende Blockschaltbild zeigt den Aufbau: Der ATXMEGA32A4U enthält ein USB Modul, welches an eine USB-Micro-B Buchse herausgeführt ist. Dieser Port ist gegen elektrostatische Entladungen bis 8KV abgesichert. Weiterhin ist ein PDI-Header vorhanden, der die direkte Programmierung der MCU sowie das Debugging eigener Programme ermöglicht. Ein Reset-Taster rundet die Ausstattung des Boards ab. Zur Taktversorgung dient ein verbauter XO53 Quarzoszillator mit 16 MHz, der per Software zugeschaltet werden kann. Die Stromversorgung des Boards ist sehr flexibel und gestattet die Versorgung sowohl mit 5V als auch mit 3,3V oder direkt aus dem USB-Port. Eine LED signalisiert den Betrieb des Boards. Der On-Board Level-Konverter regelt die 5V Versorgungsspannung (z.B. von USB) auf die Betriebsspannung des Controllers von 3,3V herunter. Diese Betriebsspannung wird an den Stiftleisten herausgeführt, und erlaubt auch angeschlossene Peripherie zu versorgen. Der LevelKonverter liefert einen Strom von max. 500 mA. Alle Port-Pins des Controllers sind an zwei Stiftleisten herausgeführt. ® Trimension XMEGA TM Breakout Board USB http://www.trimension.de ® Copyright © by Trimension Cologne 2013 Aufbau und Schaltplan Alle Stromversorgungs-Anschlüsse des Controllers sind mit Entkopplungs-Kondensatoren versehen um einen störungsfreien Betrieb zu ermöglichen. Der AVCC-Anschluß für den analogen Schaltungsteil des Controllers ist zusätzlich mit einem LC Tiefpass-Filter entkoppelt, der eine bessere Entstörung des Analogteils bietet. Alle Anschlüsse des Controllers sind an den beiden Stiftleisten herausgeführt. Ausnahme bilden die beiden Pins PD6 und PD7, die direkt zum USB Port führen, sowie den Pins PR0 und PR1, an die der Quarz-Oszillator angeschlossen ist. Der Port PB0 ist an einem Spannungsteiler der USB-PortSpannung angeschlossen. Damit ist es möglich, den USBConnection Status zu bestimmen. Die Nutzung dieses Pins ist daher nur eingeschränkt möglich. Wird der Connection Status nicht benötigt, kann der Port freigeschaltet werden. Dazu sind die Widerstände R2/R3 zu entlöten oder die Leiterbahn (siehe Abbildung) aufzutrennen. Der USB-Port ist mit einem TVS Dioden-Array zum Schutz vor ESD ausgestattet. Dieses sichert das Board bis max. 8KV für jede Datenleitung. Zusätzlich ist der ShieldAnschluß der USB-Buchse gegen Masse entkoppelt, was zusätzlichen Schutz vor Beschädigung der Schaltung und des USB-Hosts sicher stellt. Der Jumper JP1 dient zum Umschalten der Versorgungsspannung. Damit es zu keinen Beschädigungen der Netzteile bzw. des USB-Hosts kommt, darf der Jumper nur geschlossen werden, wenn ausschließlich der USB-Port für die Stromversorgung genutzt wird. ® Trimension XMEGA TM Breakout Board USB http://www.trimension.de ® Copyright © by Trimension Cologne 2013 Wird dem Board Spannung aus einem externen Netzteil zugeführt, muß der Jumper geöffnet werden um den USB Port von der Stromversorgung zu trennen. Der USB-Port kann in diesem Fall weiterhin genutzt werden. Es wird lediglich der Spannungs-Eingang des USB-Ports abgeschaltet. Der Low-Drop Spannungsregler MCP-1725 regelt die Spannung von 5V (USB oder extern) auf die vom Controller benötigten 3,3V herunter. Diese heruntergeregelte Spannung wird über die Stiftleiten herausgeführt um auch externe Schaltungs-Komponenten mit dieser Spannung versorgen zu können. Der Regler kann bis 500 mA belastet werden (Board und Peripherie!). Folgende Konstellationen sind für die Spannungsversorgung möglich: 1. Versorgung über den USB Port: Der Jumper muß geschlossen werden, damit die Spannung VUSB zum Regler gelangt. An der Stiftleiste wird sowohl die Spannung VUSB vom Port als auch die Ausgangs-Spannung des Reglers herausgeführt. Damit stehen der externen Beschaltung zwei stabile Spannungen zur Verfügung. Pin 1 (VIN) an der Stiftleiste K1 ist in dieser Konstellation ein Ausgang und darf nicht an ein Netzteil angeschlossen werden. 2. Versorgung über ein externes 5V Netzteil: Die Spannung wird über die Stiftleiste dem Regler zugeführt. Der Jumper muß geöffnet werden, damit die Spannung nicht zurück in den USB-Port fliest. Auch hier wird die Regler Ausgangsspannung wieder über die Stiftleiste herausgeführt. 3. Versorgung über ein externes 3,3V Netzteil In diesem Fall wird der Spannungsregler nicht genutzt. Die Betriebsspannung (VCC) wird über die Stiftleiste zugeführt. Der Jumper muß geöffnet werden um Schaden an der Schaltung zu vermeiden. In dieser Konstellation steht keine 5V Spannung zur Verfügung. In allen Fällen leuchtet die LED, wenn der Controller mit Betriebsspannung versorgt ist. Auf dem Board befindet sich ebenfalls ein Reset-Taster, der an der Stiftleiste K2 herausgeführt wird. Die Reset-Leitung ist nicht mit einem Pull-Up Wiederstand versehen, da dieser bei der Nutzung des PDI-Interfaces stören kann. Hier kann ggf. extern ein Widerstand eingesetzt werden, der jedoch während der Nutzung des PDI-Interfaces entfernt werden sollte. Der ATXMEGA32A4U verfügt weder über einen ISP-Anschluss noch über ein JTAG-Interface. Die Programmierung und das Debuggen erfolgen über das Atmel® eigene PDI-Protokoll [2]. Der auf dem Board verbaute Quarz-Oszillator liefert eine Taktfrequenz von 16 MHz. Er ist direkt mit dem Controller verbunden, was aber nicht zwangsläufig dazu führt, das dieser Takt verwendet werden muss. Anders als bei den anderen AVR-Familien, kann die Taktversorgung des XMEGATMs sehr flexibel per Software konfiguriert werden [3]. ® Trimension XMEGA TM Breakout Board USB http://www.trimension.de ® Copyright © by Trimension Cologne 2013 Board-Pinout Belegung der Stiftleisten K1 (oben) und K2 (unten): PDI-Interface Das Program- und Debug-Interface (PDI) ist ein 2-line Interface, welches lediglich eine Clock- und eine Data-Verbindung benötigt. Die Clock-Line liegt auf dem Reset-Pin des Controllers, während für die Datenleitung ein eigener Controller Pin vorhanden ist. Somit sind beim Debuggen alle Ports frei verfügbar und es gibt keine Seiteneffekte durch angeschlossene Peripherie. Da von diesem Interface die Reset-Leitung verwendet wird, ist es außerordentlich wichtig, daß während der Programmierung/Debugging der Reset-Taster nicht betätigt wird. Auch sollte an der Reset-Leitung kein Pull-Up Wiederstand geschaltet werden, solange dieses Interface genutzt wird. Weitere Information zum PDI-Interface sind in der ApplicationNote AVR1612 von Atmel® zu finden [2]. ® Trimension XMEGA TM Breakout Board USB http://www.trimension.de ® Copyright © by Trimension Cologne 2013 Programmierung / Bootloader Die Programmierung der XMEGATM Controller erfolgt über das PDI-Interface oder über den vorinstallierten Bootloader. PDI Über das PDI-Interface kann der Controller direkt programmiert werden. Es ist möglich, alle Speicher des Controllers, wie auch die Fuse- und Lock-Bytes zu programmieren. Um dieses Interface nutzen zu können, wird ein Programmiergerät benötigt, welches das PDIProtokoll unterstützt. Beispiel: AVR-Dragon, ATJTAGICE3… Bootloader Bei der Auslieferung des Boards ist der DFU-Bootloader der Firma Atmel® vorinstalliert. Er ermöglicht ein komfortables Programmieren des Controllers über die USB-Schnittstelle. Das Board wird dazu direkt an den PC angeschlossen. Der Firma Atmel® Corporation stellt auf Ihrer Website das kostenlose Tool Flip zur Verfügung [4]. Dieses enthält neben der Anwendung auch die Windows-Treiber. Sind diese installiert erkennt der PC das Board und enumeriert es korrekt in der Devices-Liste. Mit der Anwendung kann der Chip dann über den Boot-Loader programmiert werden. Flip kann nicht zum Debuggen verwendet werden. Damit nach einem Reset der Bootloader aus der Boot-Section gestartet wird, muß der Pin PC3 gegen Masse geschaltet werden. Andernfalls bootet der Controller die normale Flash-Section (sofern die bereits mit einem Programm versehen wurde). Detaillierte Informationen über den DFU-Bootloader und Flip sind in der ApplicationNote AVR1916 zu finden [5] XMEGATM Programmiermodell Mit der XMEGATM Familie hat Atmel® ein „neues“ Programmiermodell eingeführt. Die alten Bezeichner funktionieren jedoch auch noch, sodaß auch die Programmierung „im alten Stil“ noch möglich ist. Der erweiterte Leistungsumfang und die verbesserte Architektur der XMEGATMs ermöglicht es mit dem „neuen“ Modell, sauber strukturiert zu arbeiten ohne die Übersicht über die zahlreichen Funktionen und Register zu verlieren. Selbst komplexer Code wird lesbarer und verständlicher. Atmel® bietet für die Programmierung der XMEGA‘s eine Vielzahl von Application-Notes an, die hier kurz aufgelistet werden. Diese Liste erhebt jedoch keinen Anspruch auf Vollständigkeit. ® AVR1000: XMEGA C Code AVR1001: XMEGA Event System AVR1003: XMEGA Clock System AVR1005: XMEGA Getting Started AVR1012: XMEGA Schematic AVR1017: XMEGA USB AVR1300: XMEGA Using ADC AVR1301: XMEGA Using DAC AVR1302: XMEGA Using Analog Comparator AVR1303: XMEGA Using IR Communication Module AVR1304: XMEGA Using DMA AVR1305: XMEGA Using Interrupts PMI AVR1306: XMEGA Using Timer AVR1307: XMEGA Using USART AVR1308: XMEGA Using TWI Trimension XMEGA TM Breakout Board USB http://www.trimension.de ® Copyright © by Trimension Cologne 2013 AVR1309: XMEGA Using SPI AVR1310: XMEGA Using Watchdog AVR1311: XMEGA Using Timer Extensions AVR1312: XMEGA Using EBI AVR1313: XMEGA Using IO AVR1314: XMEGA Using RTC AVR1315: XMEGA Using EEPROM AVR1316: XMEGA Using Selfprogramming AVR1317: XMEGA DES Accelerator AVR1318: XMEGA AES Accelerator AVR1320: XMEGA True 400KHz TWI AVR1321: XMEGA Using 32Bit RTC Battery Backup AVR1605: XMEGA Bootloader AVR1612: PDI Driver AVR1622: XMEGA TWI Bootloader AVR1916: USB DFU Boot Loader for XMEGA Auf jeden Fall ist es anzuraten, die Datenblätter des Controllers zu studieren. Das Datenblatt des ATXMEGA32A4U ist auf drei Dokumente verteilt worden: Atmel Datasheet ATxmega32A4U [1] XMEGA A Manual [6] XMEGA AU Manual [7] Verwendung und Inbetriebnahme Das Board wird als SMD bestückte Platine geliefert. Die Header und Stiftleisten sind nicht montiert, da diese nicht immer benötigt werden und dem Anwender eine gewisse Freiheit in der Nutzung des Boards zu erlauben. Daher kann es nötig sein, zunächst die bedrahteten Bauteile zu montieren. ® Trimension XMEGA TM Breakout Board USB http://www.trimension.de ® Copyright © by Trimension Cologne 2013 Die Abbildung zeigt das Board und die mitgelieferten Stiftleisten und Header. Der Jumper JP1 wird benötigt, wenn das Board über USB mit Strom versorgt werden soll. Der 6-polige PDI-Header muss bestückt werden, wenn das Board über PDI programmiert/debugged werden soll. Die Stiftleisten werden sicherlich in den meisten Situationen benötigt werden, z.B. wenn das Board in einem Steckboard genutzt werden soll. Die Stiftleisten sind in einem Abstand von 22,86 mm (900 mil) angebracht und passen somit in die gängigen Steckboards. Zum Verlöten der Header und Stiftleisten wird ein Lötkolben mit möglichst kleiner Spitze benötigt. Kenntnisse zum Löten elektronischer Bauteile werden vorausgesetzt. Bitte arbeiten Sie sorgfältig und sauber um Beschädigungen der empfindlichen Elektronik zu vermeiden. Bitte achten Sie darauf, daß die Löttemperatur nicht zu hoch gewählt wird, die Lötspitze sauber ist und keine Lötbrücken oder kalte Lötstellen entstehen. Weiterhin ist darauf zu achten, daß elektronische Bauteile empfindlich gegen elektrostatische Entladung sind (ESD). Bitte treffen Sie geeignete Maßnahmen um das Board bei der Arbeit nicht zu beschädigen. Für Schäden, die durch unsachgemäße Bearbeitung beim Löten, oder durch unzureichende Schutzmaßnahmen gegen elektrostatische Entladungen entstehen, kann keine Haftung übernommen werden. Technische Daten ® Trimension XMEGA TM Controller Atmel® XMEGA32A4U-AU (TQFP44) Stromversorgung 3,3V, 5V oder USB (5V) I/O Level 3,3V Stromverbrauch ohne Peripherie Ca. 13 mA (davon etwa 9 mA LED) Max. Strom bei 3,3V (einschl. Peripherie) 500mA Quarz-Oszillator 16MHz Schnittstellen USB, PDI, 2x20 PIN Controller-Pins Abmessungen 27mm x 55mm Rastermaß 100 mil (2,54 mm) Reihenabstand Stiftleisten 900 mil (22,86 mm) Bauform SMD Breakout Board USB http://www.trimension.de ® Copyright © by Trimension Cologne 2013 Literaturverzeichnis [1] Atmel Corporation, „Atmel Datasheet ATxmega32A4U,“ 2013. [Online]. Available: http://www.atmel.com/images/atmel-8387-8-and16-bit-avr-microcontroller-xmegaa4u_datasheet.pdf. [2] Atmel Corporation, „Atmel Application Note AVR 1612: PDI programming driver,“ 2010. [Online]. Available: http://www.atmel.com/images/doc8282.pdf. [3] Atmel Corporation, „Application Note AVR 1003: Using the XMEGA(TM) Clock System,“ 2009. [Online]. Available: http://www.atmel.com/Images/doc8072.pdf. [4] Atmel Corporation, „Atmel FLIP Download,“ [Online]. Available: http://www.atmel.com/tools/FLIP.aspx. [5] Atmel Corporation, „Atmel Application Note AVR 1916: USB DFU Boot Loader for XMEGA,“ [Online]. Available: http://www.atmel.com/images/doc8429.pdf. [6] Atmel Corporation, „XMEGA A Manual,“ 2009. [Online]. Available: http://www.atmel.com/Images/doc8077.pdf. [7] Atmel Corporation, „XMEGA AU Manual,“ 2013. [Online]. Available: http://www.atmel.com/images/atmel-8331-8-and-16-bit-avr-microcontroller-xmegaau_manual.pdf. ® Trimension XMEGA TM Breakout Board USB http://www.trimension.de ® Copyright © by Trimension Cologne 2013 Rechtliches Gewährleistung Jedes Board unterliegt einer strengen Qualitätskontrolle und wird ausgiebig getestet. Dennoch ist es nicht auszuschließen, daß einzelne Bauteile auf dem Board Material- oder Funktions-Mängel aufweisen können. Gewährleistungsansprüche werden nur auf Material-Mängel und bei sofortiger Anzeige anerkannt. Es wird hier ausdrücklich darauf hingewiesen, daß keine Gewährleistung bei unsachgemäßer und/oder fehlerhafter Anbringung der bedrahteten Bauteile, sowie entstandenen Schäden durch das Verlöten der mitgelieferten Bauteile übernommen werden kann. Ebenfalls wird keine Haftung für Schäden durch elektrostatische Entladung, fehlerhafte Beschaltung oder nicht bestimmungsgemäßen Gebrauch des Boards übernommen. Die Informationen in diesem Dokument sind, soweit nicht öffentlich bekannt oder durch die Firma Atmel® Corporation veröffentlicht, urheberrechtlich geschützt von Jürgen Werner, Köln 2013. ® Trimension XMEGA TM Breakout Board USB http://www.trimension.de ® Copyright © by Trimension Cologne 2013 CE Konformitätserklärung Der Hersteller: Trimension® ITS Jürgen Werner Gustavstraße 35 50937 Köln < Deutschland > erklärt hiermit, daß das Produkt: Trimension XMEGA BreakOut-Board USB den folgenden Richtlinien entspricht: 2001/95/EG EU-Richtlinie zur allgemeinen Produktsicherheit 2006/95/EG EU-Richtlinie zur Verwendung elektrische Betriebsmittel innerhalb bestimmter Spannungsgrenzen 2011/65/EG EU-Richtlinie zur Beschränkung der Verwendung bestimmter gefährlicher Stoffe Köln, 01.11.2013 bestätigt (Jürgen Werner, Inhaber ) Copyright © by Trimension® it-solutions & consulting Jürgen Werner http://www.trimension.de Trimension® ist ein eingetragenes Warenzeichen von Jürgen Werner, Deutschland. XMEGATM ist ein eingetragenes Warenzeichen der Firma Atmel Corporation, Norwegen. Atmel® ist ein eingetragenes Warenzeichen der Firma Atmel Corporation, Norwegen. ® Trimension XMEGA TM Breakout Board USB http://www.trimension.de ® Copyright © by Trimension Cologne 2013