views:

261

answers:

4

I'm C# developer, I'm interested in embedded development for chips like MSP430. Please suggest me some tool and tutorials. Mono framework is very powerful and customizable, mono specific examples will be more helpful.

+4  A: 

There is currently no full mono support for the MSP430.

Mono doesn't run in a vacuum - you will need to make a program that exposes the microcontroller functionality to Mono, then link to Mono and program the entire thing on the microcontroller. This program will have to provide some functionality to Mono that is normally provided by an operating system.

The paged igorgue linked to gives you a good starting point for this process: http://www.mono-project.com/Embedding%5FMono

I don't know what the requirements of the Mono VM are, though. It may be easy to compile and use, or you may have to write a lot of supporting code, or dig deep into mono to disable code you won't be using, or can't support on the chosen microcontroller.

Further, Mono isn't gargantuan, but it's complex and designed with larger 32 bit processors in mind. It may or may not fit onto the relatively limited 16 bit MSP430.

However, the MSP430 does have a GCC port, so you don't have to port the mono code to a new compiler, which should make your job easier.

Good luck, and please let us know what you decide to do, and how it works out!

Adam Davis
I have used mspgcc. It does not have much documentation.
Sharique
It doesn't need much documentation. Start with an example and go from there. Read through the header files provided for registers, etc. But if it's confusing to you, then you are probably going to have a lot of work ahead of you trying to get mono working. There is no working port yet.
Adam Davis
I wish I could have enough time to try out all things.
Sharique
+2  A: 

The tools to use Mono on an MSP430 just aren't available. Drop all the C# and use C/C++ instead.

Nate
+5  A: 

Mono requires a 32 bit system, it is not going to work on 16-bit systems.

miguel.de.icaza
+1  A: 

MSP devices usually have 8 to 256KB Flash and 256 bytes (!) to 16kBytes of RAM. Using C# or even c++ is really not an option. Also, complex frameworks are a no-go.

If you really want to start with MSP430 (which are powerful, fast and extremely low-power processors for their area of use), you should look for the MSPGCC toolchain.

http://mspgcc.sourceforge.net/

It contains compiler (GCC3.22 based) along with all necessary tools (make, JTAG programmer etc.). Most MSP processors are supported with code optimisation and support of internal hardware such as the hardware multiplier.

All you need is an editor (yopu can use Eclipse, UltraEdit or even the normal Notepad) and some knowledge about writing a simple makefile.

And you should prepare to write tight code (especially in terms of ram usage).

IAR has a C++ compiler for the MSP430. With that said, why put yourself through that much pain when you could just use C?!? ;)
Judge Maygarden