dutch english
  Hauptseite Projekte Elektronik Möbelbau Rezepte Corgies Über mich
  Elektronik 80c552 µC-Board Mainboard Vorverstärker Endstufe Platinen herstellen Werkzeuge
80c552 µC-Board
Speicheraufbau
Schaltplan
Software
GAL
Platine

Software

Download

Die Software für dieses Board kann als komplettes Paket von der Elektor-Homepage geladen werden unter dem Namen 030042-11.zip. Da der Controller selber keinen Bootstraploader hat, muss dieser im Flash liegen und muss der Flash also einmal, vor dem ersten Einsetzen, extern programmiert werden. In der Datei Flash552.hex im Verzeichnis Flash ist das Betriebssystem OS552 (eine angepasste Version von OS535 von Wickenhäuser) und ein kleines hello-world-Programm untergebracht. Nachdem der Flash programmiert und eingesetzt ist, ist das Board betriebsbereit.

Betriebssystem

Zentrales Element der Software ist das Betriebssystem OS552. Dieses ermöglicht es, auf dem Board zu debuggen und den Flash in-circuit zu programmieren. Direkt nach dem Start wird das Betriebssystem gestartet, das Board befindet sich im Debugmodus. Es schickt über die serielle Schnittstelle einen Befehl an den PC. Läuft dort der Debugger oder der FlashMon, so wird ein Befehl zurückgeschickt und bleibt das Board im Debugmodus. Dieser Zustand wird durch die blinkende LED angezeigt. Kommt dieser Befehl vom PC nicht, dann überprüft das OS552, ob im Flash an der Adresse 0x00000 der Wert 0x02 (LJMP) liegt. Ist das der Fall, so geht das System davon aus, dass ein gültiges Benutzerprogramm vorliegt und schaltet in den Runmodus. Das Programm ab Flashadresse 0x00000 wird für den Controller an Adresse 0x0000 als Programmspeicher gemappt und gestartet. In der Hex-Datei Flash552.hex ist als Userprogramm ein hello-world-Programm integriert. Es gibt auf einem Terminal (z.B. Hyperterminal in Windows) den Text "Hello World" aus, der nach einem Tastdruck wiederholt wird.

In-circuit-Programmierung

Das Programm FlashMon aus der Entwicklungsumgebung von Wickenhäuser erlaubt es, den Flashspeicher in der Schaltung zu programmieren. Bevor dies getestet werden kann, muss in dem bin-Verzeichnis der Entwicklungsumgebung die .bix-Datei durch die in der ZIP-Datei ausgetauscht werden.

Wenn beim Einschalten des Boards dieses über ein serielles Kabel mit dem PC verbunden ist und dort das Programm FlashMon läuft, dann wird das Betriebssystem auf dem Board in den Programmiermodus geschaltet. Jetzt kann mit dem FlashMon der Flash gelöscht und neu programmiert werden. Beim ersten Befehl wird die .bix-Datei in das RAM das Boards geladen, es handelt sich dabei um den Flashloader, der die Befehle von FlashMon in Empfang nimmt und den Flash löscht oder neu programmiert. Mit dem Befehl Flash löschen wird nur der Userbereich des Flashs gelöscht, das OS552 bleibt erhalten.

Debugging

Mit dem Softwaredebugger SLD51 kann Software in das RAM des Boards geladen und getestet werden. Es werden die üblichen Eigenschaften wie single-Step, Run und Breakpoints unterstützt. Außerdem können Registerinhalte untersucht werden. Wenn der SLD51 läuft beim Einschalten des Boards, dann schaltet dieses in den Debugmodus und wartet auf Befehle vom Debugger.

Valid XHTML 1.0 Transitional
Valid CSS!
01.11.2010 19:05u