Projekt Hardware Bedienung BASIC (1) BASIC (2) BASIC (3) Interna Beispiele Erweiterungen Bibliotheken Treiber Programme Download:
Bezugsquellen: Bausatz Leerplatine |
AVR-ChipBasic2: Bedienungsanleitung
V1.28 (c) 2006-2010 Jörg Wolfram
1 Rechtliches Das Programm unterliegt der GPL (GNU General Public Licence) Version 3 oder höher, jede Nutzung der Software/Informationen nonkonform zur GPL oder ausserhalb des Geltungsbereiches der GPL ist untersagt! Die Veröffentlichung dieses Projekts erfolgt in der Hoffnung, daß es Ihnen von Nutzen sein wird, aber OHNE IRGENDEINE GARANTIE, auch ohne die implizite Garantie der MARKTREIFE oder der VERWENDBARKEIT FÜR EINEN BESTIMMTEN ZWECK. Alle im Text genannten Marken sind Eigentum des entsprechenden Inhabers. Alle im Text genannten Marken sind Eigentum des entsprechenden Inhabers. 2 Die Tastatur Die vorliegende Version benötigt eine Tastatur mit deutschem Layout. Die Tastaturbelegung kann aber mittels Binär-Programm geändert werden. Das aktuell eingestellte Layout wird im Hauptmenü im unteren Bildschirmbereich angezeigt. Zur einfacheren Bedienung gibt es am unteren Bildrand 5 farbige Felder mit Funktionen, die den Tasten ESC sowie F1...F4 entsprechen. Mit einem Aufkleber etc. auf der Tastatur lassen sich so die wichtigsten Tasten schnell finden.
3 Das Hauptmenü Nach jedem Einschalten oder Reset wird für ca. 3 Sekunden der Intro-Screen angezeigt. Danach wird zum Hauptme- nü gesprungen, ausser Autostart ist aktiviert. In diesem Falle wird das eingestellte Programm automatisch gestartet. Der Intro-Screen kann jederzeit durch einen Tastendruck (außer Shift, CTRL, ALT) abgebrochen werden, in diesem Falle wird eine eingestellte Autostart-Funktion nicht ausgeführt. Ein Sonderfall ist, wenn ein LOADER-Programm installiert ist. In diesem Fall wir vor Ausführung des Autostart-Programmes das LOADER-Programm aufgerufen. Weiterhin kann durch Drücken der rechten Shift-Taste in einen kleinen "Keyboard Monitor" gewechselt werden, in dem die empfangenen Scancodes angezeigt werden. Verlassen werden kann dieser Modus nur durch einen Neustart.
Darunter gibt es noch eine Anzeige für den Systemstatus. Ganz links Zeile steht der MCU-Typ, entweder 644 für den ATMega644 oder 644P für den ATMega644P. Daneben wird das aktive Videosystem (PAL oder NTSC) angezeigt. Rechts steht die Kurzbezeichnung für die aktive Tastaturtabelle. Um die Tastaturtabelle zu ändern, muss ein entsprechen- des (Binär-) Programm geladen und gestartet werden. Zum Beispiel kann mit dem Programm "kbd_us.bin" das Tasta- turlayout auf US-englisch umgestellt werden. Dazu wird das Programm entweder per XMODEM übertragen oder vom Disk-Modul geladen. Nachdem das Programm mit der F4-Taste gestartet wurde, ändert sich antsprechend die Anzeige im Systemstatus. In der untersten Zeile stehen die möglichen Kommandos, die Farben entsprechen den Tasten ESC und F1...F4 und haben folgende Funktionen:
3.1 Programm editieren (F1) Ruft den eingebauten Editor auf und lädt das gewählte Programm. Dies funktioniert nur bei BASIC und leeren Programmen. Binärprogramme und Binärbibliotheken lassen sich nicht editieren. % 3.2 Programm speichern (F2) Diese Funktion bezieht sich auf das gerade ausgewählte Programm. Wird sie aufgerufen und ist kein formatierter Dataflash angeschlossen, erscheint nur eine Fehlermeldung. Wenn ein formatierter Dataflash angeschlossen ist, kann der Platz, wohin die Datei gespeichert werden soll mit der Dateiauswahlbox bestimmt werden:
3.3 Programm laden (F3) Diese Funktion bezieht sich auf das gerade ausgewählte Programm. Wird sie aufgerufen und ist kein formatierter Dataflash angeschlossen, erscheint die oben gezeigtee Fehlermeldung. Wenn ein formatierter Dataflash angeschlossen ist, kann das Programm mit der Dateiauswahlbox bestimmt werden:
Mit den 3 Symbolen in der dritten Zeile können der Flashmanager, die Config-Page und ein Programminfo angezeigt werden. Näheres dazu in den entsprechenden Abschnitten. 3.4 Programm starten (F4) Startet das gewählte Programm. Dies funktioniert sowohl bei BASIC als auch nativen AVR Programmen. Nach Beendi- gung oder Abbruch des Pogrammes (Fehler, CTRL-C) erscheint am Rand ein rot-weisses Streifenmuster. Mit der ESC Taste wird wieder zum Menu zurückgekehrt. An dieser Stelle kann auch noch ein Screenshot gemacht werden, allerdings wird dabei die Randfarbe generell als schwarz ausgegeben. Dies gilt auch, wenn ein Programm aus dem Editor heraus gestartet wird. [1cm] Die Tasten F1...F4 haben eine Zweitfunktion, wenn zusätzlich die linke CTRL oder STRG Taste gedrückt wird. Die Texte in den 5 Farbfeldern ändern sich dementsprechend:
3.5 Programm kopieren (CTRL+F1) Um ohne ein Dataflash-Modul verschiedene Programmversionen zu testen lässt sich jedes Programm an einen der 8 Programmplätze kopieren. Das Kopierziel lässt sich mit den Cursortasten auswählen, mit der ENTER-Taste wird ohne nachzufragen kopiert und mit der ESC-Taste wird der Vorgang abgebrochen.
3.6 Programm senden (CTRL+F2) Mit dieser Funktion lässt sich ein Programm im Binärformat via X-Modem senden. Damit kann z.B. ein Programm zum AVR-Handheld übertragen werden. Für native AVR-Programme ist dies auch der einzige Weg zur Datenübertragung in Senderichtung, da AVR Programme nicht editiert werden können. Zum Ablauf ist zuerst das Senden zu aktivieren und anschließend auf der Empfängerseite die Übertragung zu starten. 3.7 Programm empfangen (CTRL+F3) Mit dieser Funktion lässt sich ein Programm im Binärformat via X-Modem empfangen. Für native AVR-Programme ist dies auch der einzige Weg zur Datenübertragung in Empfangsrichtung, da AVR Programme nicht editiert werden können. Zum Ablauf ist zuerst die Senderseite zu aktivieren und anschließend mit CTRL+F3 die Übertragung zu starten. 3.8 Programm löschen (CTRL+F4) Native AVR Programme lassen sich nicht mittels Editor löschen, dies kann aber mit der Tastenkombinatiion CTRL+F4 geschehen. Nach einer Sicherheitsabfrage wird dann das Programm gelöscht. Selbstverständlich können auf diesem Wege auch BASIC Programme gelöscht werden.
3.9 Binärprogramme, Bibliotheken und Treiber Binärprogramme, zu denen auch Bibliotheken und Treiber gehören, lassen sich auf jeden der 8 Programmplätze laden. Treiber funktionieren jedoch nur, wenn sie auf Programmplatz 8 geladen werden. Treiber funktionieren jedoch nur, wenn sie auf Programmplatz 8 geladen werden. 4 Der Flashmanager Der Flash-Manager (Symbol DFLASH im Hauptmenü) funktioniert natürlich nur dann, wenn auch ein Dataflash-Modul angesteckt ist. Ansonsten gibt es nur die Möglichkeit zum Rescan und Abbruch. Wurde ein Dataflash-Modul (es funktionieren nur 4 und 8 MBit Bausteine der serie AT45) erkannt, wird auf gültige Formatierung getestet. Formatieren?? Ja das gibt es hier auch, neben dem Blockstatus werden auch solche Dinge wie Schreibzähler angelegt. In der untersten Zeile stehen die möglichen Kommandos, die Farben entsprechen den Tasten ESC und F1...F4 und haben folgende Funktionen:
4.1 Info (F1) Die freien Dateien/Blöcke werden gezählt und in einer Infobox angezeigt.
4.2 Backup (F2) Wenn ein formatierter Dataflash angeschlossen ist, kann der Speicherplatz mit der Dateiauswahlbox bestimmt werden:
4.3 Restore (F3) Wird sie aufgerufen und ist kein formatierter Dataflash angeschlossen, erscheint die oben gezeigtee Fehlermeldung. Wenn ein formatierter Dataflash angeschlossen ist, kann das zu lesende Backup mit der Dateiauswahlbox bestimmt werden:
Mit der Taste CTRL oder STRG können zusätzliche Funktionen ausgewählt werden, wobei nicht immer alle Funktionen verfügbar sind (z.B. wenn kein Dataflash-Modul vorhanden oder dieses nicht formatiert ist.
4.4 Delete (CTRL + F1) Mit dieser Funktion können beliebige Dateien auf dem Dataflash-Modul gelöscht werden. Dazu wird wieder die Dateiauswahlbox angezeigt. Wird eine Datei gewählt, erscheint noch eine Abfrage, ob die Datei auch wirklich gelöscht werden soll. Mit der ESC Taste kann abgebrochen werden. 4.5 Format (CTRL + F4) Normalerweise sollte ein Dataflash-Modul nur einmal formatiert werden. Denn beim Formatieren werden auch vorhandene Schreibzähler mit zurückgesetzt. vorhandene Schreibzähler mit zurückgesetzt. 5 Das Konfigurationsmenü Auf der Config-Page können verschiedene Einstellungen vorgenommen werden.
5.1 Die Belegung der Funktionstasten Die gerade aktive Funktion ist invertiert dargestellt, die Auswahl erfolgt über die Cursor-Hoch und Cursor-Runter Tasten. In der untersten Zeile stehen die möglichen Kommandos, die Farben entsprechen wieder den Tasten ESC und F1...F4 und haben folgende Funktionen:
5.1.1 Exit (ESC) Mit dieser Taste werden die aktuellen Einstellungen verworfen und zum Hauptmenü zurückgekehrt. 5.1.2 Change (F1) Mit jedem Tastendruck ändert sich die aktuell ausgewählte Einstellung. 5.1.3 Serielle Geschwindigkeit An dieser Stelle kann die Geschwindigkeit der seriellen Schnittstelle zwischen 1200 und 2400 Bps umgeschaltet werden. Mit dem BASIC-Befehl BAUD kann die Geschwindigkeit im Programm temporär verstellt werden, nach Ende des Programmes wird wieder auf den hier eingestellten Wert zurückgestellt. 5.1.4 I2C-Geschwindigkeit Hier kann die Geschwindigkeit der I2C-Schnittstelle zwischen 100 und 400 kHz umgeschaltet werden. Die meisten I2C-Bausteine kommen mit 400kHz zurecht, aus Kompatibilitätsgründen kann auch die langsame Geschwindigkeit genutzt werden. 5.1.5 SPI-Geschwindigkeit Hier kann die Geschwindigkeit der SPI-Schnittstelle zwischen 156 kHz und 5 MHz umgeschaltet werden. 5.1.6 EEPROM Adresse Hiermit lässt sich die EEPROM-Adresse für das Daten-EEPROM einstellen (XPOKE/XPEEK). 5.1.7 Zeilenende Mit dieser Taste kann die Art des Zeilenendes für die serielle und parallele Schnittstelle festgelegt werden. Möglich sind LF only (Unix/Linux), CR only (Mac) und CR+LF (Windows). 5.1.8 Serielles Interface - Typ Möchte man z.B. einen anderen RS232 Pegelwandler als die vorhandene Schaltung verwenden, kann dies hier umgeschaltet werden. Simple ist die original-Schaltung, mit Standard funktionieren RX und TX wie bei jedem anderen UART. 5.1.9 Serielles Interface - Eingangspin Da die ursprüngliche Beschaltung der seriellen Schnittstelle schon den TX1-Pin (PD3) des ATMega644P belegt, gibt es hier die Möglichkeit, den Eingangspin der seriellen System-Schnittstelle zwischen PD1 (notwendig für ATMega644P) und PD3 (Kompatibilitätsmodus) umzuschalten. Die Umschaltung ist für beide Typen möglich, allerdings lässt sich die zweite serielle Schnittstelle des 644P im Kompatibilitätsmodus nicht benutzen. 5.1.10 Autostart Wenn im Intro-Screen keine Taste gedrückt wird, kann ein Programm automatisch gestartet werden. Der in früheren Versionen vorhandene Autostart-Jumper wird nicht mehr abgefragt und sollte unbedingt offengelassen werden. Wählbar sind die Programme 1...7 sowie eine Dekativierung der Autostart-Funktion. 5.1.11 Save (F2) Mit dieser Taste werden die aktuellen Einstellungen gespeichert und ein Neustart ausgeführt, um das System neu zu initialisieren. 6 Der Fullscreen-Editor
6.1 Spezielle Tastenfunktionen Die folgenden Tasten / Tastenkombinationen haben spezielle Funktionen:
7 Serieller Programmtransfer 7.1 Kommunikationsparameter Für die Funktionen der seriellen Schnittstelle sollte am PC folgendes eingestellt werden 8 Bit --- 1200/2400 Bps --- no Parity --- 2 Stopp-Bits Für den Programmtransfer aus dem Editor wird normale Textübertragung verwendet, ansonsten das X-Modem Protokoll. Unter Windows kann man z.B. das Hyperterminal verwenden (Text senden/aufzeichnen) verwenden, unter Linux minicom oder das Program chiptrans.pl im Examples-Ordner. Das Programmende wird mit einem "#" als erstes Zeichen in der Zeile gekennzeichnet. 7.2 Senden zum AVR (BASIC-Programmtext)
7.3 Empfangen vom AVR (BASIC-Programmtext)
7.4 Senden zum AVR (Binär-Dateien)
7.5 Empfangen vom AVR (Binärdateien)
7.6 Nutzung der Screenshot-Funktion Für den Screenshot kann das Programm screenshot.pl im tools-Verzeichnis benutzt werden. Es benötigt ImageMagick und wird mit "./screenshot.pl dateiname.endung" aufgerufen. Danach kann dann der Screenshot vom Controllerboard mittels rechts CTRL+P ausgelöst werden. Defaultmäßig ist der neue 16-Farb Modus eingestellt, um kompatibel zur 8-Farb Ausgabe zu sein, muß vor dem Datei-namen als Parameter -c8 angegeben werden. Der Screenshot im Videomode 7 ist nur als Bulk-Transfer realisiert, bei dem die Treiber-ID, die Palette und der gesamte Videospeicher übertragen werden. Defaultmässig sind bei den Tools 2400 Bps und /dev/ttyS0 als Schnittstelle eingestellt, bei Bedarf muß das Perl-Script entsprechend abgeändert werden. Eine Alternative dazu ist das Programm konvert.pl. Dieses wandelt z.B. mit einem Terminalprogramm eingefangene Screenshots in Bilddateien um. Die bedienung ist gleich dem Screenshot-Programm, allerdings wird als erster Parameter die zu wandelnde Datei angegeben. Screenshot-Programm, allerdings wird als erster Parameter die zu wandelnde Datei angegeben. 8 Der integrierte Monitor/Debugger ChipBasic2 enthält auch einen kleinen Monitor zum Debuggen. Augerufen wird er mit der Taste F12 während des Programmlaufes oder mit einer BREAK-Anweisung im Programm. 8.1 Der Hauptbildschirm
Danach folgt im linken Teil des Bildschirms die Anzeige aller Variablenwerte und rechts daneben der Stack. Jede FOR-Schleife und jedes GOSUB erzeugt einen Eintrag auf dem Stack. Unter der Variablenliste wird der Status der parallelen Schnittstelle angezeigt. Zuerst die Pin-Nummern (1 entspricht D0), darunter die Datenrichtung (I oder O) und ganz unten der aktuelle Pegel. In der untersten Zeile stehen die möglichen Kommandos, die Farben entsprechen wieder den Tasten ESC und F1...F4 und haben folgende Funktionen:
8.2 Die Array-Ansicht
9 System-Update (Bootloader) Damit für jedes Update nicht immer ein Programmer benötigt wird, enthält AVR-ChipBasic2 einen eingebauten Bootloader. Ist der Computer über ein serielles Kabel mit einem anderen Computer verbunden, erscheint beim Einschalten nicht sofort der Intro-Screen, sondern zuerst für kurze Zeit ein schwarzer Bildschirm mit einer grünen Schriftzeile am oberen Rand: AVR-ChipBasic2 (F11=Update Sys) Für ein System-Update sollte nun wie folgt vorgegangen werden:
created with latex2web.pl v0.57 © 2006-2010 Joerg Wolfram |