- HSE
Transcription
- HSE
HEXit Manual 4 FFL 2011.02 Seite 1 d-h4x49 HEXit Manual 4 Manual ab Version 4.x Eine erfolgreiche Arbeit mit HEXit wünscht Ihnen das hse-electronics-Team Angaben zu den Betriebsbedingungen von HEXit finden Sie auf Seite 30. 2011.02 Seite 2 d-h4x49 HEXit Manual 4 Inhaltsverzeichnis 1 HEXit ........................................................................................................................................................................ 4 1.1 Funktionsüberblick ............................................................................................................................................ 4 1.2 Zum Handbuch – Begrifflichkeiten .................................................................................................................... 4 2 Installation und Registrierung............................................................................................................................... 5 2.1 Installation ......................................................................................................................................................... 5 2.2 Registrierung ..................................................................................................................................................... 5 3 Das Bedienungskonzept von HEXit ...................................................................................................................... 6 4 Input – Daten zusammenstellen ............................................................................................................................ 7 4.1 Dateien (Intel Hex-, Motorola S-Record- und Binär-Format) ............................................................................ 7 4.2 Daten-Generator ............................................................................................................................................... 8 5 Functions – Aufgaben festlegen ........................................................................................................................... 9 5.1 Dateien/Daten zusammenbinden – Link serveral input files/data ................................................................... 10 5.2 Dateien/Daten aufteilen – Split output ............................................................................................................. 11 5.3 Formatwandlung nach Intel Hex – Convert to Intel-Hex ................................................................................. 11 5.4 Formatwandlung nach Motorola S-Record – Convert to Motorola S-Record ................................................. 12 5.5 Formatwandlung nach Binär – Convert to Binary ........................................................................................... 12 5.6 Formatwandlung nach Include – Convert to Include ....................................................................................... 13 6 Output – Ergebnisse ............................................................................................................................................ 14 6.1 Dateieinstellungen File settings ...................................................................................................................... 14 6.2 Prüfsummenberechnung – CRC settings........................................................................................................ 15 6.3 Datei- und CRC- Ergebnisse – Info ................................................................................................................. 16 7 Projekte und Kommandos – Abläufe automatisieren ....................................................................................... 17 7.1 Projektverwaltung ............................................................................................................................................ 17 7.2 Kommandozeilensteuerung............................................................................................................................. 17 7.3 Settings............................................................................................................................................................ 18 8 File Analyser – Dateien grafisch analysieren .................................................................................................... 19 8.1 Basis-Bedienelemente: ................................................................................................................................... 20 8.2 Analysefilter ..................................................................................................................................................... 22 8.3 Drei Analyse-Beispiele .................................................................................................................................... 23 8.4 Visualisierung einzelner Daten-Bytes ............................................................................................................. 24 9 Anwendungsbeispiele.......................................................................................................................................... 25 9.1 Intel-Hex-Datei aufteilen .................................................................................................................................. 25 9.2 Bereich eines Binärcodes austauschen .......................................................................................................... 26 9.3 Prüfsummenbildung (CRC) ............................................................................................................................. 28 9.4 Erzeugen einer Jump-Table mit dem Datengenerator .................................................................................... 29 10Betriebsbedingungen zu HEXit ........................................................................................................................... 30 11HSE-Electronics Produkte ................................................................................................................................... 31 2011.02 Seite 3 d-h4x49 HEXit Manual 4 1 HEXit 1.1 Funktionsüberblick HEXit für den professionellen Umgang mit Intel Hex-, Motorola S-Record- und Binär-Dateien von hse-electronics ein „must have“ Mit HEXit können Intel Hex-, Motorola S-Record- oder Binär-Dateien modifiziert werden: Intel Hex-, Motorola S-Record- und Binär-Dateien können in das jeweils andere Format konvertiert werden Prüfsummenbildung (CRC16/32 ) von Dateien Prüfsumme in die geprüfte Datei schreiben Datei-Aufteilung, z.B. auf den internen und externen Flashspeicher eines Controllers Linken mehrerer Dateien Datengenerator mit dem beliebige Zahlen, Zahlenrampen oder Zufallszahlen erzeugt werden können, um z.B. das Verhalten eines Systems zu testen Grafische Analyse, von Intel Hex-, Motorola S-Record- oder Binär-Dateien auf Speicherbelegung Adressverteilung Verteilung von Programmcodes/Daten mehrfach belegte Adressen schneller Überblick auf große Datenstrukturen durch Zuordnung der einzelnen Byte-Werte in Farb-Werte Histogramm-Darstellung über die Daten 1.2 Zum Handbuch – Begrifflichkeiten Begriffe, die Fett und Kursiv im Manual erscheinen, weisen darauf hin, dass sie im Wortlaut auf der Programmoberfläche zu finden sind, z.B.: Data area, Start address oder Ramp data. Der Begriff Dialogfläche bezeichnet einen Bereich von HEXit, in dem Einstellungen vorgenommen werden können oder Informationen ausgegeben werden, z.B.: Dialogfläche Data area oder Fill pattern. Als Funktionsschalter werden die Schalter bezeichnet, mit denen eine Funktion festgelegt oder ausgelöst wird, z.B.: Convert to Intel-Hex. Optionsschalter Checkbox Auswahlmenü 2011.02 Seite 4 d-h4x49 HEXit Manual 4 2 Installation und Registrierung 2.1 Installation Von CD: Legen Sie die CD in das CD-Laufwerk und folgen Sie den Hinweisen. Von einem Download: Starten Sie setuphexit.exe und folgen Sie den Hinweisen. 2.2 Registrierung Nachdem HEXit das erste Mal gestartet wurde, muss HEXit lizensiert werden, andernfalls befindet sich HEXit im eingeschränkten Demomodus. Zwei Lizenzierungsverfahren sind möglich: USB-Lizenz-Dongle-gebundene Lizenzierung Wurde HEXit mit einem Lizenz-Dongle geliefert, stecken Sie den Lizenz-Dongle in einen USB-Port, und HEXit ist freigeschaltet. PC-gebundene Lizenzierung Die Registrierung von HEXit erfolgt in zwei Schritten: Schritt 1 (Step 1): Führen Sie diesen Schritt auf dem Computer durch, für den HEXit registriert werden soll! Klicken Sie auf Build registration data. HEXit hat Ihre persönliche System-Id erzeugt. - Ergänzen Sie die mit einem „*“ gekennzeichneten Felder. - Senden Sie uns jetzt Ihre Daten zu. Dazu haben Sie folgende Möglichkeiten: Via E-Mail (Build mail...). Als Dateianhang einer E-Mail (Save as). Via Fax, indem Sie die Daten ausdrucken (Print...). - Sie erhalten postwendend Ihren Freischalt-Code via E-Mail von uns. Schritt 2 (Step 2): - Geben Sie den von hse-electronics erhaltenen Freischalt-Code unter Enter licence key: ein. - Klicken Sie auf Enable licence. - Wenn die Meldung Licence is enabled angezeigt wird (auf grünem Feld), wurde FLASHit erfolgreich registriert. Bei Fragen zur Registrierung senden Sie uns eine E-Mail: [email protected]. Hinweis: Falls Sie einen neuen Freischalt-Code benötigen, weil sich Ihre Hardware oder sonstige Bedingungen geändert haben, genügt eine kurze E-Mail mit der Angabe der alten Lizenznummer, und Sie erhalten eine neue Nummer gegen eine Lizenztransfergebühr von EUR 50,00. Bei einer Lizensierung über einen Dongle wäre das selbstverständlich nicht nötig. 2011.02 Seite 5 d-h4x49 HEXit Manual 4 3 Das Bedienungskonzept von HEXit Die Oberfläche von HEXit unterteilt sich in drei Bereiche: Input Functions Output Input – In diesem Bereich werden alle zu bearbeitenden Intel Hex-, Motorola SRecord-, Binär-Dateien oder die von HEXit erzeugten Testdaten zusammengestellt. HEXit liefert an dieser Stelle diverse Informationen zu den Dateien/Daten. Im Input-Bereich können Einstellungen zum Generieren von Testdaten vorgenommen werden. Functions – In diesem Bereich können alle Einstellungen, zur Verarbeitung der im Input-Bereich zusammengestellten Dateien/Daten, vorgenommen werden. Output – In diesem Bereich können alle Einstellungen für die zu erzeugenden Ergebnisdateien vorgenommen und Ergebnisse angezeigt werden. Sind alle Einstellungen vorgenommen, wird mit dem Schalter Execute die Verarbeitung der Daten gestartet. Eine Sonderstellung nimmt die Funktion File Analyser im Funktionsumfang von HEXit ein. Mit File Analyser besteht die Möglichkeit, eine umfangreiche und schnelle Analyse einer Intel-Hex, Motorola S-Record, oder Binär Datei vorzunehmen. Das Ergebnis der Analyse erfolgt grafisch, so erhält man einen schnellen Überblick auch über große Dateien. 2011.02 Seite 6 d-h4x49 HEXit Manual 4 4 Input – Daten zusammenstellen Im Input-Bereich von HEXit werden alle Daten, die später zusammengeführt, gesplittet oder konvertiert werden sollen, „gesammelt“. Dazu gehören Dateien im Intel Hex-, Motorola S-Record- oder Binär-Format und die von HEXit generierten Daten. 4.1 Dateien (Intel Hex-, Motorola S-Record- und Binär-Format) Zusammenstellung von Intel Hex-, Motorola S-Record- und Binär-Dateien für die spätere Bearbeitung im linken Teil (Sammelfenster) des Input-Bereichs. Änderung der Reihenfolge der Einträge im Sammelfenster des Input-Bereichs. Das ist für die später beschriebene Funktion >Link serveral input files/data< von Bedeutung. Entfernen einzelner Einträge aus dem Sammelfenster. Mit der rechten Maustaste kann über Preview Einsicht in die markierte Datei genommen werden. Im rechten Teil des Input-Bereichs werden Informationen zu den jeweils markierten Dateien gezeigt. Dialogfläche File info Size: Dateigröße in Byte Format: Dateiformat (Intel Hex-, Motorola S-Record-, Binär) Addr type: Adressbreite (16-32- Bit) Byte/Line: Anzahl der Daten-Bytes pro Zeile Data rate: Das aus Byte/Line ermittelte prozentuale Verhältnis zur Dateigröße Dialogfläche Source – Load from start address User defined: Laden der gewählten Datei, ab einer frei wählbaren Adresse File defined: Laden der gewählten Datei, ab der in der Datei festgelegten Startadresse Dialogfläche Source – Load up to end address User defined: Laden der gewählten Datei, bis zu einer frei wählbaren Endadresse File defined: Laden der gewählten Datei, bis zu der in der Datei festgelegten Endadresse Dialogfläche Destination Address Offset: Um diesen Wert wird das Laden der Datei verschoben 2011.02 Seite 7 d-h4x49 HEXit Manual 4 4.2 Daten-Generator Virtuelle Datencluster (beliebige Zahlen, Zahlenrampen oder Zufallszahlen) werden mit dem Datengenerator erzeugt. Die Adressen, die Größe sowie der Inhalt der Dateien sind frei generierbar. Einfügen von Datenplatzhalter im Sammelfenster des Input-Bereichs. <Data generator0> bis <Data generator13>, aus denen später Intel Hex-, Motorola S-Record- oder BinärDateien generiert werden können. Änderung der Reihenfolge der Einträge im Sammelfenster des Input-Bereichs. Das ist für die später beschriebene Funktion >Link serveral input files/data< von Bedeutung. Entfernen einzelner Einträge aus dem Sammelfenster. Mit der rechten Maustaste kann über Preview Einsicht in die markierte Datei genommen werden. Dialogfläche Data area Start address: Definition der Startadresse. Size: Länge des späteren Datensatzes. End address Definition der Endadresse. Die Einträge unter Size und End address korrespondieren miteinander. Dialogfläche Fill pattern Constant pattern: Der Adressbereich kann mit einem konstanten Muster (Pattern) gefüllt werden. Im Vorschaufenster von Fill pattern können in einem Eingabefeld die Muster eingegeben werden. Das Muster (maximal 16 Byte), wiederholt sich fortlaufend. Ein Klick auf „?“ rechts neben Constant pattern öffnet eine Seite, die die Möglichkeiten beispielhaft aufzeigt , die mit dieser Funktion möglich sind. Im Kapitel 9.4 Erzeugen eines Jump-Table mit dem Datengenerator wird ausführlich ein Beispiel zum Erzeugen eines Op-Codes gezeigt. Ramp data: Der Adress-Bereich wird wiederholt mit den Werten 0x00, 0x01, bis 0xFF gefüllt. Random data Der Adress-Bereich wird mit Zufallsdaten im Bereich 0x00 bis 0xFF gefüllt. 2011.02 Seite 8 d-h4x49 HEXit Manual 4 5 Functions – Aufgaben festlegen Im Functions-Bereich von HEXit wird festgelegt, wie die Einträge (Dateien/Daten), die im Input-Bereich zusammengestellt wurden, verarbeitet werden. Im Functions-Bereich können die Einträge des Input-Bereichs: verbunden werden in mehrere Dateien aufgeteilt werden und in andere Formate (Intel Hex-, Motorola S-Record-, Binär- oder Include-Format) konvertiert werden. Die verschiedenen Funktionen lassen sich, solange es die Logik erlaubt, beliebig kombinieren. Im Dialogfenster Convert ist nur eine Option zur gleichen Zeit auswählbar! Durch einen Mausklick auf die Funktionsschalter werden rechts im Functions-Dialog die möglichen Parametereinstellungen sichtbar. Durch das Betätigen der Option neben dem Funktionsschalter (die Option wird dann grün) wird diese Funktion aktiviert. Später beim Ausführen der Funktionen werden nur die grün (aktivierten) Funktionen berücksichtigt. Eine Convert-Funktion kann beliebig mit der Link-, und der Split-Funktion kombiniert werden. Die Split-Funktion kann nur verwendet werden, wenn alle Einträge im Input-Fenster über die Link-Funktion zusammengebunden werden oder sich nur ein Eintrag im Input-Fenster befindet. 2011.02 Seite 9 d-h4x49 HEXit Manual 4 5.1 Dateien/Daten zusammenbinden – Link serveral input files/data Mit Link serveral input files/data in der Dialogfläche Link können die Einträge der Dateien/Daten aus dem InputFenster, parametrisiert werden um sie zu einem Datensatz zusammenzufügen. Welches Format, ob Intel Hex-, Motorola S-Record-, Binär- oder Include-Format die resultierende Datei haben wird, wird mit den nachfolgenden Convert-Funktionen festgelegt. Kommt es zu einer Überlappung der Daten der zu linkenden Einträge, überschreibt der jeweils letzte Dateneintrag aus dem Inputfenster den überlappenden Datenbereich des vorigen Eintrages, sofern dies mit der Option Allowed zugelassen wurde. Änderung der Reihenfolge der Einträge im Inputfenster und somit deren Priorität. Im Parameterfeld, Parameter of Function: Link input files / data können Parameter eingegeben werden. Dialogfläche Overwriting Allowed: Diese Option erlaubt ein eventuelles Überlappen von Adressbereichen. Es wird keine Fehlermeldung generiert! Not allowed: Diese Option verbietet ein Überlappen der Adressbereiche der zu linkenden Daten. HEXit würde in diesem Fall die Ausführung der Verlinkung mit dem Hinweis Overlay Error stoppen. Öffnet den Dialog Placement of overlapping data. Der Dialog zeigt in einer Tabelle die Einträge, deren Adressen sich überlappen. Es wird jeweils die erste und letzte Adresse dargestellt. Überlappen sich die Adressbereiche der zu linkenden Daten nicht, hat es keinen Einfluss auf das Ergebnis, welcher der Optionen Allowed oder Not allowed markiert wurde. Hinweis: Die Link serveral input files/data- Funktion kann Daten aus dem Adressraum von 0x0 bis 0xFFFF FFFF verarbeiten. Zwischen der niedrigsten und höchsten Adresse dürfen maximal 64 MByte liegen. 2011.02 Seite 10 d-h4x49 HEXit Manual 4 5.2 Dateien/Daten aufteilen – Split output Mit Split output in der Dialogfläche Split kann ein Eintrag aus dem Inputfenster in mehreren Dateien aufgeteilt werden. Befinden sich im Input-Bereich mehrere Einträge, müssen diese vorher mit Link serveral input files/data in der Dialogfläche Link zusammengeführt werden. Welches Format, ob Intel Hex-, Motorola S-Record-, Binär oder Include-Format die resultierenden Zieldateien haben werden, wird mit den Convert Funktionen festgelegt. Im Parameterfeld Parameter of Function: Split können die Parameter eingegeben werden. Dialogfläche Split Number of output files: Festlegung, in wie viele Teile der Inputeintrag aufgeteilt werden soll. Die Start- und End-Adressen der neuen Dateien werden im Output-Fenster festgelegt. 5.3 Formatwandlung nach Intel Hex – Convert to Intel-Hex Mit Convert to Intel-Hex in der Dialogfläche Convert können die Einträge der Dateien/Daten aus dem Inputfenster parametrisiert werden, um sie in das Intel-Hex-Format zu konvertieren. Alle Einträge im Imput-Fenster werden einzeln in das Intel-Hex-Format überführt. Wurde in der Dialogfläche Link die Option Link serveral input files/data gewählt, so werden die Einträge erst zusammengeführt und dann in eine einzige Datei zum Intel-Hex-Format gewandelt. Im Parameterfeld, Parameter of Function: Convert to Intel-Hex können die Parameter zum Ausgabeformat eingegeben werden. Dialogfläche Output format Address type: Folgende Adressierungs-Records werden unterstützt: 32 bit oder 16 bit. Data-Byte per Line: Die Länge der Datenbytes pro Intel-Hex-Zeile in der zu erzeugenden Datei kann hier zwischen 1 und 255 festgelegt werden. Diese Einstellung hat einen entscheidenden Einfluss auf die spätere Größe der Datei. 2011.02 Seite 11 d-h4x49 HEXit Manual 4 5.4 Formatwandlung nach Motorola S-Record – Convert to Motorola S-Record Mit Convert to Motorola S-Record in der Dialogfläche Convert können die Einträge der Dateien/Daten aus dem Inputfenster parametrisiert werden, um sie in das Motorola S-Format zu konvertieren. Alle Einträge im Imput-Fenster werden einzeln in das Motorola S-Record-Format überführt. Wurde in der Dialogfläche Link die Option Link serveral input files/data gewählt, so werden die Einträge erst zusammengeführt und dann in eine einzige Datei zum Motorola S-Record-Format gewandelt. Im Parameterfeld, Parameter of Function: Convert to Motorola S-Record können die Parameter zum Ausgabeformat eingegeben werden. Dialogfläche Output format Address type: Folgende Adressierungs-Records werden unterstützt: 32 bit, 24 bit oder 16 bit. Data-Byte per Line: Die Länge der Datenbytes pro Motorola S-Record Zeile in der zu erzeugenden Datei kann hier zwischen 1 und 250 festgelegt werden. Diese Einstellung hat einen entscheidenden Einfluss auf die spätere Größe der Datei. 5.5 Formatwandlung nach Binär – Convert to Binary Mit Convert to Binary im Dialogfläche Convert können die Einträge der Dateien/Daten aus dem Inputfenster, parametrisiert werden um sie in ein Binär-Format zu konvertieren. Alle Einträge im Imput-Fenster werden einzeln in das Binär-Format überführt. Wurde im Dialogfläche Link die Option Link serveral input files/data gewählt, so werden die Einträge erst zusammengeführt und dann in eine einzige Datei zum Binär-Record-Format gewandelt. Im Parameterfeld, Parameter of Function: Convert to binary können keine Parameter zum Ausgabeformat eingegeben werden. . 2011.02 Seite 12 d-h4x49 HEXit Manual 4 5.6 Formatwandlung nach Include – Convert to Include Mit Convert to Include in der Dialogfläche Convert können die Einträge der Dateien/Daten aus dem Inputfenster parametrisiert werden, um sie in ein C-Include- oder ASM-Include zu konvertieren. Die Daten aus dem Inputfenster werden – ohne sie zu interpretieren – Byte für Byte eingelesen und in ein Datenfeld gewandelt, das von C-Compilern oder von Assemblern verarbeitet werden kann. Im Parameterfeld, Parameter of Function: Convert to Include können Parameter zum Ausgabeformat eingegeben werden. Dialogfläche Input format Input Format: Ist die Option Ignore makiert, werden die Daten aus dem Inputfenster – ohne sie zu interpretieren– eingelesen Andernfalls werden die Inputformate auf Intel-Hex oder Motorola S-Record interpretiert. Alle anderen Formate werden nicht interpretiert. Dialogfläche Syntax ANSI-C ucArray: Formatierung des Inputeintrages in einen unsigned char C-Include entsprechend einer Byte (8 Bit)-Formatierung. ANSI-C uiArray: Formatierung des Inputeintrages in einen unsigned integer C-Include entsprechend einer Word (16 Bit)-Formatierung. ASM DB: Formatierung des Inputeintrages in einen Defined Byte Assembler-Include (8 Bit). ASM DW: Formatierung des Inputeintrages in einen Defined Word Assembler-Include (16 Bit). Dialogfläche Output format Hexadecimal: Ausgabeformat Hexadezimal. Decimal: Ausgabeformat Dezimal. Dialogfläche Output format –Byte sequence MSB, LSB: Festlegung der Bytereihenfolge mit Most Significant Byte. LSB, MSB: Festlegung der Bytereihenfolge mit Least Significant Byte. Data byte per line: Länge der Datenzeile in der zu erzeugenden Datei. Dialogfläche Example In diesem Dialog wird in Abhängigkeit der vorgenommenen Einstellungen jeweils ein Beispiel gezeigt. 2011.02 Seite 13 d-h4x49 HEXit Manual 4 6 Output – Ergebnisse Im Output-Bereich von HEXit werden Einstellungen zu den Ausgaben (Datei/CRC) vorgenommen und Ergebnisse angezeigt werden. Der Output-Bereich unterteilt sich in drei Sektoren: File settings: Festlegung der Adressbereiche der Ausgabedateien CRC settings: Einstellung der CRC-Parameter für die zu erzeugenden Dateien Info: Informationen über die zu erzeugenden Dateien Für jede Ausgabe, die im Output-Bereich generiert wird, können die Einstellungen jeweils separat im File settings und CRC settings-Bereich vorgenommen werden und Ergebnisse im Info-Bereich angesehen werden. Die Anwahl der einzelnen Ausgaben erfolgt unterhalb des Output-Fensters. 6.1 Dateieinstellungen File settings Nachdem im Input-Bereich, wenigstens ein Eintrag und im Functions- Bereich ein Ausgabeformat gewählt wurde, können im Reiter File settings die Start- und End- Adressen für jede der zu erzeugende Dateien separat eingegeben werden. Dialogfläche Save from start address User defined: Speichern der Datei, ab einer frei wählbaren Startadresse. File defined: Wenn die Funktion Link serveral input files/data nicht aktiviert wurde, wird die Startadresse des korrespondierenden Input-Eintrages übernommen. Andernfalls wird die Startadresse aus dem Linkergebnis übernommen. Die berechnete Adresse kann erst nach dem Ausführen von Execute angezeigt werden. Dialogfläche Save up to end address User defined: Speichern der Datei, bis zu der berechneten Endadresse. File defined: Wenn die Funktion Link serveral input files/data nicht aktiviert wurde, wird die Endadresse des korrespondierenden Input-Eintrages übernommen. Andernfalls wird die Endadresse aus dem Linkergebnis übernommen. Die berechnete Adresse kann erst nach dem Ausführen von Execute angezeigt werden. 2011.02 Seite 14 d-h4x49 HEXit Manual 4 6.2 Prüfsummenberechnung – CRC settings Die Daten zur Berechnung der Prüfsumme können im Bereich CRC settings für jede der zu erzeugende Dateien separat eingegeben werden. Mit der Checkbox CRC wird die Prüfsummenbildung aktiviert. In dem Auswahlmenü Type, kann zwischen unterschiedlichen Methoden zu Prüfsummenerzeugung gewählt werden. Bei der Wahl von user defined werden die Einstellungen, die unter Settings/Program Settings in der Dialogfläche User defined CRC Polynominal eingestellt wurden, verwendet. Dialogfläche Calculate from start address User defined: Berechnung der CRC ab einer frei wählbaren Startadresse. File defined: Wenn die Funktion Link serveral input files/data nicht aktiviert wurde, wird die Startadresse des korrespondierenden Input-Eintrages übernommen. Andernfalls wird die Startadresse aus dem Linkergebnis übernommen. Die berechnete Adresse kann erst nach dem Ausführen von Execute angezeigt werden. Dialogfläche Calculate up to end address User defined: Berechnung der CRC bis zu einer frei wählbaren Endadresse. File defined: Wenn die Funktion Link serveral input files/data nicht aktiviert wurde, wird die Endadresse des korrespondierenden Input-Eintrages übernommen. Andernfalls wird die Endadresse aus dem Linkergebnis übernommen. Die berechnete Adresse kann erst nach dem Ausführen von Execute angezeigt werden. Dialogfläche Write CRC into file Die ermittelte CRC kann in einen beliebigen Bereich der Datei geschrieben werden. Enable: Aktivierung der Funktion. Dialogfläche Write CRC into file – Place Address: Adresse, ab der die CRC in die Datei geschrieben werden soll. Dialogfläche Write CRC into file – Byte sequence Festlegung der Bytereihenfolge mit MSB, LSB (Most Significant Byte) oder LSB, MSB (Least Significant Byte). Hinweis: Soll die gebildete CRC in die Datei geschrieben werden, ist darauf zu achten, dass bei der Bildung der CRC im vorigen Schritt der Bereich ausgeklammert wurde, in den die CRC geschrieben werden soll. In der Regel sind es die letzten beiden Bytes einer Datei. 2011.02 Seite 15 d-h4x49 HEXit Manual 4 6.3 Datei- und CRC- Ergebnisse – Info Informationen zu den Dateien und den jeweiligen Prüfsummen, können im Bereich Info separat aufgerufen werden. Dialogfläche File Info Size: Größe der Ausgabedatei in Byte. Format: Gewähltes Ausgabe-Format (Intel-Hex, Motorola S-Record, Binär oder Include). Addr type: Gewählte Adressierungs-Records. Data Byte/line: Die Länge der Datenbytes pro Intel-Hex bzw. Motorola S-Record Zeile in der Datei. Data rate: Das aus Data Byte/Line ermittelte prozentuale Verhältnis zur Dateigröße. Dialogfläche CRC Info CRC Type: Gewählte Art der Prüfsummenbildung. CRC value: Prüfsummenergebnis. 2011.02 Seite 16 d-h4x49 HEXit Manual 4 7 Projekte und Kommandos – Abläufe automatisieren 7.1 Projektverwaltung Alle Parameter der jeweiligen Funktionen von HEXit können über Projektdateien verwaltet werden. Über die Navigationsleise Project können die Einstellungen vorgenommen werden. New project: Erstellen eines neuen Projektes. Open project: Laden von Parametern eines zuvor erstellten Projektes. Save project: Speichern der aktuellen Parameter unter dem aktiven Projektnamen. Save project as: Die aktuellen Einstellungen können unter einem Projektnamen gespeichert werden. Close project: Schließt das aktuelle Projekt. Wechsel in die Projekt-Schnell-Übersicht. Hier werden die letzten 6 Projekte gezeigt und können dort jeweils mit Execute ausgeführt werden. Wechsel zurück zur Parameterumgebung. 7.2 Kommandozeilensteuerung HEXit kann beim Start eine Projektdatei „übergeben“ werden, die dann automatisch ausgeführt wird. HEXit 4 unterstützt folgende Kommandozeilen Parameter: PROJECT= Projektdatei beim Programmstart laden. AUTOSTART Nach dem Programmstart Execute ausführen EXIT Programm nach fehlerfreier Ausführung beenden. RETURN Programm nach der Ausführung immer (auch bei Fehlern) beenden. Der ReturnCode übergibt Error-Nummern an das Betriebssystem. Error = 0 bedeutet, dass die Ausführung fehlerfrei erfolgte. Beispiel für eine vollautomatische Ausführung: <Pfad>/Hexit.exe PROJECT=j:\hexit4\MyProject1.hix AUTOSTART RETURN 2011.02 Seite 17 d-h4x49 HEXit Manual 4 7.3 Settings Über die Navigationsleiste Settings/Program Settings können spezifische Einstellungen vorgenommen werden. Values: Value of undefined memory: Ausfüllen eines nicht definierten Speicherbereichs mit einem beliebigen Wert. Ein nicht definierter Speicherbereich entsteht, wenn z.B. eine Intel-Hex-Datei in eine Binär-Datei gewandelt wird und z.B. durch Sprunganweisungen in der Intel-Hex-Datei dann in der Binärdatei Lücken entstehen. Default file extension of output file: Einstellung der Dateierweiterungen. User defined CRC Polynominal Einstellung der CRC Polynomen. Default name of include array Wahl des Variablennamens des Arrays. Messages: Einstellung diverser Programmparameter. Infos: Anzeige des Arbeitsverzeichnisses. 2011.02 Seite 18 d-h4x49 HEXit Manual 4 8 File Analyser – Dateien grafisch analysieren Aufruf File Analyser: Mit dem File Analyser besteht die Möglichkeit, eine umfangreiche und schnelle Analyse einer Intel-Hex, Motorola S-Record, oder Binär Datei vorzunehmen. Das Ergebnis der Analyse erfolgt grafisch, so erhält man mit diesem Tool einen schnellen Überblick auch über große Dateien. Der Inhalt der Datei wird auf Basis der Formatspezifikation von Intel-Hex bzw. Motorola SRecord vom Analyser interpretiert und grafisch dargestellt. Jedes analysiertes Byte (Word) wird als Pixel in einer Grafik dargestellt. Je nach dem Analyseergebnis wird dem Pixel eine Farbe zugeordnet. Die Intel-Hex, Motorola S-Record, oder Binär Datei wird untersucht auf: Nicht definierte Adress-Bereiche Definierte Adressen Definierte Adressen die gelöscht wurden (Speicherinhalt 0x00 oder 0xff) Definierte Adressbereiche, deren Inhalt im ASCII- Bereich liegt Adressen mit dem Dateninhalt 0x00 und Mehrfach definierte Adressen. 2011.02 Seite 19 d-h4x49 HEXit Manual 4 8.1 Basis-Bedienelemente: Öffnen der zu untersuchenden Datei. Alternativ kann die Datei auch via Drag & Drop in das Analysefenster gezogen werden. Grafik in eine Bitmap speichern. Ausdrucken der Grafik. Einstellung des sichtbaren Bereichs der analysierten Datei. Wird die Zoomfunktion auf Auto gestellt, wird der richtige Vergrößerungsfaktor zum kompletten Darstellen der Datei automatisch eingestellt. Erscheint, wenn die geladene Datei größer ist als der grafisch dargestellte Bereich (es wurde in den AdressBereich hinein gezoomt). Durch das Anklicken der Pfeile kann man in der Grafik navigieren. Histogramm-Darstellung. 2011.02 Seite 20 d-h4x49 HEXit Manual 4 Statuszeile Lowest Addr: Niedrigste Adresse der abgebildeten Datei Highest Addr: Höchste Adresse der abgebildeten Datei Mouse Addr: Adresse und deren Inhalt von der abgebildeten Datei, an der sich der Mauszeiger aktuell befindet. Durch einen Klick auf einen beliebigen Punkt der Grafik werden die Daten numerisch (im Hex- und ASCII-Modus) angezeigt. Auswahl eines FLASH-Speichers aus einer Datenbank zur Überprüfung, ob eine Applikation in einen gewählten FLASH-Speicher passt. Es öffnet sich ein Fenster, in dem man bequem aus ca. 500 verschiedenen FLASH-Speichern auswählen kann. Die FLASH-Typen können nach Hersteller oder Größe sortiert werden. Größe und Lage der Sektoren werden grafisch dargestellt. Klickt man auf einen Sektor, so erhält man weitere Informationen in der Statuszeile über diesen Sektor. Bevor der Flash-Speicher ausgewählt wird, muss seine Anordnung im Bussystem eingestellt werden, damit die Größe der Sektoren für die grafische Auswertung berechnet werden kann. Busmodi: ein 8 bit Flash-Speicher an einem 8 bit Datenbus. ein 16 bit Flash-Speicher an einem 16 bit Datenbus. zwei 8 bit Flash-Speicher, die zusammen geschaltet, an einem 16 bit Datenbus betrieben werden. Ein- und Ausschalten des gewählten FLASHBausteins. Die schwarzen Linien in der Grafik zeigen die Lage und Größe der einzelnen Sektoren grafisch über die analysierten Daten an. Hinweis: Es ist nicht notwendig eine Flash-Type auszuwählen, wenn die Darstellung der Sektoren nicht gewünscht wird. 2011.02 Seite 21 d-h4x49 HEXit Manual 4 8.2 Analysefilter Aktivierung-Deaktivierung der einzelnen Analyseschritte (wie unten beschrieben). Im Bild links wurden alle Elemente der Schaltfläche betätigt. Meistens sind jedoch nur bestimmte Faktoren von Interesse, die einzeln oder in Kombination dargestellt werden. Die Filter können beliebig miteinander kombiniert werden. (None) Nicht definierte AdressBereiche. (Text) Definierte Adressbereiche, deren Inhalt im ASCII Bereich liegt. 2011.02 (Used) Definierte Adressen. (Variable) Adressen mit dem Datenwert von 0x00. Seite 22 (Free) Definierte Adressen. die gelöscht wurden (Speicherinhalt 0x00 oder 0xff). (Error) Mehrfach definierte Adressen. d-h4x49 HEXit Manual 4 8.3 Drei Analyse-Beispiele Analyse auf einfach und doppelt belegte Adressbereiche: Folgende Funktionen werden benötigt: Nicht definierte Adress-Bereiche Definierte Adressen Fehler: Mehrfach definierte Adressen Deutlich ist der große nicht genutzte Bereich (hellblau) zu sehen. Der grüne Bereich sind die Nutzdaten, die hier nicht weiter interpretiert wurden. Im roten Bereich (unten rechts und links in der Grafik) wurde der Adressbereich mehrfach definiert. Dieser Fehler kann z.B. auftreten, wenn im Hexfile zusätzlich Daten aufgeführt wurden, die eigentlich später im RAM liegen sollen. IRQ-Vektoren: Hier wird gezeigt, welche Daten im Start-Bereich (blau) nicht definiert wurden. Zu erkennen ist, dass viele Interrupt-Vektoren nicht definiert wurden. Ungenutzte Adressbereiche: Die blauen Bereiche wurden nicht vom Linker verwendet. Die Häufigkeit der Lücken zeigen den Optimierungsgrad des verwendeten Compilers auf. 2011.02 Seite 23 d-h4x49 HEXit Manual 4 8.4 Visualisierung einzelner Daten-Bytes Mit dem Analyser können Intel-Hex, Motorola S-Record, oder Binär Dateien bis auf das Byte genau untersucht werden. Einschalten der Detail-Analyse. Es kann zwischen 8 bzw. einem 16 Bit-Befehlsformat (hier 8-bit) gewählt werden. Alle Datenbytes werden jeweils in unterschiedlichen Farben dargestellt. In der Legende rechts im Fenster wird die Zuordnung der Farben zu den Daten erkennbar. In diesem Beispiel kann man sehr schön an den regelmäßigen Strukturen erkennen, dass hier entweder Tabellen oder Grafiken gespeichert wurden. Es können einzelne Daten definiert und ausschließlich angezeigt werden. In diesem Beispiel wird ausschließlich 0xCC00 (gelb) dargestellt. Mit Hilfe dieser Funktionen könnte man die HEX-Datei auf das Vorkommen bestimmter Befehle (Op codes) durchsuchen (z.B.: 0xCC00 für NOP). In dem Beispiel links wurde zusätzlich der Schalter für „Nicht definierte Adress-Bereiche“ aktiviert. 2011.02 Seite 24 d-h4x49 HEXit Manual 4 9 Anwendungsbeispiele 9.1 Intel-Hex-Datei aufteilen Ein Intel-Hex-File (ca. 270 k Byte) soll so aufgeteilt werden, dass der erste Teil in den internen Flashspeicher der verwendeten MCU passt (64 k Byte). Der zweite Teil der Datei soll in den externen Flashspeicher geladen werden. Laden der Quelldatei (hier over-test-ft01.hex). Adressbereich 0x0000 0000 - 0x0002 A001. Split output auf 2 stellen. 1. Zieldatei benennen (hier area01.hex). Aufteilung des ersten Teils für den internen Adressbereich: 0x00000000 - 0x0000FFFF. 2. Zieldatei benennen (hier area02.hex). Aufteilung des zweiten Teils für den externen Adressbereich: 0x00010000 - 0x0002A001 Ergebnis: Quell-Datei over-test-ft01.hex Teil 1 area01.hex für den internen FLASH-Speicher 2011.02 Seite 25 Teil 2 area02.hex für den externen FLASH-Speicher d-h4x49 HEXit Manual 4 9.2 Bereich eines Binärcodes austauschen Ein Datenbereich, innerhalb einer Binärdatei soll gegen einen gleich großen Datenabschnitt ausgetauscht werden. In diesem Beispiel wird eine Grafik in einer ausführbaren Datei, durch eine gleich große Grafik ausgetauscht Im ersten Schritt wird die alte Grafik aus der Binärdatei extrahiert. Im zweiten Schritt soll die grafisch veränderte Datei wieder in die Datei integriert werden. Schritt 1 – Datenbereich aus Binärdatei extrahieren: Zum Austausch der Datenbereiche müssen die Startund Endadressen bekannt sein. In diesem Fall wurde der Austauschbereich mit dem File Analyser ermittelt, indem nach der Startkennung der Bitmap gesucht wurde („BM“ für Bitmap). Die Startadresse beträgt in diesem Beispiel 0x05B84. Als Endadresse wurde 0x15BF9 ermittelt. Extrahieren des Austauschbereichs: Input: Laden der Binärdatei (hier Extract-1.exe). Function: Wahl der Funktion Convert to Binary. Output: Im Dialogfläche Save from start address wird unter User defined die Startadresse des auszutauschenden Datenbereichs eingegeben. In der Dialogfläche Save up to end address wird unter User defined die Endadresse des auszutauschenden Datenbereichs eingegeben. Mit Execute wird der gewählte Datenbereich in eine neue Datei geschrieben. Da unter Convert to Binary gewählt wurde, wird der Datenbereich in eine Binärdatei geschrieben. 2011.02 Seite 26 d-h4x49 HEXit Manual 4 In diesem Beispiel wurde nebenstehende Bitmap extrahiert. Schritt 2 – Neuen Datenbereich in Binärdatei integrieren: In diesem Beispiel wurde die im Schritt 1 extrahierte Grafik verändert, bevor sie wieder in die Binärdatei integriert wird. In diesem Beispiel wurde darauf geachtet, dass die Größe der Datei mit der alten Datei exakt übereinstimmt. Integrieren des Austauschbereichs: Input Laden der alten Binärdatei (Extract-1.exe). Laden der Austauschdatei (new_Bitmap.bmp). Die Reihenfolge der Input-Dateien im Sammelfenster ist wichtig, da der letzte Eintrag den vorigen überschreibt. Function Wahl der Funktion Link serveral input files/data. Hier muss mit der Schaltfläche Allowed das Überschreiben erlaubt werden. Wahl der Funktion Convert to Binary. Output In der Dialogfläche Save from start address müssen keine weitere Einstellungen vorgenommen werden. Mit Execute werden die gewählten Dateien in eine neue Datei geschrieben. Da unter Function, Convert to Binary gewählt wurde, wird eine Binärdatei erzeugt. Ergebnis, dargestellt mit dem File Analyser. 2011.02 Seite 27 d-h4x49 HEXit Manual 4 9.3 Prüfsummenbildung (CRC) Über eine Datei soll eine Prüfsumme gebildet werden. Die Prüfsumme soll zusammen mit den Daten der Datei in eine neue Datei geschrieben werden. In diesem Beispiel belegt die Datei <source1.bin> den Adressbereich 0x0000 – 0xFFFD. Über diesen Bereich soll die CRC gebildet und dann in die Adressen 0xFFFE und 0xFFFF geschrieben werden. Vorgehensweise: Input-Bereich: Mit der Funktion Add Data des Input-Bereichs wird ein Datencluster mit der Größe von 64 k Byte (Adressbereich 0x0000 – 0xFFFF) mit dem Dateninhalt 0xFF generiert. Der Datencluster dient als Platzhalter für die Datei und die CRC. Functions-Bereich: Mit Link serveral input files/data des FunctionBereichs wird das Verbinden des Datenclusters mit der Beispieldatei <source1.bin> vorbereitet. Im Parameterfeld von serveral input files/data wird das Überschreiben von Daten mit Allowed zugelassen. Wichtig: Im Sammelfenster des Input-Bereiches muss der generierte Datencluster vor der Datei <source1.bin> stehen. Der Datencluster wird so von der Datei überschrieben. Output–Bereich File settings: Die Zieldatei wird über den gesamten Adressbereich 0x0000 – 0xFFFF gespeichert. Output–Bereich CRC settings: CRC-Berechnung wird aktiviert. In den Dialogflächen Calculate from start address und Calculate up to end address wird der zu berechnende CRC-Bereich eingegeben (0x0000 – 0xFFFD). In der Dialogfläche Write CRC to file, wird die Position eingegeben, ab der die CRC gespeichert werden soll (0xFFFE). Mit Execute wird der Vorgang ausgeführt. 2011.02 Seite 28 d-h4x49 HEXit Manual 4 9.4 Erzeugen einer Jump-Table mit dem Datengenerator Dieses Beispiel zeigt, dass mit der Funktion Add Data und den Parameter Fill pattern quasi ein lauffähiger Maschinencode erzeugt werden kann. Der in diesem Beispiel generierte Code erzeugt eine Jump-Table, die es ermöglicht, die Interrupt-Vektoren im RAM nutzen zu können, um z.B. die Applikation im RAM ausführen zu lassen. Dazu müssen die Interrupt-Vektoren vom Flash-Memory ins RAM weitergeleitet werden. Ein Jump-Table ermöglicht die Nutzung von Interrupt-Vektoren an einem anderen Adressbereich, als der vom Hersteller, der MCU, vorgegeben. Der hier beschriebene Jump-Table gilt für die Prozessorfamilie XC167. Der Befehl für die Interrupt-Vektoren lautet: JMPS <Segment> <Adresse>. Für die vollständige Sprung-Tabelle werden 128 aufeinander folgende Befehle benötigt. Jeder Befehl ist 4 Byte lang. Der OP-Code für JMPS lautet 0xFA. Das Segment ist 0xE0, weil bei diesem Prozessor im Segment 0xE0 das interne Programm-RAM liegt. Die Adresse wird nach jedem Sprungbefehl um 4 Byte erhöht. Der vollständiger Object code für den ersten Befehl lautet: 0xFA, 0xE0, 0x00, 0x00. Byte 3 ist das low-Byte des Sprungzieles und Byte 4 ist das high-Byte des Sprungzieles. Die Start-Adresse ist 0x0000, die Länge beträgt 128*4 Byte = 512 Byte daraus ergibt sich die Endadresse 0x1FF. Byte 0 und Byte 1 (FA und E0) sind Konstanten. Das Low-Byte wird erzeugt, indem der Adresszähler mit FC logisch UND verknüpft wird. Um das high-Byte der Adresse zu erhalten wird der Adresszähler 8 Bit nach rechts geschoben. Das Pattern lautet: FA E0 &FC >8. Der Datengenerator erzeugt den folgenden Datensatz: 2011.02 Seite 29 d-h4x49 HEXit Manual 4 10 Betriebsbedingungen zu HEXit BESCHRÄNKTE GEWÄHRLEISTUNG! Mit der Inbetriebnahme des Produktes HEXit und seiner Nebenprodukte erkennen Sie die nachfolgenden Bedingngen an. Falls Sie die Bedingungen nicht anerkennen können, teilen Sie uns das bitte innerhalb von zwei Tagen nach Erwerb von HEXit mit. BESCHRÄNKTE Garantie: hse-electronics GmbH garantiert für einen Zeitraum von 6 Monaten ab Empfangsdatum, dass das Produkt HEXit im Wesentlichen gemäß dem unserer Werbung arbeitet und bei normaler Benutzung frei von Fehlern ist. ANSPRÜCHE des Kunden: Die gesamte Haftung von hse-electronics GmbH und ihr alleiniger Anspruch besteht nach Wahl von hse-electronics GmbH entweder a) in der Rückerstattung des bezahlten Preises oder b) in der Nachbesserung bzw. dem Ersatz des Produktes. Diese beschränkte Garantie gilt nicht, wenn der Ausfall des Produkts auf einen Unfall, auf Missbrauch oder auf fehlerhafte Anwendung zurückzuführen ist. KEINE weitere Gewährleistung: hse-electronics GmbH schließt für sich jede weitere Gewährleistung bezüglich der gelieferten Produkte, der zugehörigen Handbücher und schriftlichen Materialien aus. KEINE Haftung für Folgeschäden: Weder hse-electronics GmbH noch die Lieferanten von hse-electronics GmbH sind für irgendwelche Schäden (uneingeschränkt eingeschlossen sind Schäden aus entgangenem Gewinn, Betriebsunterbrechung, Verlust von geschäftlichen Informationen oder von Daten oder aus anderem finanziellen Verlust) ersatzpflichtig, die aufgrund der Benutzung dieses hse-electronics GmbH- Produktes entstehen, selbst wenn hseelectronics GmbH von der Möglichkeit eines solchen Schadens unterrichtet worden ist. BESCHRÄNKTE Haftung: Die Haftung von hse-electronics GmbH ist in jedem Fall beschränkt auf den Betrag, den der Kunde tatsächlich für das Produkt bezahlt hat. Dieser Ausschluss gilt nicht für Schäden, die durch Vorsatz oder grobe Fahrlässigkeit auf Seiten von hse-electronics GmbH verursacht wurden. GERICHTSSTAND: Für Streitigkeiten aus diesem Lizenzvertrag ist das LG Kiel ausschließlich zuständig. Sollten Sie Fragen zu diesem Vertrag haben, so wenden Sie sich bitte an Ihren Händler oder schreiben Sie eine Email an [email protected]. Kiel, den 9.01.2011 2011.02 Seite 30 d-h4x49 HEXit Manual 4 11 HSE-Electronics Produkte 2011.02 Seite 31 d-h4x49