XHEX: Unterschied zwischen den Versionen

Aus Nibo Wiki
Wechseln zu: Navigation, Suche
 
(6 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 Zielplatform 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).
+
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====
+
===xhex===
Attributes: version
+
; Attributes
Child elements: platform, programmer, device
+
: version - Version ist 1.0
  
====platform====
+
; Child elements
Attributes: -
+
: platform, programmer, device
  
Content: text
+
----
  
Child elements: -
+
===platform===
 +
; Content
 +
: text - Bezeichnung der Plattform, diese Bezeichnung kann zum Speichern einer Konfiguration (z.B. spez. Programmer) verwendet werden.
  
====programmer====
+
----
Attributes: type
 
  
Child elements: -
+
===programmer===
 +
; Attributes
 +
: type - Bezeichnung des empfohlenen Programmers
  
====device====
+
----
Attributes: part, erase
 
  
Child elements: segments
+
===device===
 +
; Attributes
 +
: part - Bezeichnung des Mikrocontrollers
 +
: erase - Chip vor der Programmierung löschen?
  
====segment====
+
; Child elements
Attributes: id, verify, format
+
: segments
  
Content: text
+
----
  
Child elements: data
+
===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
  
====data====
+
; Content
Attributes: address
+
: text - Hex-Daten als Text im Intel-Hex oder Motorola-Format
  
Content: text
+
; Child elements
 +
: data
  
Child elements: -
+
----
  
==Links==
+
===data===
 +
; Attributes
 +
: address - Startadresse in hexadezimaler Form
  
* [http://download.nicai-systems.com/nibo/testfile.xhex testfile.xhex] - Beispieldatei
+
; Content
* [http://sourceforge.net/projects/robodude/ RoboDude] - Tool zur Übertragung auf AVR Mikrocontroller
+
: text - Daten in hexadezimaler Form ohne Leerzeichen

Aktuelle Version vom 18. November 2010, 12: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).

Links


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