FLASHit 9- NXP ARM Cortex-M0/M3, ARM7 Manual
FLASHit 9- NXP ARM Cortex-M0/M3, ARM7 Manual FLASHit 9- NXP ARM Cortex-M0/M3, ARM7 Manual
FLASHit 9- NXP ARM Cortex-M0/M3, ARM7 Manual FFL Das FLASH- Programmier- Tool zur komfortablen Programmierung von Anwendersoftware in ein NXP ARM Cortex M3/M0 und ARM7 System 11-08 Seite 1 2011-08-d-flashit-manual-NXP-04.docx
- Seite 2 und 3: FLASHit 9- NXP ARM Cortex-M0/M3, AR
- Seite 4 und 5: FLASHit 9- NXP ARM Cortex-M0/M3, AR
- Seite 6 und 7: FLASHit 9- NXP ARM Cortex-M0/M3, AR
- Seite 8 und 9: FLASHit 9- NXP ARM Cortex-M0/M3, AR
- Seite 10 und 11: FLASHit 9- NXP ARM Cortex-M0/M3, AR
- Seite 12 und 13: FLASHit 9- NXP ARM Cortex-M0/M3, AR
- Seite 14 und 15: FLASHit 9- NXP ARM Cortex-M0/M3, AR
- Seite 16 und 17: FLASHit 9- NXP ARM Cortex-M0/M3, AR
- Seite 18 und 19: FLASHit 9- NXP ARM Cortex-M0/M3, AR
- Seite 20 und 21: FLASHit 9- NXP ARM Cortex-M0/M3, AR
- Seite 22 und 23: FLASHit 9- NXP ARM Cortex-M0/M3, AR
- Seite 24 und 25: FLASHit 9- NXP ARM Cortex-M0/M3, AR
- Seite 26 und 27: FLASHit 9- NXP ARM Cortex-M0/M3, AR
- Seite 28 und 29: FLASHit 9- NXP ARM Cortex-M0/M3, AR
- Seite 30 und 31: FLASHit 9- NXP ARM Cortex-M0/M3, AR
- Seite 32 und 33: FLASHit 9- NXP ARM Cortex-M0/M3, AR
- Seite 34 und 35: FLASHit 9- NXP ARM Cortex-M0/M3, AR
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
FFL<br />
Das FLASH- Programmier- Tool<br />
zur komfortablen Programmierung von Anwendersoftware in ein<br />
<strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong> <strong>M3</strong>/<strong>M0</strong> und <strong>ARM</strong>7 System<br />
11-08 Seite 1 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
BESCHRÄNKTE GEWÄHRLEISTUNG!<br />
Mit der Inbetriebnahme des Produktes <strong>FLASHit</strong> und seiner Nebenprodukte erkennen Sie die<br />
nachfolgenden Bedingungen an.<br />
Falls Sie die Bedingungen nicht anerkennen können, teilen Sie uns das bitte innerhalb von<br />
zwei Tagen nach Erwerb von <strong>FLASHit</strong> mit.<br />
BESCHRÄNKTE Garantie:<br />
hse-electronics garantiert für einen Zeitraum von 6 Monaten ab Empfangsdatum, dass das<br />
Produkt <strong>FLASHit</strong> im Wesentlichen gemäß unserer Werbung arbeitet und bei normaler Benutzung<br />
frei von Fehlern ist.<br />
ANSPRÜCHE des Kunden:<br />
Die gesamte Haftung von hse-electronics und Ihr alleiniger Anspruch besteht nach Wahl von<br />
hse-electronics entweder<br />
a) in der Rückerstattung des bezahlten Preises oder<br />
b) in der Nachbesserung bzw. dem Ersatz des Produktes.<br />
Diese beschränkte Garantie gilt nicht, wenn der Ausfall des Produkts auf einen Unfall, auf<br />
Missbrauch oder auf fehlerhafte Anwendung zurückzuführen ist.<br />
KEINE weitere Gewährleistung:<br />
hse-electronics schließt für sich jede weitere Gewährleistung bezüglich der gelieferten Produkte,<br />
der zugehörigen Handbücher und schriftlichen Materialien aus.<br />
KEINE Haftung für Folgeschäden:<br />
Weder hse-electronics noch die Lieferanten von hse-electronics sind für irgendwelche Schäden<br />
(uneingeschränkt eingeschlossen sind Schäden aus entgangenem Gewinn,<br />
Betriebsunterbrechung, Verlust von geschäftlichen Informationen oder von Daten oder aus<br />
anderem finanziellen Verlust) ersatzpflichtig, die aufgrund der Benutzung dieses hse-electronics-<br />
Produktes entstehen, selbst wenn hse-electronics von der Möglichkeit eines solchen Schadens<br />
unterrichtet worden ist.<br />
BESCHRÄNKTE Haftung:<br />
Die Haftung von hse-electronics ist in jedem Fall beschränkt auf den Betrag, den der Kunde<br />
tatsächlich für das Produkt bezahlt hat. Dieser Ausschluss gilt nicht für Schäden, die durch Vorsatz<br />
oder grobe Fahrlässigkeit aufseiten von hse-electronics verursacht wurden.<br />
GERICHTSSTAND:<br />
Für Streitigkeiten aus diesem Lizenzvertrag ist das LG Kiel ausschließlich zuständig.<br />
Sollten Sie Fragen zu diesem Vertrag haben, wenden Sie sich bitte an Ihren Händler oder<br />
schreiben Sie eine E-Mail an info@hse-electronics.com.<br />
Kiel, den 9.07.2007<br />
11-08 Seite 2 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
Inhaltsverzeichnis<br />
1 <strong>FLASHit</strong> .................................................................................................................................................................... 4<br />
1.1 <strong>FLASHit</strong> ............................................................................................................................................................. 4<br />
1.2 Wie funktioniert <strong>FLASHit</strong>? ................................................................................................................................. 4<br />
2 Systemanforderungen ........................................................................................................................................... 4<br />
3 Programm-Installation und Registrierung ........................................................................................................... 5<br />
3.1 Installation ......................................................................................................................................................... 5<br />
3.2 Registrierung ..................................................................................................................................................... 5<br />
4 Programmfunktionen ............................................................................................................................................. 6<br />
4.1 Verbindung herstellen ....................................................................................................................................... 6<br />
4.2 Baudrate einstellen ............................................................................................................................................ 6<br />
4.3 <strong>FLASHit</strong>-Arbeitsverzeichnis ............................................................................................................................... 6<br />
4.4 Experten- oder Expressmodus .......................................................................................................................... 7<br />
4.5 Upload in das Zielsystem („FLASH brennen“) .................................................................................................. 8<br />
4.6 HEX oder BIN? .................................................................................................................................................. 9<br />
4.7 FLASH-Speicher-Infos ...................................................................................................................................... 9<br />
4.8 Informationen über unterstützte FLASH-Speicher .......................................................................................... 10<br />
4.9 Upload in das RAM des Targets ..................................................................................................................... 10<br />
4.10 Zielsystem-Infos .............................................................................................................................................. 11<br />
4.11 Konfiguration von <strong>FLASHit</strong> – Target System (Zielsystem) .............................................................................. 11<br />
4.12 Konfiguration von <strong>FLASHit</strong> - Programmiersequenz ........................................................................................ 12<br />
5 Spezialfunktionen ................................................................................................................................................. 14<br />
5.1 FLASH-Speicher auslesen .............................................................................................................................. 14<br />
5.2 Inhalt einzelner Adressen auslesen ................................................................................................................ 15<br />
5.3 Checksumme generieren ................................................................................................................................ 15<br />
5.4 Debug-Logfile speichern ................................................................................................................................. 15<br />
5.5 Software-Reset auslösen ................................................................................................................................ 15<br />
5.6 Hardware-Reset auslösen ............................................................................................................................... 16<br />
5.7 Kommandozeilen-Funktionen .......................................................................................................................... 17<br />
Prioritäten in der <strong>FLASHit</strong>-Konfiguration ................................................................................................................ 17<br />
5.8 Konfiguration laden oder speichern................................................................................................................. 17<br />
6 Das <strong>FLASHit</strong>-Paket ............................................................................................................................................... 18<br />
6.1 RS232-Terminal .............................................................................................................................................. 18<br />
6.2 CRC-Builder .................................................................................................................................................... 20<br />
6.3 IO-Check ......................................................................................................................................................... 21<br />
6.4 Kommandozeilen-Generator (CmdLine) ......................................................................................................... 23<br />
7 Anhang .................................................................................................................................................................. 25<br />
7.1 Statusmeldungen (Errorcodes) ....................................................................................................................... 25<br />
7.2 Unterstützte Controller (Auszug): .................................................................................................................... 29<br />
7.3 Kommandozeilen-Funktionen im Überblick ..................................................................................................... 30<br />
7.4 Sourcen der Prüfsummen-Funktion ................................................................................................................ 32<br />
7.5 Reset- und Bootstrap-Signale ......................................................................................................................... 33<br />
7.6 Reset- und Bootstrap-Interface ....................................................................................................................... 33<br />
8 HEXit das HEX-File Analyse-Tool ....................................................................................................................... 34<br />
9 Project Engineering .............................................................................................................................................. 35<br />
11-08 Seite 3 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
1 <strong>FLASHit</strong><br />
1.1 <strong>FLASHit</strong><br />
<strong>FLASHit</strong> ermöglicht die problemlose und schnelle Programmierung von Anwendersoftware in ein<br />
<strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7-Zielsystem.<br />
1.2 Wie funktioniert <strong>FLASHit</strong>?<br />
<strong>FLASHit</strong> wurde für eine einfache Bedienung konzipiert. Nachdem eine Verbindung über die RS232-Schnittstelle zur<br />
Hardware hergestellt wurde und die Schnittstellen-Parameter eingestellt wurden muss lediglich eine Applikation<br />
ausgewählt werden und der Upload- bzw. der Programmier-Vorgang (das Brennen) in das Zielsystem kann beginnen.<br />
Dies geschieht folgendermaßen (ohne aktivierte Optionen):<br />
Bootstraploaders des Zielsystems aktivieren<br />
Konfiguration des Zielsystems ermitteln<br />
Automatisch den verwendeten MCU-Typ erkennen<br />
MCU-Typ-Daten aus der Datenbank von <strong>FLASHit</strong> auslesen<br />
Daten der MCU anzeigen<br />
Analyse des Hexfiles: Zu löschende Sektoren erkennen, markieren und Hexdaten in einem binären Array<br />
sortieren<br />
FLASH-Speicher löschen (einzelne Sektoren oder ganzen Chip)<br />
FLASH im Zielsystem blockweise neu programmieren (programmierte Sektoren markieren).<br />
Auf Wunsch wird <strong>FLASHit</strong> speziellen Bedürfnissen angepasst!<br />
2 Systemanforderungen<br />
Zielsystem<br />
MCU:<br />
<strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7<br />
PC<br />
Betriebssystem: alle gängigen Windowsversionen bis Windows 7<br />
Hardware:<br />
ab Pentium<br />
11-08 Seite 4 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
3 Programm-Installation und Registrierung<br />
3.1 Installation<br />
Sie haben eine CD erhalten:<br />
Legen Sie die Programm-CD in das CD-ROM-Laufwerk des PCs ein.<br />
Folgen Sie den Anweisungen auf dem Bildschirm.<br />
Sie haben <strong>FLASHit</strong> von der hse-electronics-Website geladen:<br />
Starten Sie setupflashit_<strong>NXP</strong>.exe.<br />
Folgen Sie den Anweisungen auf dem Bildschirm.<br />
3.2 Registrierung<br />
Zwei Lizenzierungsverfahren sind möglich:<br />
1. PC-gebundene Lizenzierung<br />
2. USB-Dongle-gebundene Lizenzierung<br />
Nachdem <strong>FLASHit</strong> das erste Mal gestartet wurde, muss<br />
<strong>FLASHit</strong> im Menü Help/Registration registriert werden<br />
(andernfalls befindet sich <strong>FLASHit</strong> im eingeschränkten<br />
Demomodus). Wurde <strong>FLASHit</strong> mit einem Dongle geliefert,<br />
können die folgenden Schritte übersprungen werden.<br />
Stecken Sie den Dongle in einen USB-Port, und <strong>FLASHit</strong> ist<br />
freigeschaltet.<br />
Die Registrierung von <strong>FLASHit</strong> erfolgt in zwei Schritten:<br />
Schritt 1:<br />
Führen Sie diesen Schritt auf dem Computer durch, für den<br />
<strong>FLASHit</strong> registriert werden soll!<br />
Klicken Sie auf Build registration data.<br />
<strong>FLASHit</strong> hat Ihre persönliche System-Id erzeugt.<br />
Ergänzen Sie die mit einem „*“ gekennzeichneten Felder.<br />
Senden Sie uns jetzt Ihre Daten zu. Dazu haben Sie zwei<br />
Möglichkeiten: Sie können Ihre Registrierungsdaten via E-<br />
Mail (Build mail...) an uns senden oder via Fax, indem Sie<br />
die Daten ausdrucken (Print...).<br />
- Sie erhalten postwendend Ihren Freischalt-Code (via E-<br />
Mail oder Fax) von uns.<br />
Schritt 2:<br />
- Geben Sie den Freischalt-Code unter<br />
Enter licence key: ein.<br />
- Klicken Sie auf Enable licence.<br />
- Wenn die Meldung Licence is enabled angezeigt wird<br />
(auf grünem Feld), wurde <strong>FLASHit</strong> erfolgreich registriert.<br />
Bei Fragen zur Registrierung senden Sie uns eine<br />
E-Mail: info@hse-electronics.com.<br />
Hinweis: Falls Sie einen neuen Freischalt-Code benötigen, weil sich Ihre Hardware oder sonstige Bedingungen<br />
geändert haben, genügt eine kurze E-Mail mit der Angabe der alten Lizenznummer, und Sie erhalten eine<br />
neue Nummer.<br />
11-08 Seite 5 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
4 Programmfunktionen<br />
4.1 Verbindung herstellen<br />
- Verbinden Sie Ihr Zielsystem über die serielle Schnittstelle<br />
mit dem PC.<br />
- Wählen Sie über das Menü Setup den gewünschten COM-<br />
Port. Es werden die ersten 10 installierten COM-Devices<br />
zur Auswahl angeboten, deren COM-Nummer kann<br />
zwischen 1 und 99 liegen.<br />
Hinweis: Unter Verwendung eines USB-RS232-Adapters kann <strong>FLASHit</strong> auch über eine USB-Schnittstelle betrieben<br />
werden. Alle fett markierten Einstelloptionen sind Default-Einstellungen bzw. Empfehlungen.<br />
4.2 Baudrate einstellen<br />
Die einstellbare Baudrate zwischen Zielsystem und PC ist u.<br />
a. davon abhängig, unter welcher Taktfrequenz das<br />
Zielsystem läuft (teilbar durch eine Standard-Baudrate).<br />
Probieren Sie einfach verschiedene Baudraten aus.<br />
Wählen Sie über das Menü Baudrate die gewünschte<br />
Baudrate aus.<br />
4.3 <strong>FLASHit</strong>-Arbeitsverzeichnis<br />
<strong>FLASHit</strong> legt während einer Arbeitssitzung mehrere Dateien an:<br />
Flashit_<strong>NXP</strong>.ini // Programmeinstellungen<br />
result.txt<br />
// Rückgabewerte<br />
Diese Dateien werden standardmäßig, abhängig von der Windowsversion (hier WinXP), in dem von Windows<br />
zugewiesenen Verzeichnis abgelegt.<br />
(Z. B.: c:\Documents and Settings\All Users\Applications Datas\<strong>FLASHit</strong>\*.*.)<br />
Windows muss das Erstellen und Schreiben von Dateien in diesem Verzeichnis zulassen!<br />
Sie können auch ein anderes Arbeitsverzeichnis wählen (dieses muss zuvor angelegt worden sein).<br />
Gehen Sie folgendermaßen vor:<br />
- Rufen Sie über das Kontextmenü den Eigenschaftendialog auf, und wählen Sie die Registerkarte Verknüpfung.<br />
- Tragen Sie im Eingabefeld Ziel Folgendes ein (Beispiel):<br />
c:\programme\flashit_<strong>NXP</strong>.exe WORK_DIR=j:\ini<br />
Ergebnis:<br />
Nach einem Doppelklick auf das <strong>FLASHit</strong>-Icon wird <strong>FLASHit</strong> gestartet, und die Dateien werden im<br />
Verzeichnis „j:\ini“ abgespeichert.<br />
Wird der Pfadname in Anführungszeichen gesetzt, sind auch Leerzeichen erlaubt (Beispiel):<br />
c:\program files\flashit_<strong>NXP</strong>.exe WORK_DIR=“c:\Program Files\<strong>FLASHit</strong>“<br />
Unter dem Menü Setup/Work dir... kann der eingestellte<br />
Pfad überprüft werden.<br />
11-08 Seite 6 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
4.4 Experten- oder Expressmodus<br />
Unter dem Menü Setup/Expert mode und Setup/Express<br />
mode kann zwischen einer vereinfachten oder der<br />
„kompletten“ Programmoberfläche von <strong>FLASHit</strong> gewählt<br />
werden.<br />
<strong>FLASHit</strong> „merkt“ sich die letzten Einstellungen für einen<br />
Neustart<br />
„Expert mode“ (Default)<br />
Vereinfachte Programmoberfläche von <strong>FLASHit</strong>: „Express<br />
mode“<br />
11-08 Seite 7 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
4.5 Upload in das Zielsystem („FLASH brennen“)<br />
Die wichtigsten Programmeinstellungen sind jetzt unter den Punkten 4.1 und 4.2 vorgenommen worden, so dass mit<br />
einem Upload der Anwendersoftware in das Zielsystem begonnen werden kann.<br />
Über die Registerkarte UploadFile kann eine Datei (*.hex<br />
oder *.s19) ausgewählt werden. Im Fenster<br />
File-Info werden Informationen zur Datei angezeigt. Mit<br />
einem Mausklick auf das blaue Feld Upload unten rechts<br />
kann mit dem Upload in das FLASH begonnen werden.<br />
Alle anderen Einstellungen, die nachfolgend beschrieben<br />
werden, versucht <strong>FLASHit</strong> nun automatisch vorzunehmen.<br />
Während des Uploads schaltet <strong>FLASHit</strong> auf die<br />
Registerkarte FlashMem und zeigt die Daten des<br />
verwendeten FLASH-Speichers an (FLASH-Typ, Hersteller<br />
sowie die Speichergröße und die Anzahl der Sektoren). Im<br />
Status-Fenster wird der Upload-Vorgang protokolliert.<br />
Der Upload kann jederzeit unterbrochen werden durch einen<br />
Klick auf Cancel.<br />
Nach einem erfolgreichen Upload färbt sich das<br />
Statusfenster grün.<br />
Wenn sich das Statusfenster rot färbt, ist der Upload<br />
fehlgeschlagen.<br />
Die mögliche Ursache für ein Scheitern des Uploads kann<br />
über das Status-Fenster ermittelt werden.<br />
Eine Auflistung der Errorcodes befindet sich im Anhang.<br />
Hinweis: Falls <strong>FLASHit</strong> vor dem Upload-Vorgang Ihr Zielsystem nicht automatisch zurücksetzen konnte, kommt die<br />
Aufforderung, das Zielsystem zurückzusetzen. Der „Bootstrap“-Modus muss hierfür aktiviert sein (BOOT1<br />
auf High). Lange Upload-Dateinamen werden im oberen Fenster von <strong>FLASHit</strong> aus Platzgründen gekürzt<br />
dargestellt. Der volle Pfad wird gezeigt, wenn der Mauszeiger auf das Panel gesetzt wird.<br />
11-08 Seite 8 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
4.6 HEX oder BIN?<br />
Mit <strong>FLASHit</strong> können neben Intel-HEX-Dateien (*.hex) oder Motorola-HEX-Dateien (*.s19) auch Binärdateien in den<br />
FLASH-Speicher des Zielsystems geschrieben werden.<br />
Dazu muss unter Config/Target and program<br />
configuration die Option Programming file into<br />
flash/Load Bin markiert sein. <strong>FLASHit</strong> wird bei dieser<br />
Einstellung, die in das FLASH zu speichernde Datei nicht<br />
mehr interpretieren. Auch Intel-HEX-Dateien (oder s19-<br />
Dateien) werden jetzt nicht (!) als HEX-Dateien behandelt,<br />
sondern als Binärdateien!<br />
Die Startadresse im Zielsystem, an der die Binärdatei<br />
gespeichert werden soll, kann hier ebenfalls eingestellt<br />
werden.<br />
Ist die Option Programming file into flash/Load Hex markiert, kann keine Binärdatei in das Target gespeichert<br />
werden, da sie die Intel-HEX-Struktur nicht aufweist.<br />
Ist die Option Programming file into flash/Load Bin markiert und es wird eine HEX-Datei zum Speichern in den<br />
FLASH-Speicher angewählt, fragt <strong>FLASHit</strong> nach, ob dies auch wirklich beabsichtigt ist.<br />
4.7 FLASH-Speicher-Infos<br />
Unabhängig davon, ob ein Upload vorgenommen wurde oder nicht, werden über die Schaltfläche Analysis auf der<br />
Registerkarte FlashMem folgende Informationen über den verwendeten FLASH-Typ angezeigt:<br />
- MCU-Typ (Type),<br />
- Hersteller (Producer),<br />
- Speicher-Größe (Size),<br />
- Anzahl der Sektoren (Sectors),<br />
- Position des FLASH-Speichers (Place)<br />
- FLASH-Code (Code) sowie<br />
- Aufteilung und Größe der einzelnen Sektoren.<br />
Der verwendete MCU-Typ wird von <strong>FLASHit</strong> automatisch<br />
erkannt. Ein Auszug der zurzeit unterstützten Typen ist<br />
unter Menüpunkt Help/FLASH types zu finden.<br />
Auf unserer Website www.hse-electronics.com können die<br />
unterstützten MCU-Typen eingesehen werden.<br />
Mit Chip-Erase und Sector-Erase kann an dieser Stelle<br />
unabhängig von einem Programm-Upload der<br />
FLASH-Speicher komplett oder sektorweise, durch<br />
Markieren der Sektoren mit der Maus, gelöscht werden.<br />
11-08 Seite 9 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
4.8 Informationen über unterstützte FLASH-Speicher<br />
Unter dem Menü Help/Flash types... kann in die komplette<br />
MCU-Datenbank von <strong>FLASHit</strong> Einsicht genommen werden.<br />
Sollte die gewünschte MCU nicht dabei sein, kann hse den<br />
entsprechenden Baustein evtl. schnell einpflegen.<br />
<strong>FLASHit</strong> bietet mit dieser Funktion Hilfe auf der Suche nach<br />
einer geeigneten MCU an.<br />
Unter View Filter können Kriterien für die Suche<br />
eingegeben werden (Hersteller, Bezeichnung und FLASH-<br />
Größe).<br />
Alle Sektoren des FLASHes werden grafisch dargestellt.<br />
Wird ein Sektor mit der Maus markiert, werden Nummer,<br />
Größe, Start- und Endadresse des Sektors angegeben.<br />
4.9 Upload in das RAM des Targets<br />
Mit der Funktion RAM-Upload kann der Inhalt einer Datei in<br />
das RAM des Zielsystems übertragen werden. Die<br />
Dateiformate Hex und Binär werden unterstützt.<br />
Die Auswahl der RAM-Upload-Datei erfolgt im Dialog<br />
File/Upload file into RAM. Diese Datei-Auswahl ist<br />
unabhängig von der Auswahl der FLASH-Upload-Datei. Die<br />
Fenster Base address und Top address zeigen die<br />
entsprechenden Daten der Upload-Datei an. Abhängig vom<br />
jeweiligen Zielsystem kann es notwendig sein, die Basis-<br />
Adresse anzupassen.<br />
Mit User defined kann eine neue Basis-Adresse<br />
vorgegeben werden. Die Top-Adresse wird automatisch neu<br />
berechnet (Top address).<br />
In diesem Beispiel ist die Basis-Adresse der Upload-Datei<br />
0x20000200 Es wird die neue Basis-Adresse 0x20000000<br />
unter User defined eingestellt, damit die Daten im RAM<br />
platziert werden können.<br />
11-08 Seite 10 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
4.10 Zielsystem-Infos<br />
Durch Betätigen des Schalters Get info werden auf der Registerkarte Target CPU Informationen über das Zielsystem<br />
angezeigt.<br />
Processor: Ziel-CPU-Typ;<br />
RAM:<br />
Größe des RAM der MCU<br />
FLASH: Größe des FLASH-Speichers der MCU<br />
Bootloader: Version des internen Bootloaders<br />
MANUF: Hersteller<br />
IDCHIP: MCU ID code<br />
Device ID(H): Unique device ID register (96 bits)<br />
Device ID(L): Unique device ID register (96 bits)<br />
FLASH content: Die ersten 24 Bytes des FLASH-<br />
Speichers werden im Fenster Flash<br />
content angezeigt.<br />
4.11 Konfiguration von <strong>FLASHit</strong> – Target System (Zielsystem)<br />
Obwohl <strong>FLASHit</strong> den größten Teil der benötigten Daten selbst ermittelt, kann es vorkommen, dass eine Reihe von<br />
Parametern manuell eingestellt werden müssen.<br />
Über das Menü<br />
Config/Target and program configuration und die<br />
Registerkarte Target System können diverse Einstellungen<br />
zum Zielsystem vorgenommen werden.<br />
Target CPU<br />
<strong>FLASHit</strong> erkennt in der Regel die Ziel-CPU automatisch.<br />
Ist Target Reset/Automatic gewählt, versucht <strong>FLASHit</strong>, das<br />
Target automatisch zurückzusetzen.<br />
Mit User defined kann das Resetverhalten von <strong>FLASHit</strong><br />
manuell eingestellt werden (Define).<br />
Flash memory<br />
<strong>FLASHit</strong> unterstützt in dieser Version nur die<br />
OnChipFLASH-Speicher der <strong>NXP</strong>Controller<br />
Basic address:<br />
Die Basis-Adresse des FLASH-Speichers definiert die<br />
Adresse, an der <strong>FLASHit</strong> den FLASH-Speicher verwendet.<br />
Normalerweise ist diese Adresse = 0x00000000<br />
11-08 Seite 11 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
4.12 Konfiguration von <strong>FLASHit</strong> - Programmiersequenz<br />
Über das Menü Config/Target and program configuration und die Registerkarte Program sequence können<br />
Einstellungen zum Programmierablauf vorgenommen werden. <strong>FLASHit</strong> arbeitet die Parameter 0p bis 8 sequentiell ab.<br />
Die mit fetter Schrift im Configuration-Fenster gekennzeichneten Parameter sind die „<strong>FLASHit</strong>-Default-<br />
Einstellungen“.<br />
0r. Ram Upload<br />
Mit der Option Ram Upload wird eine ausgewählte Datei in<br />
das interne RAM der MCU geladen.<br />
1. Erasing Flash<br />
Hier kann zwischen dem Chip-Erase-Modus (der FLASH-<br />
Speicher wird vor dem Download komplett gelöscht) und<br />
dem Sector-Erase-Modus gewählt werden. Im Sector-<br />
Erase-Modus analysiert <strong>FLASHit</strong> die HEX-Datei, die in das<br />
Zielsystem geladen werden soll. Dabei werden nur die<br />
Sektoren gelöscht, in denen das Programm gespeichert<br />
werden soll. Ist die Option Erase Flash nicht markiert, wird<br />
der FLASH-Speicher vor dem Download nicht gelöscht. Dies<br />
ist sinnvoll für den Fall, dass mehrere HEX-Files<br />
hintereinander zu speichern sind. Die Option Ask before<br />
erase löst (nur bei Sector-Erase) vor dem Löschen des<br />
FLASH-Speichers eine Nachfrage aus.<br />
2. Programming file into flash<br />
Diese Option muss angewählt sein, um eine Datei in den<br />
FLASH-Speicher des Zielsystems zu übertragen.<br />
Mit <strong>FLASHit</strong> können neben HEX-Dateien (*.hex / *s19) auch<br />
Binärdateien in den FLASH-Speicher des Zielsystems<br />
geschrieben werden.<br />
Dazu muss unter Config/Target and program configuration die Option Program file into flash/Load Bin markiert<br />
sein. <strong>FLASHit</strong> wird bei dieser Einstellung die in das FLASH zu speichernde Datei nicht mehr interpretieren. HEX-<br />
Dateien werden jetzt nicht (!) mehr als HEX-Datei behandelt, sondern als Binärdateien! Mit dieser Option besteht<br />
z. B. die Möglichkeit, Daten, die aus einem Zielsystem ausgelesen wurden, oder Bitmaps, Textdateien usw. in ein<br />
Zielsystem zu „flashen“.<br />
Die Startadresse im Zielsystem, an der die Binärdatei gespeichert werden soll, kann hier ebenfalls eingestellt werden.<br />
3a. Build checksum (CRC)<br />
Mit der Option Build Checksum kann <strong>FLASHit</strong> veranlasst werden, über den Inhalt des FLASH-Speichers eine<br />
Prüfsumme zu bilden.<br />
Im Bereich „Calculation area of checksum“ können die Adressbereiche, über die die Prüfsumme gebildet werden soll,<br />
eingestellt werden.<br />
ADD32 (Add Bytes) benötigt ca. 2 Sec/256 Kbyte (niedrige Sicherheitsstufe).<br />
CRC16 (Cyclic Redundancy Check) benötigt ca. 16 Sec/256 Kbyte (höchste Sicherheitsstufe). Da sich der<br />
Systembereich im linearen Adressraum befindet (rotes Feld), muss dieser Bereich bei der Checksummenbildung<br />
ausgeblendet werden.<br />
Hinweis: In Anhang 7.4 Sourcen der Prüfsummen-Funktion werden die verwendeten Verfahren dargestellt.<br />
3b. Compare checksum with<br />
Vergleich einer festen Prüfsumme mit der ermittelten Prüfsumme oder mit einer über den Uploadfile erstellten CRC.<br />
Ferner kann ein CRC-Check über einen bestimmten Bereich des Uploadfiles vorgenommen werden<br />
(Upload file area).<br />
11-08 Seite 12 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
4. Write dword (32 Bit)<br />
Durch Auswahl dieser Option besteht die Möglichkeit, in die<br />
einstellbare Adresse des FLASH-Speichers ein „dword“<br />
(4 Byte) zu schreiben. Dafür muss die gewählte Adresse<br />
des FLASH-Speichers vor dem Beschreiben gelöscht<br />
werden.<br />
5a. Write User serial number into flash<br />
Hier kann <strong>FLASHit</strong> veranlasst werden, automatisch eine<br />
Seriennummer zu generieren und an eine festgelegte<br />
Adresse (At address) zu speichern. In den Eingabefeldern<br />
Prefix und Number wird entschieden, wie die<br />
Seriennummer aussieht. Mit der Option Increment... wird<br />
festgelegt, ob bei jedem erfolgreichen Speichern der<br />
Seriennummer das Feld Number um 1 erhöht<br />
(inkrementiert) wird. In den beiden Vorschaufeldern wird<br />
angezeigt, wie die folgenden Nummern aussehen. Ist die<br />
Option Write number into logfile markiert, werden alle<br />
vergebenen Seriennummern in einer<br />
Log-Datei abgespeichert. Der Name für die Log-Datei setzt<br />
sich aus dem Präfix der Seriennummer und dem Anhang<br />
*.txt zusammen (z. B.: hse1.txt).<br />
5b.Increment number after successful writing<br />
5c. Write number into logfile<br />
6. Reset target<br />
Mit der Option Software reset wird im Zielsystem ein Software-Reset nach dem Download ausgelöst. Mit der Option<br />
Hardware reset erzeugt <strong>FLASHit</strong> auf der DTR-Leitung der COM-Schnittstelle ein „Bootstrap-Signal“ und auf der RTS-<br />
Leitung ein „Reset-Signal“ (siehe 7.5). Dadurch besteht die Möglichkeit, das Zielsystem zurückzusetzen und in den<br />
Bootstrap-Modus zu schalten, wenn dies auf der Zielhardware entsprechend berücksichtigt wurde (siehe 7.5 und 7.6).<br />
7. Start RS232 Terminal<br />
Mit der Option Start RS232 Terminal wird nach einem Reset des Zielsystems ein Terminalprogramm gestartet, das<br />
die Daten, die Ihre Applikation über die RS232-Schnittstelle überträgt, anzeigt (die richtige Baudrate muss eingestellt<br />
sein!): Rx term Minimal-Terminalprogramm im Statusfenster<br />
Smal term Externes Terminalprogramm (hse-Tool)<br />
Ext. term Externes Terminalprogramm<br />
8. Exit <strong>FLASHit</strong> after upload sequence<br />
Mit dieser Option wird festgelegt, ob und wie <strong>FLASHit</strong> nach einem Upload automatisch beendet wird.<br />
Konfigurationsdaten Laden oder Speichern<br />
Unter dem Menü File/Open configuration können vorher<br />
gespeicherte Einstellungen geladen,<br />
unter Save configuration gespeichert und<br />
unter Save configuration as... mit einem neuen Namen<br />
versehen werden.<br />
11-08 Seite 13 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
5 Spezialfunktionen<br />
<strong>FLASHit</strong> bietet über den Menüpunkt Special Functions eine Reihe von zusätzlichen Tools.<br />
5.1 FLASH-Speicher auslesen<br />
FLASH-Speicher auslesen und wahlweise in eine *.bin- oder<br />
*.hex-Datei abspeichern<br />
Size:<br />
Anzeige der Größe des FLASH-Speichers<br />
top address:<br />
Anzeige der obersten Speicheradresse des gewählten<br />
FLASH-Speichers<br />
end address<br />
Auslese-Endadresse<br />
start address:<br />
Auslese-Startadresse<br />
11-08 Seite 14 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
5.2 Inhalt einzelner Adressen auslesen<br />
Über die Auswahl<br />
Target-memory viewer können einzelne Adressen aus<br />
dem internen FLASH-Baustein der MCU ausgelesen<br />
werden.<br />
Wenn der Marker add address by 16 gesetzt ist, werden<br />
nach jedem Betätigen des Schalters Read from target die<br />
je darauf folgenden Bytes angezeigt.<br />
Mit Erase view window wird die Anzeige gelöscht (nicht die<br />
Daten im FLASH-Speicher!).<br />
5.3 Checksumme generieren<br />
Gemäß den Einstellungen, die unter dem Menü<br />
Config/Target and program configuration auf der<br />
Registerkarte Program sequence vorgenommen wurden,<br />
kann unter diesem Menüpunkt die entsprechende<br />
Prüfsumme ermittelt werden.<br />
5.4 Debug-Logfile speichern<br />
5.5 Software-Reset auslösen<br />
<strong>FLASHit</strong> logt während einer Session „Debug-Infos“ mit. Bei<br />
einem Fehler werden die Log-Daten automatisch in die<br />
Datei debugmemo.txt nach dem Beenden von <strong>FLASHit</strong><br />
gespeichert.<br />
Mit der Auswahl des Menüs<br />
Special Function/Save debug logfile as... werden die<br />
geloggten Daten in ein beliebiges Verzeichnis gespeichert<br />
(für den Fall, dass kein Fehler entstanden ist). Anhand<br />
dieser Log-Datei ist eine genaue Fehleranalyse möglich.<br />
Hier kann im Zielsystem mittels des Softwarebefehls<br />
(Go_CMD) ein „Softwarereset“ ausgelöst werden.<br />
Hinweis: Der Software-Reset kann nicht zur Kontaktaufnahme (Booten) des Targets verwendet werden! Er kann nach<br />
dem Upload eine Applikation im Target starten.<br />
11-08 Seite 15 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
5.6 Hardware-Reset auslösen<br />
Mit der Auswahl des Menüpunktes<br />
Generate hardware reset... erzeugt <strong>FLASHit</strong> auf der<br />
DTR-Leitung der COM-Schnittstelle ein „Bootstrap-Signal“<br />
und auf der RTS-Leitung ein „Reset-Signal“ (siehe 7.5).<br />
Dadurch besteht die Möglichkeit, das Zielsystem<br />
zurückzusetzen und in den Bootstrap-Modus zu schalten,<br />
wenn dies auf der Ziel-Hardware entsprechend<br />
berücksichtigt wurde (siehe 7.5 und 7.6).<br />
Im Dialog Hardware Reset kann die Form des Reset-<br />
Impulses angepasst werden.<br />
Die hier vorgenommenen Einstellungen haben jedoch<br />
keinen Einfluss auf die automatischen Reset-Mechanismen<br />
von <strong>FLASHit</strong>.<br />
11-08 Seite 16 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
5.7 Kommandozeilen-Funktionen<br />
Die Funktionalität von <strong>FLASHit</strong> kann komplett von außen über Kommandozeilen-Parameter (Skripte) gesteuert<br />
werden. Auf Groß- und Kleinschreibung muss geachtet werden! Mit dem Tool CmdLine<br />
(siehe 6.4 Kommandozeilen-Generator CmdLine) können die entsprechenden Skripte automatisch erzeugt werden.<br />
Es besteht somit die Möglichkeit, mit den Kommandozeilen <strong>FLASHit</strong> aus einer eigenen Applikation heraus aufzurufen<br />
und zu steuern, wobei die Desktop-Oberfläche abgeschaltet werden kann.<br />
Beispiel:<br />
1. Über ein Icon auf dem Windows-Desktop soll <strong>FLASHit</strong> gestartet werden.<br />
2. Eine bestimmte Datei soll geladen werden.<br />
3. Baudrate und COM-Port sollen festgelegt sein.<br />
4. Die Datei soll in den FLASH-Speicher des Zielsytems programmiert werden.<br />
5. Nach erfolgreichem Upload beendet sich <strong>FLASHit</strong> selbst.<br />
Gehen Sie folgendermaßen vor:<br />
- Legen Sie eine neue <strong>FLASHit</strong>-Verknüpfung auf dem Windows-Desktop an.<br />
- Benennen Sie das neu angelegte Icon, z. B. out.hex.<br />
- Rufen Sie über das Kontextmenü den Eigenschaftendialog auf, und wählen Sie die Registerkarte Verknüpfung.<br />
- Tragen Sie im Eingabefeld Ziel Folgendes ein:<br />
c:\programme\flashit_<strong>NXP</strong>.exe COM=1 BAUD=57600 HEX-FILE=e:\projekt\out.hex AUTOSTART EXIT<br />
Ergebnis:<br />
Nach einem Doppelklick auf Ihr Programm-Icon out.hex wird <strong>FLASHit</strong> gestartet und die<br />
Datei e:\projekt\out.hex wird mit einer Baudrate von 57.600 über COM1 zum Zielsystem übertragen und dort in<br />
den FLASH-Speicher programmiert. <strong>FLASHit</strong> beendet sich selbst.<br />
Hinweis: Einen Überblick über die Kommandozeilen-Funktionen liefert Kapitel 7.2.<br />
Prioritäten in der <strong>FLASHit</strong>-Konfiguration<br />
Alle vorgenommenen Parameter-Einstellungen (z. B. Baudrate, COM-Port usw.) von <strong>FLASHit</strong> werden in der Datei<br />
flashit_<strong>NXP</strong>.ini abgespeichert.<br />
Die jeweils gültigen <strong>FLASHit</strong>-Parameter (Actual-Config)<br />
setzen sich zusammen aus:<br />
- den „alten Daten“ aus der Datei flashit_<strong>NXP</strong>.ini.<br />
(Old-Config)<br />
- eventuellen „Parametern“, die beim Start von <strong>FLASHit</strong><br />
übergeben werden, z. B. aus einem anderen Programm<br />
heraus (Command-Line-Config). Diese Parameter haben<br />
Priorität vor den Parametern, die in der Datei<br />
flashit_<strong>NXP</strong>.ini abgespeichert wurden.<br />
- den Einstellungen, die direkt auf dem Desktop<br />
(Desktop-Config) von <strong>FLASHit</strong> vorgenommen wurden,<br />
diese haben Vorrang vor allen anderen Parametern.<br />
5.8 Konfiguration laden oder speichern<br />
Mit Save configuration können alle vorgenommenen<br />
Einstellungen gespeichert werden.<br />
Mit Open configuration... können Einstellungen geladen<br />
werden.<br />
11-08 Seite 17 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
6 Das <strong>FLASHit</strong>-Paket<br />
Die nachfolgend beschriebenen Tools, die zum <strong>FLASHit</strong>-Paket gehören, sind eigenständige Programme, die<br />
entweder von <strong>FLASHit</strong> direkt oder extern gestartet werden können.<br />
6.1 RS232-Terminal<br />
RS232-Terminal ist ein universelles Terminal-Programm,<br />
mit dem die Ausgaben, die die Applikation auf dem Target<br />
über die RS232-Schnittstelle sendet, protokolliert werden<br />
können.<br />
Hinweis: RS232-Terminal kann direkt oder von <strong>FLASHit</strong><br />
aus gestartet werden.<br />
Über das Menü File können die üblichen Funktionen<br />
gestartet werden.<br />
Über das Menü Display kann die Anzeigenart eingestellt<br />
werden<br />
Hex format:<br />
Alle Daten werden im Hex-Format angezeigt.<br />
ASCII format:<br />
Alle Daten werden im ASCII-Format angezeigt.<br />
Hex+ASCII format:<br />
Alle Daten werden im ASCII- und Hex-Format angezeigt.<br />
Transmit:<br />
Im Transmit-Fenster kann ein String zum Senden<br />
vorbereitet werden. Mit dem Transmit-Schalter wird der<br />
String über die RS232-Schnittstelle gesendet.<br />
Tx window:<br />
Über den Schalter TX window wird ein Fenster geöffnet, in<br />
dem die eingegebenen Zeichen „live“ über die RS232-<br />
Schnittstelle gesendet werden.<br />
11-08 Seite 18 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
Mit Clear Rx-Window kann das Empfangsfenster gelöscht<br />
werden.<br />
Unter dem Menü Connected kann die COM-Verbindungsart<br />
eingestellt werden.<br />
Über das Menü Line feed kann der Zeilenvorschub der Daten im Terminal-Fenster eingestellt werden, wobei die<br />
Zeilenumbrüche für receive (Empfangen) und transmit (Senden) getrennt einstellbar sind.<br />
Line feed at CR:<br />
Zeilenvorschub über einen „Carriage Return“<br />
Line feed at LF:<br />
Zeilenvorschub über einen „Line feed“<br />
Line feed at traffic break:<br />
Zeilenvorschub über ein Ausbleiben von Daten<br />
Add CR:<br />
Dem gesendeten Text wird ein „Carriage Return“<br />
angehängt.<br />
Add LF:<br />
Dem gesendeten Text wird ein „Line feed“ angehängt.<br />
Add CR+LF:<br />
Dem gesendeten Text wird ein „Carriage Return“ und ein<br />
„Line feed“ angehängt.<br />
Add none:<br />
Dem gesendeten Text wird kein „Carriage Return“ und kein<br />
„Line feed“ angehängt.<br />
Über das Menü Setup können die üblichen COM-Port-<br />
Einstellungen vorgenommen werden.<br />
Target-Reset über Terminal<br />
Über das Menü Control target kann ein Hardware-Reset<br />
des Targets ausgeführt werden. Voraussetzung hierfür ist<br />
die Verschaltung der entsprechenden Anschlüsse der<br />
RS232-Schnittstelle gemäß unserem Schaltungsvorschlag<br />
(siehe Anhang 7.6 Reset- und Bootstrap-Interface)<br />
11-08 Seite 19 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
6.2 CRC-Builder<br />
Der Checksum builder ist ein universelles Programm, mit dem die Checksumme eines HEX-Files bestimmt werden<br />
kann.<br />
Über den Menüpunkt File wird eine HEX-Datei ausgewählt.<br />
In FLASH size wird die FLASH-Speicher-Größe eingestellt.<br />
CRC-Builder legt die Start- und Endadresse gemäß den<br />
Einstellungen unter FLASH size fest. Es muss lediglich der<br />
interne Bereich des Ziel-Controllers unter Begin of<br />
uncalculated area und End of uncalculated rea festgelegt<br />
werden, da dieser Bereich bei der Berechnung der<br />
Checksumme ausgeklammert wird.<br />
Mit Calculate wird die Berechnung gestartet.<br />
Die Checksumme liegt als Ergebnis dann als ADD32-und<br />
CRC16-Wert vor.<br />
Hinweis: CRC-Builder kann nur direkt gestartet werden.<br />
CRC-Builder kann durch Kommandozeilenparameter<br />
gesteuert werden.<br />
Befehl<br />
EXIT<br />
Funktion<br />
Das Programm wird nach der Berechnung beendet.<br />
A1= definiert die Start-Adresse der CRC-Berechnung<br />
A2= definiert die Start-Adresse des nicht zu berücksichtigenden<br />
Bereichs<br />
A3= definiert die End-Adresse des nicht zu berücksichtigenden<br />
Bereichs<br />
A4= definiert die End-Adresse der CRC-Berechnung<br />
FS= definiert die Flash-Size (0=auto, 1=64 k, 2=128 k, 3=256 k,<br />
4=512 k, 5=1 M, 6=2 M, 7=4 M)<br />
FP=<br />
HEX-FILE=<br />
definiert den Dateninhalt eines gelöschten Flash-Bausteins<br />
(Fill-Pattern)<br />
definiert die Datei, über die die CRC berechnet wird<br />
Hex-File = j:\hexfiles\128kRandom.hex<br />
CRC16 = 0x51EF<br />
ADD32 = 0x00EDFE42l<br />
Error Code = 000<br />
Start-Adr = 0x08000000<br />
BegInt-Adr = 0x000000<br />
EndInt-Adr = 0x000000<br />
End-Adr = 0x0801FFFF<br />
Beispiel von Result_CRC.txt<br />
Beim Beenden des CRC-Builders wird eine Ergebnisdatei<br />
(Result_CRC.txt) generiert. Die Datei befindet sich unter<br />
Windows XP in C:\Doku..Einstellungen\All<br />
users\Anwendungsdaten\Flashit<br />
und unter Windows 7 in C:\PrgramData\<strong>FLASHit</strong>.<br />
Fehlercode<br />
Bedeutung<br />
0 Fehlerfreie Ausführung<br />
14 Datei konnte nicht gelesen werden.<br />
36 Die Größe des Flash-Bausteines ist unbekannt.<br />
171 Die Datei enthält Daten, die außerhalb des Flashs<br />
liegen.<br />
175 Datei nicht gefunden<br />
Der CRC-Builder gibt einen Rückgabe-Wert (Return-Code)<br />
an das aufrufende Programm zurück. Der Return-Code<br />
gliedert sich in zwei Bereiche: die CRC16-Prüfsumme (Bit<br />
0..15) und den Fehlercode (Bit 16..31).<br />
11-08 Seite 20 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
6.3 IO-Check<br />
Mit IO-Check wurde ein Schnittstellentest-Tool in das <strong>FLASHit</strong>-Paket integriert, mit dem das Funktionieren des COM-<br />
Ports (Grundlage zum Arbeiten mit <strong>FLASHit</strong>) gecheckt werden kann.<br />
Hinweis: IO-Check kann direkt oder von <strong>FLASHit</strong> aus gestartet werden.<br />
Beim Aufruf der IO-Check-Funktion werden alle installierten<br />
COM-Ports daraufhin überprüft, ob ein Zugriff über die<br />
Windows API-Funktion<br />
(API=Application Programming Interface) möglich ist.<br />
Anschließend wird der direkte Zugriff auf die PIO-Bausteine<br />
(PIO-Modus) geprüft.<br />
IO-Check zeigt, welche COM-Ports für <strong>FLASHit</strong> verwendet<br />
werden können.<br />
<strong>FLASHit</strong> kann nur die COM-Ports verwenden, auf die über<br />
die API zugegriffen werden kann.<br />
Ferner lassen sich mit IO-Check die einzelnen Port-<br />
Leitungen manuell ein- und ausschalten.<br />
Nebenbei kann auch der LPT1-Port getestet werden.<br />
Zugriffsarten<br />
Der Zugriff auf die COM-Schnittstelle über die API ist nur<br />
möglich, wenn der Port vor dem Programmstart frei war.<br />
Zum „Beobachten“ eignet sich der PIO-Modus. Zum<br />
Funktionstest eignet sich der API-Modus. Der PIO-Modus<br />
kann nur für Standard-COM-Ports verwendet werden und<br />
nicht an COM-Ports, die z. B. über<br />
USB-Schnittstellen gebildet werden (USB-RS232-Adapter).<br />
Loop test/Leitungstest:<br />
Über den Schalter Test öffnet sich ein Protokollfenster, in<br />
dem die Ergebnisse des automatischen Tests beschrieben<br />
werden.<br />
Über das Menü File/Save protocol as... kann das Ergebnis<br />
der Prüfung gespeichert werden.<br />
Es wird eine physikalische Prüfung der einzelnen Leitungen<br />
und der Signallaufzeiten durchgeführt.<br />
Hierzu ist ein Prüfstecker erforderlich, der am COM-Port<br />
angeschlossen sein muss (siehe links unten).<br />
Beispiel für ein Leitungstest-Protokoll:<br />
COM1: Start Loop Test (API-Modus)<br />
TxD -> RxD Loop ok. Delay = 1,6 ms<br />
DTR -> DSR Loop ok. Delay = 5,6 ms<br />
DTR -> DCD Loop ok. Delay = 0,9 ms<br />
RTS -> CTS Loop ok. Delay = 4,4 ms<br />
RTS -> Ri Loop ok. Delay = 0,5 ms<br />
Die angegebenen Zeiten sind ungefähre Werte und<br />
abhängig von der Rechnerleistung. Bei COM-Ports, die über<br />
einen USB-Schnittstellenadapter betrieben werden, können<br />
die Signallaufzeiten erheblich länger sein.<br />
11-08 Seite 21 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
Manuelle Kontrolle der Portleitungen<br />
-Signale (Input)<br />
Die Farben der Symbole geben die logischen Pegel an. Das<br />
heißt der logische Pegel „1“ kann je nach Computer-Fabrikat<br />
ca +5 V bis ca +12 V betragen. Entsprechend die negativen<br />
Pegel: ca –5 V bis ca –12 V.<br />
-Ausgänge (Output)<br />
Durch das Anklicken der -Symbole kann ein Signal auf<br />
den entsprechenden Port gesetzt werden.<br />
Auch hier wird keine exakte Spannung, sondern der<br />
logische Pegel gezeigt.<br />
WARNUNG:<br />
Die Modifizierung der Ausgänge kann u. U. Hardware (PC und/oder extern angeschlossene<br />
Geräte) zerstören!<br />
Steuerleitungen des Druckeranschlusses<br />
Die Steuerleitungen des ersten Standard-Druckers (Adresse 0x378) können manuell beeinflusst und beobachtet<br />
werden.<br />
WARNUNG:<br />
Die Modifizierung der Ausgänge kann u. U. Hardware (PC und/oder extern angeschlossene<br />
Geräte) zerstören!<br />
11-08 Seite 22 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
6.4 Kommandozeilen-Generator (CmdLine)<br />
Zur Vereinfachung des Umgangs mit der Kommandozeilen-Funktion von <strong>FLASHit</strong> wird das Programm CmdLine auf<br />
der CD mitgeliefert, mit dessen Hilfe automatisch<br />
- eine Kommandozeile und ein ICON und<br />
- ein C-Source-Code (für den Aufruf aus eigenen Applikationen heraus) generiert werden kann.<br />
Hinweis: CmdLine kann nur direkt gestartet werden.<br />
Auf einfache Weise können hier verschiedene Einstellungen vorgenommen werden. Bei dem hier gezeigten Beispiel<br />
wurde die Upload-Hex-Datei (HEX-FILE=J:\Hexfiles\canopen.hex) gewählt,<br />
der automatische Start des Uploads (AUTOSTART) veranlasst,<br />
der FLASH-Speicher-Löschmodus „Sector Erase“ (ERASE MODE=SECTOR) eingestellt,<br />
das automatische Beenden von <strong>FLASHit</strong> (EXIT) gewählt,<br />
der Comport (COM=1) verwendet und<br />
die Baurate (Baud=57600) eingestellt.<br />
Die fett markierten Menüs zeigen an, dass darin Einstellungen vorgenommen wurden.<br />
Die Reihenfolge der einzelnen Befehle spielt keine Rolle!<br />
Direkter Start von <strong>FLASHit</strong> über die eingestellte Kommandozeile.<br />
Erstellung einer Verknüpfung mit <strong>FLASHit</strong> und einer eingestellten Kommandozeile.<br />
Aufruf von <strong>FLASHit</strong> aus einem Visual C++-Code.<br />
Aufruf von <strong>FLASHit</strong> aus einem Borland C-Code.<br />
11-08 Seite 23 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
<strong>FLASHit</strong> liefert „Return-Codes“ zurück, die von CmdLine angezeigt werden.<br />
Mit der folgenden Programmzeile kann der „Error Code“ aus Return-Value extrahiert werden (siehe 7.1).<br />
uiErrorCode = (unsigned int) ( ulReturnValue >> 8 );<br />
Mit der folgenden Programmzeile kann der „Short Code“ aus Return-Value extrahiert werden.<br />
cShortCode = (char)( ulReturnValue & 0x0F );<br />
Short-Code entspricht den unteren 4 Bit von Return-Value.<br />
0 Kein Fehler<br />
1 Fehler im Hexfile<br />
2 Fehler im Zielsystem<br />
3 Flash wurde nicht gefunden<br />
4 Flash-Typ bisher nicht unterstützt<br />
5 Fehler beim Löschen des Flash-Bausteins<br />
6 Fehler beim Programmieren des Flash-Bausteins<br />
7 Prüfsummen-Fehler<br />
8 Fehler im Programmablauf von <strong>FLASHit</strong><br />
andere Fehler von Windows<br />
Zusätzlich generiert <strong>FLASHit</strong> einen „Return-Code-File“ (result.txt) für die Auswertung durch andere Applikationen.<br />
Hinweis: Um mit CmdLine arbeiten zu können, muss es sich im <strong>FLASHit</strong>-Verzeichnis befinden!<br />
Alle Änderungen vorbehalten!<br />
Eine erfolgreiche Arbeit wünscht<br />
das hse-electronics-Team<br />
11-08 Seite 24 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>ARM</strong><br />
<strong>Cortex</strong> <strong>M3</strong><br />
Error Number<br />
Smal return<br />
Code<br />
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
7 Anhang<br />
7.1 Statusmeldungen (Errorcodes)<br />
Versions<br />
Message<br />
Description<br />
Beschreibung<br />
File, Modul, Libarys Not found<br />
E010 8 E010: Can't find file: *.mod<br />
E011 8 E011: Modul file was not found<br />
Ѵ E014 1 E014: Can't open upload file<br />
Ѵ E015 8 E015: No FLASH data found<br />
Ѵ E016 E016: Can't generate Binray-Temp-File<br />
Ѵ E017 E017: Can't open Binray-Temp-File<br />
Ѵ E018 E018: Can't generate Binray-File<br />
Ѵ E019 E019: Can't generate Intel-hex-file<br />
E020 8 E020: Library unit not found<br />
E023<br />
E023: Wrong in flashitx.lib<br />
Ѵ E024 E024: Instruction file not found<br />
Ѵ E025 E025: Data base FLASHdat.LIB not found<br />
Ѵ E026 E026: Ini-File is write protected<br />
Modul-File not found<br />
Modul nicht gefunden<br />
File is missing<br />
Datei fehlt<br />
Access to upload file is not possible<br />
Der Upload file konnte nicht geöffnet werden<br />
FLASH data missing<br />
Es fehlen Daten zum Flashen<br />
Access to temp file (readout.bin) not possible<br />
Temporäre Datei readout.bin konnte nicht erstellt werden<br />
Read access to temp file not possible<br />
Temporäre Datei readout.bin konnte nicht geöffnet werden<br />
Access to bin file not possible<br />
Binäre-Ziel-Datei konnte nicht geöffnet werden<br />
Access to hex file not possible<br />
Intel-Hex-Ziel-Datei konnte nicht geöffnet werden<br />
<strong>FLASHit</strong>x.lib not found<br />
Flashit.lib konnte nicht geöffnet werden.<br />
Error in Library x<br />
Fehler in Bibliothek x<br />
PDF files not found<br />
Die Datei doku/Anleitung.pdf fehlt<br />
File FLASHdat.LIB not found<br />
Die Datei FlashDat.lib wurde nicht gefunden<br />
Flashit.ini is write protection<br />
Die Ini-Datei ist schreibgeschützt<br />
Programmcycle<br />
E030 8 E030: Modul-file is too big!<br />
Ѵ E031 8 E031: No memory for FlashLib<br />
Ѵ E032 8 E032: Not enough memory<br />
Ѵ E033 1 E033: Error in Hex-File: Line is too long!<br />
Ѵ E034 1 E034: Wrong file format. Function abort<br />
Ѵ E035 8 E035: Write mode n unknown<br />
Ѵ E036 1 E036: Size of FLASH is unknown. Abort<br />
Ѵ E038 6<br />
E038: Can't write User-Serial-Number [..] at log. address<br />
...<br />
Ѵ E039 1 E039: Mirror address is unknown<br />
File size is too big.<br />
Ein Modul ist zu groß<br />
No memory to read Flashitx.lib<br />
Kein dynamischer Speicher verfügbar um Flashdat.lib zu<br />
laden<br />
No memory to read Flashitx.lib<br />
Kein Speicher für das virtuelles Flash<br />
Hex format error<br />
Aktuelle Zeile im Intel-Hex-File ist zu lang<br />
Hex format error<br />
Unbekanntes Datenformat der Hex-Datei<br />
Flash write mode is not supported<br />
Flash-Write-Methode unbekannt<br />
Size of embedded flash is not found<br />
Größe des Flashspeichers ist unbekannt<br />
Error in embedded flash.<br />
User-Serial-Number konnte nicht geschrieben werden.<br />
Undefined size of embedded flash<br />
Größe des Flashspeichers ist unbekannt<br />
11-08 Seite 25 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
Not supported<br />
Ѵ E040 8 E040: Sorry this CPU is not enabled at your version<br />
Ѵ E042 E042: Internal error call hse<br />
Ѵ E043 E043: Wrong Date (1)<br />
Ѵ E046 8 E046: Please contact hse-elctronics<br />
Ѵ E047 8 E047: Function in demo not available<br />
Ѵ E048 8 E048: Contact hse-elctronic<br />
Target CPU (step) is unknown<br />
CPU nicht freigeschaltet (nur bei limitierter Version)<br />
<strong>FLASHit</strong> access error<br />
Interner Fehler<br />
Date is out of format<br />
Datum kann nicht korrekt ermittelt werden.<br />
User access error<br />
Fehler der eine Kontaktaufnahme zu hse erforderlich macht<br />
Licence restriction<br />
Funktion ist in der Demoversion nicht verfügbar.<br />
Upload data access error<br />
Fehler der eine Kontaktaufnahme zu hse erforderlich macht<br />
Dataformat Error<br />
E051 8 E051: Try to write odd number of data!<br />
Ѵ E052 1 E052: Upload-file is no Intel-Hex format!<br />
Ѵ E053 1 E053: Overwrite Address<br />
Ѵ E056 E056: Data outside of FLASH at Address x<br />
Ѵ E058 1 E058: Checksum error in Hexfile line<br />
Ѵ E059 1 E059: Wrong blocklenght in Hexfile line<br />
E060<br />
E060: No Debug/Toolstick Adapter found<br />
Try to write odd number of data<br />
Es wird versucht eine ungerade Anzahl von Bytes zu<br />
schreiben.<br />
Upload file format error<br />
Die Upload-Datei entspricht nicht dem Intel-Hex Format<br />
Multiple define of data in Embedded upload file<br />
Fehler im Hexfile<br />
Address of embedded file is out of FLASH memory<br />
Daten außerhalb des Speicherbereiches<br />
Checksum error in Hexfile line<br />
Prüfsummenfehler in Hexfile Zeile<br />
Wrong blocklenght in Hexfile line<br />
Anzahl der Daten stimmt nicht mit Länge der Hex-Zeile<br />
überein<br />
No Debug/Toolstick Adapter found<br />
Toolstickadapter nicht gefunden<br />
Target Error<br />
E101 2 E101: Can't load modul<br />
E102 2 E102: Booting was not possible %d<br />
E103 2 E103: No correct answer from target<br />
Ѵ E104 2 E104: Communication with target failed<br />
E109 2 E109: Target-bus length unknown!<br />
Ѵ E110 2 E110: Target crashed - rebooting...<br />
Ѵ E111 2 E111: No response from target<br />
Ѵ E113 2 E113: Can't analyse contents of target FLASH<br />
E114 2 E114: Can't load buffer<br />
E116 3 E116: FLASH-Read-Test failt<br />
Can't load modul<br />
Fehler beim Laden eines Moduls ins Target<br />
Target booting was not possible<br />
Target konnte nicht gebootet werden<br />
Target does not answer correct<br />
Das Target antwortet nicht korrekt.<br />
Target gives an unknown response<br />
Das Taget meldet eine unbekannte CPU-Kennung.<br />
Unknown bus mode<br />
Busbreite des Target-Systems konnte nicht erkannt werden<br />
Target crashed while erasing<br />
Target ist beim Sektor-Löschen abgestürtzt und wird neu<br />
gestartet.<br />
Target does not answer correct<br />
Target antwortet nicht richtig<br />
Can't analyse contents of target FLASH<br />
Die Analyse des Inhaltes des Target Flashes war nicht<br />
möglich.<br />
Can't load buffer<br />
Ein Bufferinhalt konnte nicht ins Target geladen werden<br />
FLASH-Read-Test failt<br />
Der Flash-Lese-Test ergab ein ungültiges Ergebnis<br />
11-08 Seite 26 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
Flashmemory Error<br />
E130 6 E130: Timeout while writing FLASH!<br />
E131 6 E131: While writing FLASH (DQ7)<br />
E132 6 E132: No. %d in modul Write_Buffer!<br />
E133 6 E133: No acknowledge while writing FLASH!<br />
E134 6 E134: Abort at Adr. %08lXh, while Timeout-Error!<br />
Ѵ E135 6 E135: Abort at Adr. %08lXh, Error%d!<br />
Ѵ E136 E136: Erase mode (Chip/Sector) unknown<br />
E137 1 E137: Wrong page size<br />
Ѵ E138 6 E138: Flash type is not found<br />
E140 5 E140: FLASH-Erase abort while timeout!<br />
E141 5 E141: Sector-Erase failt!<br />
E142 5 E142: Sector-Erase abort while timeout!<br />
Ѵ E145 5 E145: FLASH-Erase abort after x s from flash<br />
E146 5 E146: Chip-Erase not possible<br />
Ѵ E150 7 E150: Checksum compare error<br />
E151 5 E151: Internal flash is not supported<br />
Ѵ E153 8 E153: Abort at Adr. %08lXh, Error%d!<br />
Error in embedded flash.Timeout<br />
Fehler beim Schreiben des Flashbausteines. Timeout<br />
Error in embedded flash<br />
Fehler beim Schreiben: Flashbaustein meldet Fehler<br />
Error n in embedded flash<br />
Fehler beim Schreiben: Flash-Speicher meldet Fehler n<br />
Target does not answer<br />
Fehler beim Schreiben: Es kommt keine Antwort von Target<br />
Programming stop at address x<br />
Abbruch beim Schreiben an Adresse x wegen Timeout<br />
Programming stop at address x<br />
Abbruch beim Schreiben an Adresse x wegen Fehler n<br />
Erase mode (Chip/Sector) unknown<br />
Löschmethode unbekannt<br />
Wrong page size<br />
Blocklänge nicht zulässig<br />
No data about embedded flash<br />
Keine Daten über den FLASH-Speicher verfügbar<br />
Target does not answer: Timeout<br />
Fehler beim Löschen des Flashbausteines: Timeout<br />
Error at erasing target flash<br />
Es trat ein Fehler beim Löschen des Flashes auf<br />
Target does not answer: Timeout<br />
Fehler beim Löschen des Flashbausteines: Timeout<br />
FLASH Erasing was canceled after x sec by target flash<br />
Flash hat nach x Sek einen Fehler erkannt<br />
Mode Chip-Erase not possible<br />
Diese CPU kennt kein Chip-Erase<br />
CRC of target flash does not match<br />
Vorgegebene Checksumme stimmt nicht mit Flashinhalt<br />
überein<br />
Not support flash found<br />
Dieses interne Flash wird nicht unterstützt<br />
Error while writing a "Word/DWord" at address x<br />
Fehler beim Schreiben eines "Word/DWord" an Adresse x<br />
Input Error<br />
E170 8 E170: Odd address is not possible<br />
Ѵ E171 8 E171: Address combination is not possible (A1>A4)<br />
Ѵ E172 8 E172: Command line: Pfad to hex-file does not exist<br />
E173 8 E173: Address combination is not possible A(n)>A(n+1)<br />
To enter an odd address is not allowed<br />
Ungerade Adresseingabe ist nicht erlaubt<br />
Address combination is not allowed<br />
Adresskombination nicht erlaubt<br />
The upload file path of command line, does not exist<br />
Die Upload-Datei, ist nicht vorhanden<br />
Address combination is not allowed<br />
Adresskombination nicht erlaubt<br />
Ѵ E175 1 E175: Hexfile not found<br />
Upload file not found<br />
Upload Datei nicht gefunden<br />
E176 8 E176: Do not mapp ROM1 to seg 1<br />
Bus setting of SYSCON.15 is wrong<br />
Bus Konfiguration SYSCON.15 ist falsch<br />
Ѵ E177 8 E177: Command line: Pfad to RAM-file does not exist<br />
The upload file path of command line, does not exist<br />
Die Datei ist nicht vorhanden<br />
Ѵ E200 4 E200: sizeof(FLASHdat.LIB) too big<br />
File FLASHdat.LIB size too big<br />
Die Datei FLASHdat.LIB ist zu gross<br />
Ѵ E201 E201: Hex-Download Abort, lost Sync<br />
Error while readout target FLASH memory.<br />
Beim Auslesen des Flashes ist ein Fehler aufgetreten<br />
Ѵ E202: 8 E202: Lenght too high Path of upload file is too long<br />
11-08 Seite 27 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
Der Upload Pfad ist zu lang<br />
COM-Access<br />
Ѵ E301 Error Baudrate not possible<br />
Baudrate can not be set<br />
Baudrate kann nicht eingestellt werden<br />
RAM-Access<br />
E410 2 E410: RAM-access test failed<br />
E420 2 E420: RAM data line test failed<br />
E430 2 E430: RAM addr line test failed<br />
E440 2 E440: RAM-cell test failed<br />
E450<br />
E450: RAM upload failed, Ex<br />
Ѵ E451 2 E451: Upload failed, CRC is wrong<br />
E452 2 E452: RAM-Data compare error<br />
Ѵ E453 2 E453: RAM CRC check failed<br />
Ѵ E455 2 E455: can not open file<br />
E456<br />
E456: Data will destroy system area<br />
Ѵ E457 E457: Error Vector not possible<br />
Access to RAM failt<br />
RAM-Zugriffstest ist fehlgeschlagen<br />
Access to RAM failt<br />
RAM-Test Fehler in Datenleitung<br />
Access to RAM failt<br />
RAM-Test Fehler in Adressleitung<br />
Access to RAM failt<br />
RAM-Test Fehler bei Zellen Test<br />
Error x while RAM upload<br />
Fehler x beim RAM upload<br />
CRC error while RAM upload<br />
CRC Fehler während RAM Upload<br />
Read back compare<br />
RAM-Rücklese-Daten stimmen nicht mit Upload Daten<br />
überein<br />
Read back CRC error<br />
RAM-CRC stimmt nicht mit Upload CRC überein<br />
RAM-Upload file access error<br />
RAM-Upload Datei kann nicht geöffnet werden<br />
Data will overwrite iRAM, SFR<br />
Versuch ins iRAM oder SFR zu schreiben<br />
The jump vector is not possible<br />
Das Sprungziel ist nicht möglich<br />
Problem with Licence<br />
Ѵ E814 E814: Licence not valid (version)<br />
Ѵ E815 E815:Licence not valid (timeout)<br />
Ѵ E816 E816: Licence not valid (timeout)<br />
Ѵ E817 E817: Licence not valid (timeout)<br />
Ѵ E818 E818: Licence wrong (error)<br />
Ѵ E819 E819: Empty USB-Key<br />
Ѵ E820 E820: Null nicht erlaubt<br />
Licence does not match to program version<br />
Lizenz passt nicht zur Programm Version<br />
Validity periode expried<br />
Gültigkeitszeitraum abgelaufen<br />
Validity periode expried<br />
Gültigkeitszeitraum abgelaufen<br />
Validity periode expried<br />
Gültigkeitszeitraum abgelaufen<br />
Tiping error<br />
Tippfehler<br />
USB-Key is empty (no licence data)<br />
USB-Dongle enthält keine Lizenz-Daten<br />
Tiping error<br />
Tippfehler<br />
Problem with Licence-Dongle<br />
Ѵ E900 E900<br />
Ѵ E934 8 E934: USB-Dongle is broken!<br />
No licence found / Demo version<br />
Keine Lizenz gefunden / Demo Version<br />
USB-Dongle is broken<br />
USB-Dongle ist gebrochen<br />
11-08 Seite 28 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
7.2 Unterstützte Controller (Auszug):<br />
<strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M3</strong> <strong>ARM</strong>7<br />
LPC1100L LPC 1300 LPC 2100 LPC2300<br />
LPC1111FHN33 LPC1311FHN33 LPC2101FBD48 LPC2361FBD100<br />
LPC1112FHN33 LPC1313FBD48 LPC2102FBD48 LPC2362FBD100<br />
LPC1113FBD48 LPC1313FHN33 LPC2102FHN48 LPC2364FBD100<br />
LPC1113FHN33 LPC1342FHN33 LPC2103FBD48 LPC2364FET100<br />
LPC1114FA44 LPC1343FBD48 LPC2103FHN48 LPC2364HBD100<br />
LPC1114FBD48 LPC1343FHN33 LPC2104FBD48 LPC2365FBD100<br />
LPC1114FHN33 LPC2105FBD48 LPC2366FBD100<br />
LPC1700 LPC2106FBD48 LPC2367FBD100<br />
LPC11C00 LPC1751FBD80 LPC2106FHN48 LPC2368FBD100<br />
LPC11C12FBD48 LPC1752FBD80 LPC2109FBD64 LPC2368FET100<br />
LPC11C14FBD48 LPC1754FBD80 LPC2114FBD64 LPC2377FBD144<br />
LPC11C22FBD48 LPC1756FBD80 LPC2119FBD64 LPC2378FBD144<br />
LPC11C24FBD48 LPC1758FBD80 LPC2124FBD64 LPC2387FBD100<br />
LPC1759FBD80 LPC2129FBD64 LPC2388FBD144<br />
LPC11U00 LPC1763FBD100 LPC2131FBD64<br />
LPC11U12FBD48 LPC1764FBD100 LPC2132FBD64 LPC2400<br />
LPC11U12FHN33 LPC1765FBD100 LPC2132FHN64 LPC2420FBD208<br />
LPC11U13FBD48 LPC1765FET100 LPC2134FBD64 LPC2420FET208<br />
LPC11U14FBD48 LPC1766FBD100 LPC2136FBD64 LPC2460FBD208<br />
LPC11U14FET48 LPC1767FBD100 LPC2138FBD64 LPC2460FET208<br />
LPC11U14FHN33 LPC1768FBD100 LPC2138FHN64 LPC2468FBD208<br />
LPC1768FET100 LPC2141FBD64 LPC2468FET208<br />
LPC1200 LPC1769FBD100 LPC2142FBD64 LPC2478FET208<br />
LPC1224FBD48 LPC1774FBD144 LPC2144FBD64<br />
LPC1224FBD64 LPC1774FBD208 LPC2146FBD64 LH7-series<br />
LPC1225FBD48 LPC1776FBD208 LPC2148FBD64 LH75401N0Q100C0<br />
LPC1225FBD64 LPC1776FET180 LPC2157FBD100 LH75411N0Q100C0<br />
LPC1226FBD48 LPC1777FBD208 LPC2158FBD100 LH79520N0Q000B1<br />
LPC1226FBD64 LPC1778FBD144 LPC2194HBD64 LH79524N0F100A1<br />
LPC1227FBD48 LPC1778FBD208 LH79525N0Q100A1<br />
LPC1227FBD64 LPC1778FET180 LPC2200<br />
LPC1778FET208<br />
LPC2210FBD144<br />
LPC1785FBD208<br />
LPC2212FBD144<br />
LPC1786FBD208<br />
LPC2214FBD144<br />
LPC1787FBD208<br />
LPC2220FBD144<br />
LPC1788FBD144<br />
LPC2220FET144<br />
LPC1788FBD208<br />
LPC2290FBD144<br />
LPC1788FET180<br />
LPC2292FBD144<br />
LPC1788FET208<br />
LPC2292FET144<br />
LPC2294HBD144<br />
11-08 Seite 29 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
7.3 Kommandozeilen-Funktionen im Überblick<br />
Commands<br />
Befehle<br />
Description<br />
Beschreibung<br />
Adjustments<br />
Einstellungen<br />
Examples<br />
Beispiele<br />
INI_FILE<br />
COM<br />
BAUD<br />
BASIC-ADDR<br />
RDOUT-BEG<br />
RDOUT-TOP<br />
FILTER<br />
HEX-FILE<br />
BIN-FILE<br />
BIN-OFFSET<br />
FILELOAD<br />
RAM-FILE<br />
RAM-OFFSET<br />
RAM-UPBASE<br />
ICONSIZE<br />
EXPERTVIEW<br />
EXPRESSVIEW<br />
USN_Prefix<br />
USN_Number<br />
USN_Adress<br />
USN_INC<br />
USN_Log<br />
Project<br />
Starts <strong>FLASHit</strong> with project file (*.ini).<br />
<strong>FLASHit</strong> mit Projekteinstellungen (*.ini) starten<br />
INI_FILE=c:\demo.ini<br />
INI_FILE="c\program<br />
files\test.ini"<br />
Target-Connection<br />
Defines COM-Port number<br />
Definiert COM-Port Nummer<br />
1, 2, ..., 99 COM=2<br />
Defines baudrate 9600,19200,38400,<br />
Definition der Baudrate<br />
57600,115200<br />
BAUD=38400<br />
Target defines<br />
Flash basic address 0x000000 -<br />
Basis Adresse des Flash-Speichers.<br />
0xFFFFFFFF<br />
BASIC-ADDR=0x00000000<br />
Beginn of Readout<br />
niedrigste Auslese-Adresse<br />
RDOUT-BEG=0x00000000<br />
End of Readout<br />
höchste Auslese-Adresse<br />
RDOUT-TOP=0x0001FFFF<br />
Flash Upload<br />
Defines filter for file view<br />
Definiert den Filter für die Hexfile-Anzeige<br />
*.hex, *.h86, *.s19<br />
FILTER=*.H86<br />
Defines a path and file name for upload<br />
HEX-FILE=c:\new\out.hex<br />
Fullpath<br />
Pfad-Angabe zum Upload-Hexfile<br />
HEX-FILE="c:\new 1\out.s19"<br />
Defines a path and file name for upload<br />
HEX-FILE=c:\new\out.bin<br />
Fullpath<br />
Pfad-Angabe zum Upload-Binary-File<br />
HEX-FILE="c:\new 1\out.jpg"<br />
Load Bin-File with offset into Flash<br />
Lädt Binär-Datei mit Offset-Adresse in den FLASH-Speicher<br />
BIN-OFFSET=0x0000000<br />
Loading mode (bin/Intel-/Mot.-Hex)<br />
Datei Lademethode<br />
BIN, HEX<br />
FILELOAD=HEX<br />
RAM Upload<br />
Defines a path and file name for RAM upload<br />
Pfad-Angabe RAM Uploaddatei<br />
Fullpath<br />
RAM-File="c:\Test\RAM.hex"<br />
Offset for RAM upload<br />
Offset für Speicherung ins RAM<br />
RAM-OFFSET=0x2000000<br />
Set offset source<br />
0 = Hexfile base<br />
Gibt die Quelle der Offset-Adresse an<br />
address<br />
RAM-UPBASE=1<br />
1 = User defines<br />
Visible<br />
Starts <strong>FLASHit</strong> as an icon<br />
Startet FLASHIt als Icon<br />
ICONSIZE<br />
Start full view<br />
Startet <strong>FLASHit</strong> mit voller Oberfläche<br />
EXPERTVIEW<br />
Start smal view<br />
Startet FLASHIt mit reduzierter Oberfläche<br />
EXPRESSVIEW<br />
User Serial Number (USN)<br />
Defines the prefix of the USN<br />
Definiert den Präfix der USN<br />
max. 10digits<br />
USN_Prefix=Version:<br />
Defines the value of the USN<br />
Definiert die Wert der Seriennummer<br />
max. 10digits<br />
USN_Number=123<br />
Defines the start-adress of the USN<br />
Startadresse ab der die USN ins Flash schrieben wird<br />
max. 10digits USN_Adress=0x0803FFF0<br />
Defines autoincrement of the USN<br />
Auto-Iinkrementierung der USN<br />
USN_INC<br />
Safes the USN into a file<br />
Speicherung der USN<br />
USN_Log<br />
11-08 Seite 30 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
SEQUENCE<br />
ERASE-MODE<br />
AskUseBeforeErase<br />
CHECKSUM=ADD<br />
CHECKSUM=CRC16<br />
CMPCHK<br />
SOFTRESET<br />
HARDRESET<br />
AutoEraseSec<br />
AutoWriteWord<br />
EXIT<br />
RETURN<br />
AUTOSTART<br />
WORK_DIR<br />
Program sequency / Programm-Schritte<br />
Clear Readout/Write protection<br />
Readout/Write Protection löschen<br />
RAM upload<br />
RAM Upload<br />
Erasing Flash<br />
FLASH-Speicher löschen<br />
Programming file into flash<br />
Datei in den FLASH-Speicher programmieren<br />
Build checksum (CRC)<br />
Checksumme bilden<br />
Compare checksum with<br />
Checksumme vergleichen mit einem festen Wert<br />
Write dword (32 bit) at address<br />
Ein dword an Adresse schreiben<br />
Write User serial number into flash (USN)<br />
Automatisch generierte Seriennummer schreiben (USN)<br />
Increment USN-number after successful writing<br />
USN-Nummer Inkrementieren nach erfolgreichem Schreiben<br />
Write USN into logfile<br />
USN in log Datei speichern<br />
Reset target<br />
Target reseten<br />
Start RS232 Terminal<br />
RS232-Terminalprogramm starten<br />
Exit <strong>FLASHit</strong> after upload sequence<br />
<strong>FLASHit</strong> beenden<br />
Set Readout/write Protection<br />
Setzen der Readout/Write Protection<br />
Program setting<br />
Defines SECTOR- or CHIP- NO-erase before programming<br />
Definition des Lösch-Modus<br />
Stops and ask user before sector erase<br />
Abfrage ob der Anwender Änderungen durchführen will<br />
Calculates a 32 bit add up Checksum after download<br />
Als Prüfsumme wird die 32bit Summe aller Bytes verwendet<br />
Calculates a CRC16 checksum after download<br />
Als Prüfsumme wird die CRC16-Methode verwendet<br />
Compares Checksum with value<br />
Definiert den Vergleichswert der Prüfsumme<br />
Generates a software reset after successful programming<br />
Definiert die Reset-Methode Software-Reset<br />
Generates a hardware reset after successful programming<br />
Definiert die Reset-Methode Hardware-Reset<br />
Erases sector at address<br />
Definiert den Sektor mit der Adresse zum Löschen<br />
Writes a dword at address x<br />
Schreibt ein 32bit Wert, an die Adresse x<br />
Program control<br />
Exits <strong>FLASHit</strong> after successfull program sequence<br />
Beendet <strong>FLASHit</strong> nach erfolgreicher Sequenz<br />
Exits <strong>FLASHit</strong> allways after program sequence<br />
Bendet <strong>FLASHit</strong> in jedem Fall. Bei Fehler siehe Returncode<br />
Starts automaticaly program sequence<br />
<strong>FLASHit</strong> startet automatisch die Sequenz<br />
Path to work directory (ini, result)<br />
Pfad zur ini-, result, Datei<br />
0p<br />
0r<br />
SEQUENCE=0p<br />
SEQUENCE=0r<br />
1 SEQUENCE=1<br />
2 SEQUENCE=1;2;6;8<br />
3a<br />
3b<br />
SEQUENCE=1;2;3a;8<br />
SEQUENCE=1;2;3a;3b;8<br />
4 SEQUENCE=4;8<br />
5a<br />
5b<br />
5c<br />
SEQUENCE=1;2;5a;8<br />
SEQUENCE=1;2;5a;5b;8<br />
SEQUENCE=1;2;5a;5b;5c;8<br />
6 SEQUENCE=1;2;6;8<br />
7 SEQUENCE=1;2;7<br />
8 SEQUENCE=1;2;6;8<br />
sp<br />
SECTOR, CHIP, NO<br />
0, 1<br />
Fullpath<br />
SEQUNCE=0p;1;2;sp<br />
ERASE-MODE=SECTOR<br />
AskUseBeforeErase=0<br />
AskUseBeforeErase=1<br />
CHECKSUM=ADD<br />
CHECKSUM=CRC16<br />
CMPCHK=0x002345<br />
SOFTRESET<br />
HARDRESET<br />
AutoEraseSec=0x08007FF0<br />
AutoWriteWord=<br />
0x08007FF0,0x12345678<br />
EXIT<br />
RETURN<br />
AUTOSTART<br />
WORK_DIR=j:\ini<br />
WORK_DIR="c:\program<br />
files\flashit"<br />
11-08 Seite 31 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
7.4 Sourcen der Prüfsummen-Funktion<br />
ADD32 (Add Bytes)<br />
unsigned int ChecksumADD32( unsigned long ulA1, unsigned long ulA2,<br />
unsigned long ulA3, unsigned long ulA4 )<br />
{<br />
unsigned int uiChecksumADD32 = 0;<br />
unsigned long ulAddress;<br />
// address range<br />
for (ulAddress = ulA1; ulAddress >=1;<br />
ucData >>=1;<br />
}<br />
}<br />
return( uiCRC6 );<br />
}<br />
11-08 Seite 32 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
7.5 Reset- und Bootstrap-Signale<br />
Reset- und Bootstrap-Signal auf der COM-Schnittstelle Signal nach der Schaltung in 7.6<br />
7.6 Reset- und Bootstrap-Interface<br />
Prinzipschaltung (!) zur Anpassung Ihrer Hardware an das Reset-Konzept von <strong>FLASHit</strong><br />
Das Reset- und Bootstrap-Interface kann komplett<br />
aufgebaut bei hse-electronics erworben werden.<br />
Alle Änderungen vorbehalten!<br />
Keine Gewähr auf Vollständigkeit!<br />
11-08 Seite 33 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
8 HEXit das HEX-File Analyse-Tool<br />
HEXit das universelle Tool zum Analysieren und Bearbeiten von<br />
Intel Hex-, Motorola S-Record- und Binär-Dateien<br />
Die Situation ist nicht selten, dass<br />
nach dem Compiler-Durchlauf<br />
keine Fehler ausgegeben werden<br />
und auch der Debugger sich<br />
nicht beschwert. Auf dem<br />
Zielsystem jedoch funktioniert<br />
nichts mehr.<br />
Um solchen Problemen auf den<br />
Grund zu gehen, analysiert Hexit<br />
die Hex- oder Binärdatei auf<br />
Speicher-Belegung<br />
Adressverteilung<br />
Verteilung von Codes/-Daten<br />
mehrfach belegte Adressen.<br />
Das Ergebnis wird grafisch<br />
dargestellt. So lassen sich<br />
Konflikte schnell erkennen.<br />
Im eingangs genannten<br />
Problem-Beispiel könnte sich<br />
z.B. herausstellen, dass der<br />
Reset-Vektor nicht belegt<br />
worden ist, oder dass der<br />
eingestellte Adressbereich<br />
nicht dem Hardware-Design<br />
entspricht. mehr…<br />
HEXit Features:<br />
Formatwandlung von Intel Hex-, Motorola S-Record- und Binär-Dateien in das jeweils andere Format<br />
Prüfsummenbildung über Hex/Bin-Dateien<br />
Prüfsumme in die geprüfte Datei schreiben<br />
Splitten von Hex/Bin-Dateien z.B. zur Anpassung an den internen/externen Flashspeicher einer MCU<br />
Linken mehrerer Intel Hex-, Motorola S-Record- und Binär-Dateien<br />
Datengenerator zur Erzeugung beliebiger Zahlen, Zahlenrampen oder Zufallszahlen<br />
C-Include-Wandler zum Einbinden von Binär-Dateien in C-Sourcen<br />
Grafische Analyse, von Intel Hex-, Motorola S-Record- oder Binär-Dateien auf:<br />
Speicherbelegung und mehrfach belegte Adressen<br />
Verteilung von Adress- und Programmcodes/Daten<br />
Datenstrukturen (durch Zuordnung der einzelnen Byte-Werte in Farb-Werte)<br />
Filter ermöglichen eine übersichtliche grafische Darstellung aller Daten<br />
Histogramm-Darstellung<br />
Batch Betrieb zur Steuerung der HEXit-Funktionen über Batch-Anweisungen<br />
Windows-Versionen bis Windows 7 werden unterstützt<br />
Bestellen<br />
HEXit können Sie direkt bei hse-electronics oder bei einem unserer Vertriebspartner bestellen.<br />
Weitere Informationen und Demo-Versionen erhalten Sie auf unserer Website: http://www.hse-electronics.de.<br />
11-08 Seite 34 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx
<strong>FLASHit</strong> 9- <strong>NXP</strong> <strong>ARM</strong> <strong>Cortex</strong>-<strong>M0</strong>/<strong>M3</strong>, <strong>ARM</strong>7 <strong>Manual</strong><br />
9 Project Engineering<br />
Wenn der Projektumfang die Grenzen der eigenen Kapazität sprengt,<br />
dann heißt die Lösung hse-electronics<br />
Das bieten wir:<br />
Komplett-Entwicklung durch hse-electronics:<br />
In Zusammenarbeit mit Ihnen wird ein Projekt-Konzept entwickelt.<br />
Wir übernehmen dann je nach Wunsch die weitere Bearbeitung wie:<br />
Analyse vorhandener Ressourcen (z.B. Soft-und Hardware)<br />
Erstellung des Feinkonzeptes (auf Wunsch nach dem „V-Modell“)<br />
Planung und Entwicklung der Hardware (Aufbau von Prototypen und Entflechtung von Platinen)<br />
Konzeption und Realisierung der Software unter Berücksichtigung der „Misra-Regeln“<br />
Entwurf und Umsetzung von Testmethoden<br />
Unterstützung bei der Zertifizierung des Projektes<br />
Fundierte Kenntnisse:<br />
Hardwarenahe Programmierung von 8-16-32-Bit-Microcontrollern.<br />
Programmiersprachen C, C++, Assembler<br />
Windows-Programmierung<br />
Umgang mit den gängigen C und Assembler-Compilern von „Tasking“, „Keil“ und „Codegear (Borland)“.<br />
Unterstützung bei der Zertifizierung von Industriebussystemen, wie z.B. CANopen, DeviceNet<br />
Konzeption und Erstellung von Prototypen (Leiterplattenentflechtung, Auswahl der Bauelemente….)<br />
Know-How-Transfer:<br />
In Kommunikation mit Ihrem Entwicklerteam schieben wir Projekte, oder auch nur einzelne Entwicklungsschritte, an,<br />
schulen und beraten nach Bedarf.<br />
Realisierung auch vor Ort:<br />
Wir übernehmen die verantwortliche Durchführung eines Projektes bei Ihnen im Haus und integrieren ihre<br />
Entwicklungsressourcen in das Projekt.<br />
Support:<br />
Natürlich stehen wir über die Entwicklungsphase hinaus stets tatkräftig zur Verfügung: Von der telefonischen Anfrage,<br />
bis zur gezielten Weiterentwicklung bereits bestehender Systeme, ist eine kontinuierliche und kompetente Betreuung<br />
sichergestellt.<br />
Eine kleine Auswahl von realisierten Projekten des hse-electronics-Teams können auf unserer Website einsehen<br />
werden. mehr…<br />
11-08 Seite 35 2011-08-d-flashit-manual-<strong>NXP</strong>-04.docx