projects:4e4th:start
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
projects:4e4th:start [2018-05-11 14:32] – [Quelltext Upload via Terminal] mka | projects:4e4th:start [2022-03-06 22:22] (aktuell) – [Revisons-Geschichte] mka | ||
---|---|---|---|
Zeile 92: | Zeile 92: | ||
(evtl. flow control noch per Menü deaktivieren) | (evtl. flow control noch per Menü deaktivieren) | ||
- | Oder gleich [[http://www.forth-ev.de/wiki/ | + | Oder gleich [[https://wiki.forth-ev.de/ |
Zeile 149: | Zeile 149: | ||
//Alle Forthworte dort in den Beispielen sind GROSS geschrieben. Dem 4e4th ist egal ob du GROSSE oder kleine Buchstaben verwendest. Dieses Verhalten wird //case insensitiv// | //Alle Forthworte dort in den Beispielen sind GROSS geschrieben. Dem 4e4th ist egal ob du GROSSE oder kleine Buchstaben verwendest. Dieses Verhalten wird //case insensitiv// | ||
- | + | ===== Kleines Glossar | |
- | ===== Dein Programm sichern ===== | + | |
- | + | ||
- | + | ||
- | Tippe einfach '' | + | |
- | + | ||
- | Mit Hilfe eines Programmers kann man das Flash auslesen, und das Image davon auf dem PC in eine Datei sichern. | + | |
- | + | ||
- | Tippe '' | + | |
- | + | ||
- | //Es gibt eine Besonderheit im Umgang | + | |
- | // | + | |
- | + | ||
- | + | ||
- | ===== Wenn nichts mehr geht ===== | + | |
- | + | ||
- | + | ||
- | Dann hilft nur noch den Forthkern erneut zu brennen. Das Ur-Image deines Forth hast du ja noch. | + | |
- | + | ||
- | In Windows braucht es dazu nichts weiter als den Programmer aufzurufen und die dort schon eingestellte Quelle erneut in den chip zu brennen. zB mit AUTOPROG beim FET-Pro430 Programmer. Es muss nichts umgesteckt werden. | + | |
- | + | ||
- | Der Programmer benutzt den Port USB HID00xx als Verbindung zum LaunchPad, die über die gleiche USB Verbindung realisiert ist wie die serielle zum Terminal. Das Terminal kann einfach geöffnet bleiben. | + | |
- | + | ||
- | Beende den Brennvorgang im FET-Pro430 mit einem Klick auf das dortige " | + | |
- | ===== Forth Kern selbst erstellen ===== | + | |
- | + | ||
- | Wer den 4e4th-Forth-Kern bearbeiten will, kann das Projekt clonen. https:// | + | |
- | + | ||
- | Dort im Repository liegt das aktuelle Projekt. Die Beschreibungen (readme.430) wie man das Forth selbst herstellen kann, und der Quellcode (*.asm) um ein 4e4th05a.hex mit dem Naken Assembler zu machen, sind dabei. | + | |
- | ===== Glossar | + | |
| | ||
Zeile 187: | Zeile 158: | ||
| | ||
- | CSETB m adr -- set bits im byte an der Adresse mittels Bit-Maske | + | CSETB ( m adr -- ) |
- | CCLRB m adr -- clear bits im byte an der Adresse mittels Bit-Maske | + | CCLRB ( m adr -- ) |
- | RED -- m adr red LED Bit-Maske und Port1 Adresse | + | RED ( -- m adr ) |
- | GREEN -- m adr green LED Bit-Maske und Port1 Adresse | + | GREEN ( -- m adr ) |
- | S2? -- f test Schalter S2, true ist Schalter gedrückt | + | S2? ( -- f ) |
| | ||
Zeile 212: | Zeile 183: | ||
Hier einige Beispiele wie die LEDs damit ein und ausgeschaltet werden können. (Den Umgang mit Forth auf der Kommandozeile kennst du schon? Sonst mach erst einige grundlegende Übungen. http:// | Hier einige Beispiele wie die LEDs damit ein und ausgeschaltet werden können. (Den Umgang mit Forth auf der Kommandozeile kennst du schon? Sonst mach erst einige grundlegende Übungen. http:// | ||
- | RED CCLRB --> rote LED geht aus. | + | RED |
GREEN CCLRB --> grüne LED geht aus. | GREEN CCLRB --> grüne LED geht aus. | ||
- | RED CSETB --> rote LED geht an. | + | RED |
GREEN CSETB --> grüne LED geht an. | GREEN CSETB --> grüne LED geht an. | ||
Zeile 220: | Zeile 191: | ||
DECIMAL | DECIMAL | ||
- | : BLINK | + | |
- | BEGIN | + | \ Application example. |
+ | | ||
+ | BEGIN | ||
RED CSETB GREEN CCLRB 100 MS | RED CSETB GREEN CCLRB 100 MS | ||
RED CCLRB GREEN CSETB 100 MS | RED CCLRB GREEN CSETB 100 MS | ||
- | | + | |
+ | KEY DROP ; \ Consume last key to avoid terminal echo. | ||
+ | |||
+ | Um so ein Applikation nach einem Reset des LaunchPad automatisch zu starten genügt es SAVE auszuführen. Es startet immer das letzte Wort. Also MAIN in diesem Fall: | ||
+ | |||
+ | \ SAVE last word as autostart routine. | ||
+ | : MAIN ( -- ) | ||
+ | BLINK | ||
+ | QUIT ; \ Quit application to enter forth. | ||
+ | |||
+ | SAVE | ||
- | Um deine blink Applikation nach einem reset des LaunchPad automatisch zu starten genügt es SAVE auszuführen. | + | Man tut gut daran einen Ausstieg aus der App zu programmieren, |
- | + | BEGIN < | |
- | Man tut gut daran irgend | + | ist beliebt um aus so einer Hauptschleife, |
Zeile 238: | Zeile 221: | ||
Falls du mit der MCU auf deinem LaunchPad vertrauter werden möchtes, könnten dir [[.: | Falls du mit der MCU auf deinem LaunchPad vertrauter werden möchtes, könnten dir [[.: | ||
+ | |||
+ | ===== Dein Programm sichern ===== | ||
+ | |||
+ | Tippe einfach '' | ||
+ | |||
+ | Mit Hilfe eines Programmers kann man das Flash auslesen, und das Image davon auf dem PC in eine Datei sichern. | ||
+ | |||
+ | Tippe '' | ||
+ | |||
+ | //Es gibt eine Besonderheit im Umgang mit dem FLASH in MSP430 MCUs: Das FLASH kann immer nur 1x beschrieben werden! Ist also nicht so komfortabel wie RAM oder FRAM. Praktisch gesehen bedeutet das Programmabstürze, | ||
+ | // | ||
+ | |||
+ | ===== Wenn nichts mehr geht ===== | ||
+ | |||
+ | Dann hilft nur noch den Forthkern erneut zu brennen. Das Ur-Image deines Forth hast du ja noch. | ||
+ | |||
+ | In Windows braucht es dazu nichts weiter als den Programmer aufzurufen und die dort schon eingestellte Quelle erneut in den chip zu brennen. zB mit AUTOPROG beim FET-Pro430 Programmer. Es muss nichts umgesteckt werden. | ||
+ | |||
+ | Der Programmer benutzt den Port USB HID00xx als Verbindung zum LaunchPad, die über die gleiche USB Verbindung realisiert ist wie die serielle zum Terminal. Das Terminal kann einfach geöffnet bleiben. | ||
+ | |||
+ | Beende den Brennvorgang im FET-Pro430 mit einem Klick auf das dortige " | ||
+ | ===== Forth Kern selbst erstellen ===== | ||
+ | |||
+ | Wer den 4e4th-Forth-Kern bearbeiten will, kann das Projekt clonen. https:// | ||
+ | |||
+ | Dort im Repository liegt das aktuelle Projekt. Die Beschreibungen (readme.430) wie man das Forth selbst herstellen kann, und der Quellcode (*.asm) um ein 4e4th05a.hex mit dem Naken Assembler zu machen, sind dabei. | ||
====== Voraussetzungen ====== | ====== Voraussetzungen ====== | ||
Zeile 303: | Zeile 312: | ||
Das Image 4e4th05a.hex findest du bei GitHub - siehe Abschnitt " | Das Image 4e4th05a.hex findest du bei GitHub - siehe Abschnitt " | ||
- | == Windows XP und Windows | + | == Windows XP, 7. 10 == |
FET-Pro430 Lite version FREE. http:// | FET-Pro430 Lite version FREE. http:// | ||
+ | (Update 08.08.2020: Nicht mehr ganz " | ||
Stelle das gewünschte Image ein (//open code file//) und den Pafd dorthin, wähle die richtige MCU aus (// | Stelle das gewünschte Image ein (//open code file//) und den Pafd dorthin, wähle die richtige MCU aus (// | ||
Zeile 379: | Zeile 389: | ||
EXIT - nun ja, damit wird diese Anwendungsebene verlassen und der ausgelesene Speicherinhalt einfach nur verworfen. | EXIT - nun ja, damit wird diese Anwendungsebene verlassen und der ausgelesene Speicherinhalt einfach nur verworfen. | ||
- | **!!Achtung!!** Es wird der komplette Flash-Speicher ausgelesen, also //auch// der Bereich Info-A. Der darf aber **NICHT** in die nächste MCU gebrannt werden, denn dort sind ja die Chip-spezifischen Eichdaten hinterlegt. Aber keine Sorge, der FET-Pro430 fragt nach ob Info-A tatsächlich überschrieben werden soll. Da wird der Info-A Bereich dann wieder ausgeklammert. | + | **!!Achtung!!** Es wird der komplette Flash-Speicher ausgelesen, also //auch// der Bereich Info-A. Der darf aber **NICHT** in die nächste MCU gebrannt werden, denn dort sind ja die Chip-spezifischen Eichdaten hinterlegt. Aber keine Sorge, der FET-Pro430 fragt nach, ob Info-A tatsächlich überschrieben werden soll, falls ihr das vorhaben solltet. Macht man natürlich nicht, und so wird der Info-A Bereich dann wieder ausgeklammert. |
Eingestellt wird das im FET-Pro430 //Setup// unter //Memory Options//. Wer will kann dort auch den //Read Address Range// selbst bestimmen. Statt //All Memory// gibt es dort verschiedene Optionen und auch die Möglichkeit einzelne Segmente auszuwählen. | Eingestellt wird das im FET-Pro430 //Setup// unter //Memory Options//. Wer will kann dort auch den //Read Address Range// selbst bestimmen. Statt //All Memory// gibt es dort verschiedene Optionen und auch die Möglichkeit einzelne Segmente auszuwählen. | ||
Zeile 387: | Zeile 397: | ||
===== POR Test ===== | ===== POR Test ===== | ||
- | Verbinde zwei Mingnon 1,5V Batterien zu 3V als externe Stromversorgung. An der Brücke J3 die jumper VCC, TEST und RST abziehen. Stecke dein 3V Batteriepack an die externe Versorgung des LaunchPad (J6). Danach kann man POR (power on/ | + | Verbinde zwei Mingnon 1,5V Batterien zu 3V als externe Stromversorgung. An der Brücke J3 die jumper VCC, TEST und RST abziehen. Stecke dein 3V-Batteriepack an die externe Versorgung des LaunchPad (J6). Danach kann man POR (power on/ |
Zeile 450: | Zeile 460: | ||
====== Danksagung ====== | ====== Danksagung ====== | ||
- | Ich danke Brad Rodriguez für seine grundlegende Arbeit des CamelForth. Und Dirk Brühl für seine unermüdliche und selbstlose Förderung des 4E4th Projektes, indem er die Hardware beschaffte für viele Tester in der Forth Gesellschaft, und mit seinen Ideen und Tips ermutigte weiter zu machen bis das CamelForth auf dem LaunchPad stabil lief. | + | Ich danke Brad Rodriguez für seine grundlegende Arbeit des CamelForth. Und Dirk Brühl für seine unermüdliche und selbstlose Förderung des 4E4th Projektes, indem er die Hardware beschaffte für viele Tester in der Forth Gesellschaft. Und mit seinen Ideen und Tips mich ermutigte weiter zu machen, bis das CamelForth auf dem LaunchPad stabil lief. |
mk 14.03.2012 | mk 14.03.2012 | ||
- | Und allen die seit der Forthtagung 2012 Anfang März halfen das 4e4th zu debuggen. mk 30.03.2012 | + | Und sodann gilt mein Dank allen, die seit der Forthtagung 2012 Anfang März, halfen, das 4e4th zu debuggen. |
+ | mk 30.03.2012 | ||
====== Links ====== | ====== Links ====== | ||
Zeile 472: | Zeile 483: | ||
====== Revisons-Geschichte ====== | ====== Revisons-Geschichte ====== | ||
- | 3/2017: 4e4th Release0.34 wird von mir (mk) nicht mehr unterstützt! | + | 4/2018: Inzwischen gibt es ein 4e4th05a. Es baut auf CamelForth 0.5a auf, assembliert mit dem Naken Assembler. Das es nun den Nachfolge-Release doch gibt, ist Juergen Pintaske zu verdanken. Er hat unermüdlich dafür gesorgt, Literatur dafür zusammenzustellen, |
+ | |||
+ | 3/2017: 4e4th Release0.34 wird von mir (mk) **nicht** mehr unterstützt! | ||
Das hat mehrere Gründe: | Das hat mehrere Gründe: | ||
Zeile 478: | Zeile 491: | ||
* Camelforth, und damit auch 4e4th, wurde erstellt in der IAR Embedded Workbench, eine proprietäre Software, die seither immer wieder verändert worden ist. Damit kann man (ich) nicht Schritt halten in der " | * Camelforth, und damit auch 4e4th, wurde erstellt in der IAR Embedded Workbench, eine proprietäre Software, die seither immer wieder verändert worden ist. Damit kann man (ich) nicht Schritt halten in der " | ||
* Das Projekt lag auf einem Server der Forth-Gesellschaft und war in einem SVN-Repository angelegt. Neuere SVN-Versionen waren damit nicht mehr kompatibel. | * Das Projekt lag auf einem Server der Forth-Gesellschaft und war in einem SVN-Repository angelegt. Neuere SVN-Versionen waren damit nicht mehr kompatibel. | ||
- | * Der Versuch das nach sourceforge zu bringen ist auch gescheitert, | + | * Der Versuch das nach sourceforge zu bringen ist auch gescheitert, |
* Alles in allem komme ich da nicht mehr hinterher. Drum ist damit nun einfach Schluß. | * Alles in allem komme ich da nicht mehr hinterher. Drum ist damit nun einfach Schluß. | ||
- | Leute, nehmt **noForth**, | + | Leute, nehmt **noForth**, |
http:// | http:// | ||
- | |||
- | 4/2018: Inzwischen gibt es ein 4e4th05a. Es baut auf CamelForth 0.5a auf, assembliert mit dem Naken Assembler. Das ist aus Gründen der Kompatibilität zu existierender Literatur erfolgt. Wer will kann es nun benutzen. Das ganze Projekt findest du auf https:// | ||
- | |||
- | (mk20180511) | ||
projects/4e4th/start.txt · Zuletzt geändert: 2022-03-06 22:22 von mka