Jump to content
G0XAR

Programming MSP430s in languages other than Energia, C, C++, Assembler and BASIC?

Recommended Posts

Doubtful, but for bigger memory footprints I don't see why you can't port eLua over to the platform.  I've never actually used eLua but I understand it's an interesting scripting-like language for embedded processors.

 

If you expand the footprint to include other C-based frameworks though, there is FreeRTOS (probably better for larger memory footprint variants) and @@pabigot 's BSP430 project.  I haven't used either of them on the msp430 yet but I keep meaning to play with bsp430 when I get bored with my other obsessions.

Share this post


Link to post
Share on other sites

There are several FORTH implementations for the MSP430.  Unfortunately none of them have lucid documentation and I was not able to get any of them working.  Then again, I didn't try very hard...

 

I did manage to get Adam Dunkles uBASIC running on the MSP430, though.  uBASIC is an excellent example of how to build a an interpreted language, and highly recommended for anyone who wants to roll their own.

Share this post


Link to post
Share on other sites

I've been playing around with Atom for a while - it's a Haskell DSL that generates C code that should run in deterministic time/space. I've been writing a library of MSP430-related definitions for it. Simple example.

 

I've also been tempted to see if it's possible to get Nimrod compiled to C and working on a micro. It's a nice language and quite close to C.

Share this post


Link to post
Share on other sites

There's a bit about mPY (microcontroller python) on this forum. But I'm not sure about the activeness.

I'm thinking about making a JavaScript compiler for the MSP430, though it may never have liftoff.

Share this post


Link to post
Share on other sites

Ada.

http://sourceforge.net/projects/msp430ada/

 

I am a huge fan of Ada as a "high level" programming language (I'm considering C as a mid-level language and C++ as a dirty bastard). Ada has been used in mission-critical systems for years, the syntax is beautiful, and it might just be the most bug-avoidant language there is.  It has nothing to do with the kit distributor Adafruit apart from the name.

Share this post


Link to post
Share on other sites

If you expand the footprint to include other C-based frameworks though, there is FreeRTOS (probably better for larger memory footprint variants) and @@pabigot 's BSP430 project.  I haven't used either of them on the msp430 yet but I keep meaning to play with bsp430 when I get bored with my other obsessions.

Some of the later X2 MSP430s (i.e. F5 models) have fast stack-to-register load/store instructions, and as such they can be used reasonably efficiently in threaded OSes like FreeRTOS.  Even some of the lighter ones can work well with cooperative tasking OSes, though.  There are a handful of these.

Share this post


Link to post
Share on other sites

To elaborate on MPY a little if I may  :rolleyes:  

MPY is an ultra easy to use language for microcontrollers based on a subset of Python.

It is aimed at simple projects using the MSP430 Launchpads.

 

The syntax is very clean and simple. I claim that programs written in MPY are more

compact and easier to write than the Arduino style C programs written using sketch/wiring. 

 

Its currently limited to integer variables but there is a full range of hardware functions

to control the main peripherals: IOs, ADC, Interrupts, Timers, PWM, Print.  Plus there

is full access to the MSP430 named Registers for any lowlevel stuff.  

 

Under the hood MPY is converted to regular C before being compiled using the regular

mspgcc/mspdebug toolchain, and yes the MPY language is still alive and kicking.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...