Quantcast
Channel: MSP430 Technical Forums
Viewing all articles
Browse latest Browse all 2077

Forth on the MSP430

$
0
0

I have been intrigued with Forth since I was at school in the early 80s.

 

There has been a renewed interest in Forth as a lightweight language with lightweight development tools - especially in these days of open source , where there is a backlash against the huge IDE tool chains needed to develop and debug code - even on the smallest of microcontrollers.

 

As part of my recent investigation of MSP430 I have found a number of free, open source Forth implementations - which may be worth a look.

 

1. Fast Forth by Jean Michel Thoorens   https://gitlab.com/Jean-Michel/FastForthForMSP430fr5xxx

 

This is coded in MSP430 assembly language, is aimed at the newer MSP430 devices with FRAM and has the unique ability to mix Forth and asm in the source code.

 

As a result of clever coding in asm - it really is fast, and has some nice features.

 

It comes with an integral symbolic assembler, and support for accessing a SD card.

It needs a minimum of 8K to 11K of FRAM - depending on the build options selected.

 

It communicates with the PC using TeraTerm (or similar) at an astounding 921600 baud. It can load and compile Forth source code faster with a $2 USB- serial adaptor, faster than a FET can load a hex file.

 

2.  Mecrisp - By Matthias Koch  http://mecrisp.sourceforge.net/

 

Another Forth written in native MSP assembly language.  (ARM Cortex version also available).  Out of the box versions available for the following G and FR processors - plus a special for the MSP430F1612 on the G2 Launchpad

 

  • MSP430F2274 (9600 Baud, 8 MHz, TX on P3.4, RX on P3.5)
  • MSP430G2553 (9600 Baud, 8 MHz, TX on P1.2, RX on P1.1)
  • MSP430G2955 (9600 Baud, 8 MHz, TX on P3.4, RX on P3.5)
  • MSP430G2855 (9600 Baud, 8 MHz, TX on P3.4, RX on P3.5)
  • MSP430G2755 (9600 Baud, 8 MHz, TX on P3.4, RX on P3.5)
  • MSP430F5529 (115200 Baud, 8 MHz, TX on P4.4, RX on P4.5)
  • MSP430FR4133 (115200 Baud, 8 MHz, TX on P1.0, RX on P1.1)
  • MSP430FR5969 (115200 Baud, 8 MHz, TX on P2.0, RX on P2.1)
  • MSP430FR6989 (115200 Baud, 8 MHz, TX on P3.4, RX on P3.5)
  • Special Mecrisp for MSP430F1612 with initialisations for Launchpad hardware is included to conquer your Launchpad completely.

 

Matthias is working on a version for the new MSP430FR2433 device

 

3.  4E4th by Dirk Bruehl & Michael Kalus   http://www.4e4th.com/

 

An educational package aimed at high-school/university students or makers/hobbyists. Runs on G2 LaunchPad.

Comes with a simple GUI to allow saving and loading of source code.  Versions for FRAM based MSP430 devices available on request.

 

Dirk Bruehl describes the package in his 2012 EuroForth conference paper

 

http://www.complang.tuwien.ac.at/anton/euroforth/ef12/papers/bruehl.pdf

 

4. Camel Forth by Brad Rodriguez      http://www.camelforth.com/download.php?view.32

 

Brad has written extensively about the mechanics of writing Forth interpreters over the years, and was probably one of the first to port Forth to the MSP430.   It uses Mike Kohn's "Naken" lightweight cross assembler.

 

 

There are other MSP430 Forth implementations available AmForth,  eForth and MPE VFX Forth - with a cross platform GUI for Win, Linux  and  Mac OS X

 

 

Ken


Viewing all articles
Browse latest Browse all 2077

Trending Articles