XHEX: Unterschied zwischen den Versionen
Aus Nibo Wiki
					
										
					
					| (9 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
| − | Das XHEX Dateiformat dient zur Kapselung von klassischen HEX-Files. Das Format unterstützt zusätzlich mehrere Segmente, das setzten von Fuse-Bits und die Definition des verwendeten Microcontrollers, der   | + | Das XHEX Dateiformat dient zur Kapselung von klassischen HEX-Files. Das Format unterstützt zusätzlich mehrere Segmente, das setzten von Fuse-Bits und die Definition des verwendeten Microcontrollers, der Zielplattform und des Programmiergerätes. Die Generierung der XML Datei aus einer HEX-Datei ist recht einfach, da der HEX Datei nur zwei Abschnitte hinzugefügt werden müssen (Kopf- und Fussteil).    | 
| + | |||
| + | ==Links==  | ||
| + | * [[XHEX_Makefile]] - Makefile-Regel zur Generierung von xhex Dateien  | ||
| + | * [http://download.nicai-systems.com/nibo/testfile.xhex testfile.xhex] - Beispieldatei  | ||
| + | * [http://sourceforge.net/projects/robodude/ RoboDude] - Tool zur Übertragung auf AVR Mikrocontroller  | ||
| + | |||
==Beispieldatei==  | ==Beispieldatei==  | ||
| Zeile 35: | Zeile 41: | ||
==XML Definitionen==  | ==XML Definitionen==  | ||
| − | + | ===xhex===  | |
| + | ; Attributes  | ||
| + | : version - Version ist 1.0  | ||
| + | |||
| + | ; Child elements  | ||
| + | : platform, programmer, device  | ||
| − | + | ----  | |
| − | + | ===platform===  | |
| + | ; Content  | ||
| + | : text - Bezeichnung der Plattform, diese Bezeichnung kann zum Speichern einer Konfiguration (z.B. spez. Programmer) verwendet werden.  | ||
| − | + | ----  | |
===programmer===  | ===programmer===  | ||
| + | ; Attributes  | ||
| + | : type - Bezeichnung des empfohlenen Programmers  | ||
| − | + | ----  | |
===device===  | ===device===  | ||
| + | ; Attributes  | ||
| + | : part - Bezeichnung des Mikrocontrollers  | ||
| + | : erase - Chip vor der Programmierung löschen?  | ||
| + | |||
| + | ; Child elements  | ||
| + | : segments  | ||
| − | + | ----  | |
===segment===  | ===segment===  | ||
| + | ; Attributes  | ||
| + | : id - Name des Segments: ''flash'', ''eeprom'', ''hfuse'', ''lfuse'', ''efuse'' oder ''lock''  | ||
| + | : verify - Der Block soll nach dem schreiben überprüft werden  | ||
| + | : format - ''ihex'' für Intel-Hex bzw. ''srec'' für Motorola, entfällt bei der Benutzung von ''data'' Elementen  | ||
| − | + | ; Content  | |
| + | : text - Hex-Daten als Text im Intel-Hex oder Motorola-Format  | ||
| − | + | ; Child elements  | |
| + | : data  | ||
| − | + | ----  | |
| − | ==  | + | ===data===  | 
| + | ; Attributes  | ||
| + | : address - Startadresse in hexadezimaler Form  | ||
| − | + | ; Content  | |
| − | + | : text - Daten in hexadezimaler Form ohne Leerzeichen  | |
Aktuelle Version vom 18. November 2010, 11:42 Uhr
Das XHEX Dateiformat dient zur Kapselung von klassischen HEX-Files. Das Format unterstützt zusätzlich mehrere Segmente, das setzten von Fuse-Bits und die Definition des verwendeten Microcontrollers, der Zielplattform und des Programmiergerätes. Die Generierung der XML Datei aus einer HEX-Datei ist recht einfach, da der HEX Datei nur zwei Abschnitte hinzugefügt werden müssen (Kopf- und Fussteil).
Inhaltsverzeichnis
Links
- XHEX_Makefile - Makefile-Regel zur Generierung von xhex Dateien
 - testfile.xhex - Beispieldatei
 - RoboDude - Tool zur Übertragung auf AVR Mikrocontroller
 
Beispieldatei
<?xml version="1.0"?>
<xhex version="1.0">
  <platform>NIBObee</platform>
  <programmer type="usbasp"/>
  <device part="atmega16" erase="yes">
    <segment id="hfuse" verify="yes">d1</segment>
    <segment id="lfuse" verify="yes">ef</segment>
    <segment id="flash" format="ihex">
:100000000C942A000C9447000C9447000C94470071
:100010000C9447000C9447000C9447000C94470044
:100020000C9447000C9447000C9447000C94470034
:100030000C9447000C9447000C9447000C94470024
:100040000C9447000C9447000C9447000C94470014
:100050000C94470011241FBECFE5D4E0DEBFCDBF16
:1000600010E0A0E6B0E0E0E2F1E002C005900D9201
:10007000A036B107D9F710E0A0E6B0E001C01D92AC
:10008000A036B107E1F70E9449000C948E000C9451
:1000900000000E945C0081E061E00E94600084EF4B
:1000A00091E00E94840081E060E00E94600084EFA3
:1000B00091E00E948400EFCF87B38F6087BB0895E3
:1000C000662389F0813049F0813028F0823039F0A0
:1000D0008330C9F406C0C09A0895C19A0895C29A9F
:1000E0000895C39A0895813049F0813028F0823014
:1000F00039F0833041F406C0C0980895C19808953E
:10010000C2980895C398089526EA3EE004C0F90114
:100110003197F1F701970097D1F70895F894FFCF41
:00000001FF
    </segment>
  </device>
</xhex>
XML Definitionen
xhex
- Attributes
 - version - Version ist 1.0
 
- Child elements
 - platform, programmer, device
 
platform
- Content
 - text - Bezeichnung der Plattform, diese Bezeichnung kann zum Speichern einer Konfiguration (z.B. spez. Programmer) verwendet werden.
 
programmer
- Attributes
 - type - Bezeichnung des empfohlenen Programmers
 
device
- Attributes
 - part - Bezeichnung des Mikrocontrollers
 - erase - Chip vor der Programmierung löschen?
 
- Child elements
 - segments
 
segment
- Attributes
 - id - Name des Segments: flash, eeprom, hfuse, lfuse, efuse oder lock
 - verify - Der Block soll nach dem schreiben überprüft werden
 - format - ihex für Intel-Hex bzw. srec für Motorola, entfällt bei der Benutzung von data Elementen
 
- Content
 - text - Hex-Daten als Text im Intel-Hex oder Motorola-Format
 
- Child elements
 - data
 
data
- Attributes
 - address - Startadresse in hexadezimaler Form
 
- Content
 - text - Daten in hexadezimaler Form ohne Leerzeichen