Entdecken Sie eBooks
Kategorien
Entdecken Sie Hörbücher
Kategorien
Entdecken Sie Zeitschriften
Kategorien
Entdecken Sie Dokumente
Kategorien
Inhaltsverzeichnis
1 FLASHit .................................................................................................................................................................... 4
1.1 Funktionsüberblick ............................................................................................................................................ 4
1.2 Zum Handbuch – Begrifflichkeiten .................................................................................................................... 4
1.3 Wie funktioniert FLASHit? ................................................................................................................................. 5
1.4 Systemanforderungen ....................................................................................................................................... 5
3 Programmfunktionen ............................................................................................................................................. 7
3.1 Verbindung herstellen ....................................................................................................................................... 7
3.2 Baudrate einstellen ............................................................................................................................................ 7
3.3 FLASHit-Arbeitsverzeichnis ............................................................................................................................... 8
3.4 Programm-Priorität ............................................................................................................................................ 9
3.5 Experten- oder Expressmodus .......................................................................................................................... 9
3.6 Upload in das Zielsystem („FLASH brennen“) ................................................................................................ 10
3.7 FLASH-Speicher-Infos .................................................................................................................................... 11
3.8 Informationen über unterstützte FLASH-Speicher .......................................................................................... 12
3.9 Upload in das RAM des Targets ..................................................................................................................... 12
3.10 Zielsystem-Infos .............................................................................................................................................. 13
3.11 Konfiguration von FLASHit .............................................................................................................................. 14
4 Spezialfunktionen ................................................................................................................................................. 20
4.1 FLASH-Speicher auslesen .............................................................................................................................. 20
4.2 SFR-Register des Zielsystems auslesen oder setzen .................................................................................... 21
4.3 Analogeingänge des Zielsystems auslesen .................................................................................................... 21
4.4 Inhalt einzelner Adressen auslesen ................................................................................................................ 22
4.5 Checksumme generieren ................................................................................................................................ 22
4.6 RAM-Test ........................................................................................................................................................ 22
4.7 Debug-Logfile speichern ................................................................................................................................. 25
4.8 Software-Reset auslösen ................................................................................................................................ 25
4.9 Hardware-Reset auslösen ............................................................................................................................... 25
4.10 Kommandozeilen-Funktionen.......................................................................................................................... 26
4.11 Prioritäten in der FLASHit-Konfiguration ......................................................................................................... 26
4.12 Konfiguration speichern ................................................................................................................................... 26
4.13 Software Generator ......................................................................................................................................... 27
6 Anhang .................................................................................................................................................................. 35
6.1 Mögliche Fehlermeldungen ............................................................................................................................. 35
6.2 Kommandozeilen-Funktionen im Überblick ..................................................................................................... 39
6.3 Unterstützte Controller (Auszug): .................................................................................................................... 43
6.4 Sourcen der Prüfsummen-Funktion ................................................................................................................ 44
6.5 Reset- und Bootstrap-Signale ......................................................................................................................... 45
6.6 Reset- und Bootstrap-Interface ....................................................................................................................... 45
6.7 FLASH-Anschlussarten ................................................................................................................................... 46
6.8 Unterstützte FLASH-Speicher (Auszug) ......................................................................................................... 48
6.9 Betriebsbedingungen ...................................................................................................................................... 52
1 FLASHit
1.1 Funktionsüberblick
FLASHit ermöglicht die problemlose und schnelle Programmierung von Anwendersoftware in ein
C16x-, XC16x (Infineon)- oder ST10x (ST)-Zielsystem mit externem und/oder internem FLASH-Speicher:
Optionsschalter
Checkbox
Auswahlmenü
1.4 Systemanforderungen
Zielsystem:
FLASH-Typen: Alle gängigen Typen (aktuelle Angaben: siehe Anhang und unsere Website).
Controller: C161, C164, C165, C167, XC164CS, XC161CJ, XC167CI, XE166, XE2200 (Infineon)
ST10F167, ST10F168, ST10F269, ST10R280, ST10F276 (ST) und andere
(ein externer Watchdog muss abgeschaltet sein).
Der FLASH-Speicher sollte an CS0 angeschlossen sein (siehe Anhang 7.7).
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.
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 E-Mail (Build mail...) an uns
senden oder via Fax, indem Sie die Daten ausdrucken
(Print...).
- Sie erhalten postwendend Ihren Freischalt-Code (via E-
Mail 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.
3 Programmfunktionen
3.1 Verbindung herstellen
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.
Mögliche
Baudraten des
PCs
Interne Infos
3.3 FLASHit-Arbeitsverzeichnis
FLASHit legt während einer Arbeitssitzung mehrere Dateien an:
flashit.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 müssen Sie zuvor angelegt haben.)
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.exe WORK_DIR=“c:\Program Files\FLASHit“
3.4 Programm-Priorität
Um einen möglichst reibungslosen und schnellstmöglichen Upload des zu speichernden Hex-Files in das
Zielsystem zu ermöglichen, „bemächtigt“ sich FLASHit der höchsten Programm-Priorität, die Windows zu vergeben
hat. Dies hat zur Folge, dass alle anderen Programme deutlich langsamer arbeiten.
High
Hier erreicht FLASHit die höchste Übertragungsrate.
Diese Einstellung sollte bei der Verwendung der
Standard-COM-Schnittstelle gewählt werden.
Low
Hier wird die Übertragungsrate deutlich reduziert. Diese
Einstellung sollte nur verwendet werden, wenn FLASHit
mehrfach aufgerufen werden soll oder die COM-
Schnittstelle des PCs über einen USB-RS232- oder
PCMCIA-RS232-Adapter emuliert wird. Der
Schnittstellen-Treiber des Fremdanbieters erhält somit
ausreichend Rechnerlaufzeit, um die Schnittstelle zu
emulieren.
„Expert mode“
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 (AD4
auf Masse). 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.
Ist die Option Program file into flash/Load Intel-Hex markiert, kann keine Binärdatei geflasht werden, da sie die
Intel-HEX-Struktur nicht aufweist.
Ist die Option Program file into flash/Load Bin markiert und es wird eine Intel-HEX-Datei zum Flashen
angewählt, fragt FLASHit dann noch einmal nach, ob dies auch wirklich beabsichtigt ist.
3.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:
- FLASH-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 FLASH-Typ wird von FLASHit
automatisch erkannt. Werden zwei 8-Bit-FLASH-
Speicher an einem 16-Bit-Bus verwendet, erkennt
FLASHit dies und verdoppelt entsprechend die
Größenangaben der Sektoren! Ein Auszug der zurzeit
unterstützten Typen ist unter Menüpunkt Help/Flash
types zu finden
Hinweis: Wenn der Upload-Bereich im internen RAM des Zielsystems liegt, können der FLASHit-Monitor oder die
Systembereiche (wie z. B. SFR) überschrieben bzw. zerstört werden!
3.10 Zielsystem-Infos
Durch Betätigen des Schalters Get info werden auf der Registerkarte Target CPU Informationen über das
Zielsystem angezeigt.
Processor Ziel-CPU-Typ (hier ein C164);
RP0H: Inhalt des RP0H-Registers;
Feststellung der Widerstands-
beschaltung an Port 0 (ADx System
Start Up), z. B.: „RP0H = 0xFA“
Write Control: Schreibzugriff der CPU
Ext. Bus0: Busmodus
Chipselect: Anzahl der Chipselect-Leitungen
Address lines: Adressleitungen >= A16
IDMEM: Internal Memory Info
SYSCON: SYSCON-Register
BUSCON0: BUSCON0-Register
MANUF: Hersteller
IDCHIP: System-Register (SFR)
IDCPU: System-Register (SFR)
IDPROG: System-Register (SFR)
FCPU CPU-Takt
PLL: Eingestellte PLL. PLL x fxtal= fCPU Takt
(hier wurde ein 5-MHz-Quarz
verwendet [20 MHz/4]).
Weiter erfolgt ein Test, ob an CS0 FLASH oder RAM angeschlossen und ein Zugriff auf das FLASH möglich ist. Als
Bestätigung, dass dieser Test erfolgreich war, werden die ersten 8 Bytes des FLASH-Speichers im
Fenster BUS0 test angezeigt.
Zielsystem
Ü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.
Trotzdem kann es vorkommen, dass die Ziel-CPU „von
Hand“ eingestellt werden muss (Target CPU). Die
Kombinationsmöglichkeiten, die sich durch Verwendung
von verschiedenen CPUs und FLASH-Speichern in
Verbindung mit der Anschlussart des FLASH-Speichers
an die CPU ergeben können, werden in Anhang 7.7.
FLASH-Anschlussarten aufgelistet.
Speed-Up
Je nach CPU-Power-Up-Beschaltung starten einige
CPUs mit relativ niedrigem System-Takt. Die Folge ist,
dass meistens eine serielle Verbindung mit nur 19200
Baud zustande kommt. Um das Ziel-System schneller
programmieren zu können, bietet FLASHit die
Möglichkeit, den System-Takt- und damit die Baudrate
hoch zu schalten.
Wenn das Target z.B. mit nur 5MHz System-Takt startet,
ist eine Baudrate von maximal 19200 Baud möglich.
Flash memory
Bei Auswahl der Option External flash memory stellt
FLASHit automatisch die FLASH-Anschlussart fest.
Entweder wurden ein 16-Bit-FLASH an einem 16-Bit-Bus
(mux/non mux), ein 8-Bit-FLASH an einem 8-Bit-Bus
(mux/non mux), zwei 8-Bit-FLASHes an einem 16-Bit-
Bus (mux/non mux) detektiert,
oder es wurden zwei 16-Bit–FLASHes, die je im 8-Bit-
Modus geschaltet werden und an einem 16-Bit-Bus
(mux/non mux) betrieben werden, detektiert.
Basic address:
Die Basis-Adresse des FLASH-Speichers definiert die
Adresse, an der FLASHit den FLASH-Speicher
verwendet. Normalerweise ist diese
Adresse = 0x00000 (FLASH-Speicher an CS0).
Ausnahmen:
- Der FLASH-Speicher liegt zwischen CS1 und CS4 und
wird nicht ab Adresse 0, sondern z. B. ab
Adresse 0x10 0000 verwendet.
- Der FLASH-Speicher beginnt zwar ab Adresse
0x00000, aber zur Laufzeit wird ein gespiegelter
Bereich verwendet. Damit der CPU-System-Bereich
nicht stört, wird in diesem Fall das FLASH in den
gespiegelten Adressraum geschrieben. Die Basis-
Adresse ist hier gleich der Spiegel-Adresse.
- Der interne FLASH-Speicher eines Controllers beginnt
nicht bei 0x00000 (z. B. beim XC161 beginnt der
Adressbereich ab 0xC00000). In diesem Fall stellt
FLASHit die Basic address automatisch ein.
Wenn die Applikation (Hexdaten) innerhalb des
Adressbereiches des FLASH-Speichers beginnt, gilt
eine
Basic address von 0.
Beispiel: Die Applikation beginnt bei 0x000200. Die Größe des Flashes beträgt 128k*16
(Adressbereich 0x000000 bis 0x03FFFF). Erst wenn das Flash zur Laufzeit eine Adresse > 0x03FFFF.
verwendet, muss die Flash-Basis-Adresse auf 0x040000 gesetzt werden. Bei einer Adresse > 0x07FFFF
muss die Flash-Basis-Adresse auf 0x080000 gesetzt werden usw.
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 1 bis 8 sequentiell
ab. Die mit fetter Schrift im Configuration-Fenster gekennzeichneten Parameter sind die „FLASHit-Default-
Einstellungen“.
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. Auch Intel-HEX-Dateien werden jetzt nicht (!) als Intel-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.
Beispiele für die Einstellungen der Adressen bei der CRC-Bildung über den gesamten FLASH-Bereich:
*Die Basis-Adresse des FLASHes muss hier auf 0x100000 gesetzt werden.
FLASH-Speicher an CS0:
Um die Checksumme über den kompletten
FLASH-Speicher bilden zu können, wird der Adressraum
des FLASHs einmal gespiegelt.
FLASH-Speicher an CS1, 2, 3, 4:
Um die Checksumme über den kompletten
FLASH-Speicher bilden zu können, wird der Adressraum
des FLASHs einmal gespiegelt.
Dazu muss das SFR-Register ADDRSELn (CSn) um 1
erhöht werden (Adressraum-Verdopplung)
(siehe 4.7.1).
Hinweis: In Anhang 7.4 Sourcen der Prüfsummen-Funktion werden die verwendeten Verfahren dargestellt.
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 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 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 abspeichern
4 Spezialfunktionen
FLASHit bietet über den Menüpunkt Special Functions eine Reihe von zusätzlichen Tools.
Hinweis: FLASHit bietet lediglich eine Auswahl von SFR-Registern an. Ferner findet keine Umschaltung der
Registersätze statt, je nachdem, welche CPU gewählt wurde. Bitte achten Sie bei der Anwendung dieser
Funktion darauf, dass auf einigen Ports Systemleitungen liegen! In diesem Fall kann es zu
Systemabstürzen des Targets kommen!
4.6 RAM-Test
Die RAM-Test-Funktion von FLASHit (RAM test...) bietet
die Option, einen umfangreichen Test der RAM-
Architektur des Targets vorzunehmen. Der RAM-Test
erfolgt über das Schreiben und Lesen von
Speicherzellen. Eine Reihe von logischen Fehlern kann
ermittelt werden.
Nachfolgend werden exemplarisch einige über den RAM-Test gefundene Fehler aufgezeigt:
Not tested
Nur Adressleitungen innerhalb des angegebenen
Adressraumes werden getestet.
Hinweis: Der Software-Reset kann nicht zur Kontaktaufnahme (Booten) des Targets verwendet werden! Er kann
nach dem Upload eine Applikation im Target starten.
4.10 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.
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.
Das erzeugte Programm wird im Arbeitsverzeichnis unter Demofiles mit Save as gespeichert und kann über die
Upload-Funktion von FLASHit in das Target gespeichert werden.
Nach dem Umschalten aus dem Bootstrap-Mode in den Run-Mode und einem Reset startet das Programm im
Target.
5 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.
5.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.
Ü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.
5.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
internal area und End of internal area 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.
Befehl Funktion
EXIT Das Programm wird nach der Berechnung beendet.
A1= definiert die Start-Adresse der CRC-Berechnung
A2= definiert die Start-Adresse des Systembereichs
A3= definiert die End-Adresse des Systembereichs
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)
FP= definiert den Dateninhalt eines gelöschten Flash-Bausteins
(Fill-Pattern)
HEX-FILE= definiert die Datei, über die die CRC berechnet wird
LOCAL= Die Ergebnisdatei wird in das Programmverzeichnis
geschrieben.
5.3 IO-Check
Mit IO-Check wurde ein Schnittstellentest-Tool in das FLASHit-Paket integriert, mit dem das Funktionieren des
COM-Ports (Grundlage zum Arbeiten mit FLASHit) gecheckt werden kann.
Hinweis: IO-Check kann direkt oder von FLASHit aus gestartet 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).
-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!
WARNUNG: Die Modifizierung der Ausgänge kann u. U. Hardware (PC und/oder extern angeschlossene
Geräte) zerstören!
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!
Mit diesem Schalter kann FLASHit über die eingestellte Kommandozeile direkt gestartet werden.
Mit diesem Schalter kann eine Verknüpfung mit FLASHit und der eingestellten Kommandozeile erstellt
werden.
Mit diesem Schalter kann FLASHit aus einem Visual C++-Code aufgerufen werden.
Mit diesem Schalter kann FLASHit aus einem Borland C-Code aufgerufen 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 );
Zusätzlich generiert FLASHit einen „Return-Code-File“ (result.txt) für die Auswertung durch andere Applikationen.
das hse-electronics-Team
6 Anhang
6.1 Mögliche Fehlermeldungen
Code Ret Meldung Beschreibung Mögliche Lösung
File, Modul, Lib... Nicht gefunden/geöffnet
E010 8 E010: Can't find file: *.mod Installation nicht vollständig. Bootloader konnte nicht gefunden werden (flashit.lib fehlt...) Installation überprüfen
E011 8 E011: Modul file <name> was not found Die Moduldatei <name> wurde nicht gefunden Installation überprüfen
E014 1 E014: Can't open upload file Der Upload file konnte nicht geöffnet werden Zugriffsrechte für Upload-file überprüfen.
E015 8 E015: No FLASH data found Es ist kein virtuelles Flash vorhanden, somit fehlen Daten zum Flashen. Flashtyp überprüfen
E016 E016: Can't generate Binray-Temp-File Temporäre Datei readout.bin konnte nicht erstellt werden.
E017 E017: Can't open Binray-Temp-File Temporäre Datei readout.bin konnte nicht geöffnet werden.
E018 E018: Can't generate Binray-File Binäre-Ziel-Datei konnte nicht geöffnet werden kann
E019 E019: Can't generate Intel-hex-file Intel-Hex-Ziel-Datei konnte nicht geöffnet werden
E020 8 E020: Library unit not found Flashit.lib ist nicht gefunden worden oder konnte nicht geöffnet werden. Installation überprüfen
E021 E021: Exe not found Flashit.exe wurde nicht gefunden Installation überprüfen
E022 E022: Wrong exe info Flashit.exe wurde manipuliert Installation überprüfen
E023 E023: Wrong in flashitx.lib Die Target Bibliothek wurde nicht gefunden Installation überprüfen
E024 E024: Instruction file not found Die Datei doku/Anleitung.pdf fehlt
E025 E025: Data base FLASHdat.LIB not found Die Datei FlashDat.lib wurde nicht gefunden Installation überprüfen
E026 E026: Ini-File is write protected Die Ini-Datei ist schreibgeschützt und kann daher nicht aktualisiert werden
Not supported
E040 8 E040: Sorry this CPU is not enabled at your version CPU nicht freigeschaltet (nur bei limitierten Versionen) keine
E042 E042: Internal error call hse Interner Fehler. (Lizenzkopie) hse / Lizenz auf anderem PC
E043 E043: Wrong Date (1) Datum kann nicht korrekt ermittelt werden. PC Datum überprüfen
E051 8 E051: Try to write odd number of data! In einem 16bit Target wird versucht eine ungerade Anzahl von Bytes zu Schreiben. Gerade Adressen verwenden
E052 1 E052: Upload-file is no Intel-Hex format! Die Upload-Datei entspricht nicht dem Intel-Hex Format Intel-Hex-Format verwenden
E053 1 E053: Overwrite Address Versuch, bereits definierte Daten noch einmal zu definieren (Fehler im Hexfile) Linker Einstellungen überprüfen
E056 E056: Data outside of FLASH at Address x
E058 1 E058: Checksum error in Hexfile line Prüfsummenfehler in Hexfile Zeile
E059 1 E059: Wrong blocklenght in Hexfile line Anzahl der Daten stimmt nicht mit Länge der Hex-Zeile überein
COM-Access
RAM-Access
E410 2 E410: RAM-access test failed RAM-Zugriffstest kann Write und Read sein
E420 2 E420: RAM data line test failed RAM-Test Fehler in Datenleitung
E430 2 E430: RAM addr line test failed RAM-Test Fehler in Adressleitung
E440 2 E440: RAM-cell test failed RAM-Test Fehler bei Zellen Test
E450 E450: RAM upload failed, Ex Fehler Nr. beim RAM upload
E451 2 E451: Upload failed, CRC is wrong Daten nicht korrekt zum Target übertragen
E452 2 E452: RAM-Data compare error RAM-Rücklese-Daten stimmen nicht mit Upload Daten überein
E453 2 E453: RAM CRC check failed RAM-CRC stimmt nicht mit Upload CRC überein
E455 2 E455: can not open file RAM-Upload Datei kann nicht geöffnet werden
E456 E456: Data will destroy system area Versuch ins iRAM, SFR zu schreiben
Project
Target-Connection
COM Defines COM-Port number Definiert die COM-Port Nummer 1, 2, ..., 99 COM=2
BAUD Defines baudrate Definition der Baudrate 9600, 19200, 38400, 56000, 115200 BAUD=38400
Target defines
FCONCS1 Defines SFR FCONCS1 Definiert SFR FCONCS1 0x00000 - 0x0FFFF FCONCS1=0x0021
FCONCS2 Defines SFR FCONCS2 Definiert SFR FCONCS2 0x00000 - 0x0FFFF FCONCS2=0x0021
FCONCS3 Defines SFR FCONCS3 Definiert SFR FCONCS3 0x00000 - 0x0FFFF FCONCS3=0x0021
FCONCS4 Defines SFR FCONCS4 Definiert SFR FCONCS4 0x00000 - 0x0FFFF FCONCS4=0x0021
ENABLE_CS1 Enables CS1 setting Einschalten der Buskonfigutation 1 ENABLE_CS1
ENABLE_CS2 Enables CS2 setting Einschalten der Buskonfigutation 2 ENABLE_CS2
ENABLE_CS3 Enables CS3 setting Einschalten der Buskonfigutation 3 ENABLE_CS3
ENABLE_CS4 Enables CS4 setting Einschalten der Buskonfigutation 4 ENABLE_CS4
DISABLE_CS1 Disables CS1 setting Ausschalten der Buskonfigutation 1 DISABLE_CS1
DISABLE_CS2 Disables CS2 setting Ausschalten der Buskonfigutation 2 DISABLE_CS2
DISABLE_CS3 Disables CS3 setting Ausschalten der Buskonfigutation 3 DISABLE_CS3
DISABLE_CS4 Disables CS4 setting Ausschalten der Buskonfigutation 4 DISABLE_CS4
Basis Adresse an der das Flash verwendet
BASIC-ADDR Flash basic address 0x000000 - 0xFFFFFF BASIC-ADDR=0x400000
wird.
Defines the beginnig of Definiert den System-Bereich
SYSTEM-BEG 0x00000 - 0x0FFFF SYSTEM-BEG=0x00E000
the system memory area der CPU (SFR, ESRF,...)
Defines the ending of Definiert den System-Bereich
SYSTEM-END 0x00000 - 0x0FFFF SYSTEM-END=0x00FFFF
the system memory area der CPU (SFR, ESRF,...)
RDOUT-BEG Beginn of Readout RDOUT-BEG=0x00000
RDOUT-TOP End of Readout RDOUT-TOP=0x3FFFF
PFLASH Place of flash Ort des Flashs INT or EXT PFLASH=INT
RAM Upload
Defines a path and file name for RAM Pfad-Angabe zur Datei, die ins RAM
RAM-FILE Fullpath RAM-File="c:\Test\RAM.hex"
upload geschrieben werden soll
RAM-OFFSET Load offset for RAM upload Offset für Speicherung ins RAM RAM-OFFSET=0x40000
Visible
ICONSIZE Starts FLASHit as an icon Starte FLASHIt als Icon ICONSIZE
EXPERTVIEW Start full view EXPERTVIEW
EXPRESSVIEW Start smal view EXPRESSVIEW
User Serial Number (USN)
USN_Prefix Defines the prefix of the USN Präfix der Seriennummer max. 8digits USN_Prefix=Version:
USN_Number Defines the value of the USN Wert der Seriennummer max. 8digits USN_Number=123
Startadresse, ab der die USN ins Flash
USN_Adress Defines the start-adress of the USN max. 8digits USN_Adress=0x3FFF0
geschrieben wird
USN_INC Defines autoincrement of the USN Autoincrementierung der USN USN_INC
Defines the storing of the
USN_Log Speicherung der USN USN_Log
USN into a file
Program setting
0m = RAM-Test
SEQUENCE SEQUNCE=0r
0r = RAM-Upload
Defines SECTOR- or CHIP- NO-erase
ERASE-MODE Definition des Lösch-Modus SECTOR, CHIP, NO ERASE-MODE=SECTOR
before programming
Stops and ask user Aktivierung einer zusätzlichen Abfrage ob der AskUseBeforeErase=0
AskUseBeforeErase 0, 1
before sector erase Anwender Änderungen durchführen will AskUseBeforeErase=1
Calculates a 32 bit add up Checksum after Als Prüfsumme wird die 32bit Summe aller
CHECKSUM=ADD 0x000000 - 0xFFFFFF CHECKSUM=ADD
download Bytes verwendet
Calculates a CRC16 checksum after Als Prüfsumme wird die
CHECKSUM=CRC16 0x000000 - 0xFFFFFF CHECKSUM=CRC16
download CRC16-Methode verwendet
CMPCHK Compares Checksum with value Definiert den Vergleichswert der Prüfsumme 0x000000 - 0xFFFFFF CMPCHK=0x0023456
Generates a software reset after successful Definiert die Reset-Methode
SOFTRESET SOFTRESET
programming Software-Reset
Generates a hardware reset after Definiert die Reset-Methode
HARDRESET HARDRESET
successful programming Hardware-Reset
Definiert den Sektor mit der
AutoEraseSec Erases sector at address 0x000000 - 0xFFFFFF AutoEraseSec=0x018000
Adresse zum Löschen
Definiert ein 16bit Wert, der ab Adr. ins Flash 0x000000 - 0xFFFFFF,
AutoWriteWord Writes a word at address AutoWriteWord=0x018000,0x1234
geschrieben werden soll 0x0000 - 0xFFFF
Program control
Exits FLASHit after successfull program FLASHit wird nach dem Ende der Sequenz
EXIT EXIT
sequence beendet, wenn kein Fehler auftrat
FLASHit wird nach dem Ende der Sequenz
Exits FLASHit allways after program
RETURN beendet, auch wenn ein Fehler auftrat. RETURN
sequence
Fehler siehe Returncode
AUTOSTART Starts automaticaly program sequence FLASHit startet automatisch die Sequenz AUTOSTART
WORK_DIR=j:\ini
WORK_DIR Path to work directory (ini, result) Pfad zur ini-, result, Datei Fullpath
WORK_DIR="c:\program files\flashit"
0=Idle, 1=Normal,
PRIORITY Program priority Programm Priorität PRIORITY=1
2=High, 3=Real Time
XC166
XC161, XC161CJ-16F , XC161CS-32F (Infineon)
XC164, XC164CS-16F , XC164CS-32F , XC164CM (Infineon)
XC167, XC167CI-16F, XC167CI-32F (Infineon)
XC2200
XC2287, XC2287-96F, XC2287-72F, XC2287-56F (Infineon)
XC2286, XC2286-96F, XC2286-72F, XC2286-56F (Infineon)
XC2285, XC2285-96F, XC2285-72F, XC2285-56F (Infineon)
XC2267, XC2267-96F, XC2267-72F, XC2267-56F (Infineon)
XC2264, XC2264-96F, XC2264-72F, XC2264-56F (Infineon)
XE166
XE167, XE167F-xxF66L, XE167G-xxF66L, XE167H-xxF66L, XE167K-xxF66L (Infineon)
XE164, XE164F-xxF66L, XE164G-xxF66L, XE164H-xxF66L, XE164K-xxF66L (Infineon)
ST10
ST10F163, ST10R167, ST10F167, ST10F168, ST10F169 (STMicroelectronics)
ST10F269, ST10R272, ST10F276, ST10F280 (STMicroelectronics)
ST10F271, ST10F272, ST10F273 (STMicroelectronics)
SDA6000
SDA6000, M2 (Micronas) (Supported only by FLASHit 8.x)
SDA6001 (Micronas) (Supported only by FLASHit 8.x)
// 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 );
}
// Checksum function
for (i=0; i<8; i++)
{
if ((uiCRC6 ^ ucData) & 1) uiCRC6=(uiCRC6>>1)^0xA001;
else uiCRC6 >>=1;
ucData >>=1;
}
}
return( uiCRC6 );
}
Reset- und Bootstrap-Signal auf der COM-Schnittstelle Signal nach der Schaltung in 7.6
6.7 FLASH-Anschlussarten
Auswahl der Anschlussmöglichkeiten von Flash-Speichern an einen Prozessor, die von FLASHit
unterstützt werden.*16-Bit-Datenbus
/CS0
1. Standard
16 bit Flash A0...An CPU 16–Bit-Datenbus (mux/non mux) – Chipselect wird von
16 bit BUS
der CPU generiert.
/CS0 GND
2. Flash-Speicher ist die einzige Erweiterung
16 bit Flash A0...An CPU Die Chipselect-Leitung des Flashs liegt auf Masse. Die
16 bit BUS Chipselect-Leitung der CPU kann dadurch als höhere
Adressleitung verwendet werden.
/CS0 Yo
Decoder 3. Externer Adressdecoder
16 bit Flash
A0...An
CPU Trotz des externen Adressdecoders ist der Zugriff mit
16 bit BUS FLASHit möglich, wenn der FLASH-Speicher an Ausgang
Y0 liegt und der Adressbereich bis 0xAAAA adressiert ist.
/WRL
/CS0
4. Zwei 8-Bit-FLASH-Speicher am 16-Bit-Bus
8 bit Flash A0..An Chipselect 0 der CPU selektiert zwei Speicher. Das
D0...7 Schreiben wird durch Write-High-Byte und Write-Low-
CPU Byte ermöglicht.
/WRH
8 bit Flash
16 bit BUS
D8...15
/WR
/CS0 5. Zwei 8-Bit-FLASH-Speicher am 16-Bit-Bus
8 bit Flash A0..An
Chipselect 0 der CPU selektiert zwei Speicher. Das
D0...7
Schreiben wird durch Write-Word ermöglicht.
CPU
/WR
8 bit Flash
16 bit BUS
D8...15
D0...7
Modus betrieben. Chipselect 0 der CPU selektiert zwei
CPU Bausteine. Das Schreiben wird durch Write-High-Byte
/WRH
und Write-Low-Byte ermöglicht.
16 bit Flash
im 8 bit Mode 16 bit BUS
D8...15
/WR
/CS0 7. Zwei 16-Bit-FLASH-Speicher am 16-Bit-Bus
16 bit Flash
im 8 bit Mode
A0..An Zwei 16-Bit-Flash-Speicher werden jeweils im 8-Bit-
D0...7 Modus betrieben. Chipselect 0 der CPU selektiert zwei
CPU
Speicher. Das Schreiben wird durch Write-Word
/WR
16 bit Flash
ermöglicht.
im 8 bit Mode 16 bit BUS
D8...15
8-Bit-Datenbus
/CS0
1. Standard
8 bit Flash A0...An CPU 8-Bit-Datenbus (mux/non-mux) – Chipselect wird von der
8 bit BUS
CPU generiert.
/CS0 GND
2. Flash-Speicher ist die einzige Erweiterung
Die Chipselect-Leitung des Flashs liegt auf Masse. Die
8 bit Flash A0...An CPU
Chip-Select-Leitung der CPU kann dadurch als höhere
8 bit BUS
Addressleitung verwendet werden.
Yo
/CS0 Decoder
3. Externer Adressdecoder
8 bit Flash A0...An CPU
Trotz des externen Adressdecoders ist der Zugriff mit
8 bit BUS FLASHit möglich, wenn der FLASH-Speicher am
Ausgang Y0 liegt und der Adressbereich bis 0xAAAA
adressiert ist.
/CS0
4. Ein 8-/16-Bit-FLASH-Speicher am 8-Bit-Bus
16 bit Flash
im 8 bit Mode
A0...An CPU Ein Flash-Speicher, der sowohl 8- als auch 16-Bit-
8 bit BUS
Datenbus unterstützt, wird im 8-Bit-Modus betrieben.
Chipselect 0 der CPU selektiert zwei Speicher. A0 der
CPU ist an DQ15 angeschlossen.
/CS0 GND
16 bit Flash
A0...An CPU
im 8 bit Mode
8 bit BUS
Yo
/CS0 Decoder
16 bit Flash
A0...An CPU
im 8 bit Mode
8 bit BUS
*
Hinweis: Es gibt zahlreiche Kombinationsmöglichkeiten im Zusammenhang mit den
verschiedenen CPUs und FLASH-Speichern. Daher kann keine Garantie dafür
übernommen werden, dass die hier aufgezeigten Anschlussmöglichkeiten mit allen
möglichen Kombinationen funktionieren!
6.9 Betriebsbedingungen
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.
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 info@hse-electronics.com.