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