Books for ARM and MSP430 Programming in C

Thread Starter

fire_lizard

Joined Apr 4, 2013
9
Hi everyone,

I have signed up for ARM and MSP430 courses at EDX and would like to ask you a question:

Are there any good books for ARM and MSP430 Programming in C?

I know about excellent John H. Davies and Joseph Yiu books but they are for programming in Assembler.

Thanks in advance
 

Thread Starter

fire_lizard

Joined Apr 4, 2013
9
Thanks for the suggestion, but I am working as a software engineer (C++/C#). I would like to know how to apply my C skills for MCU programming (for example to communicate with external devices). I think it is not like developing financial software in .NET.
 

JohnInTX

Joined Jun 26, 2012
4,787
I would like to know how to apply my C skills for MCU programming (for example to communicate with external devices). I think it is not like developing financial software in .NET.
That's for sure.
A good place to start would be just buying a Discovery kit from ST for the ARM and/or a LaunchPad for the MSP430. Both come with examples and tutorials.

Moving from something like you described to embedded systems that communicate with external devices will require not only learning something about the processor architecture (how do I output to the real world on bare-metal hardware? etc.) but also how the external devices work on a software and hardware level. That will require study of datasheets for the particular peripheral/device you are talking to. Even something simple like flashing an LED requires knowing how to drive it, whether the output of the controller can do it etc etc. More sophisticated peripherals will have more sophisticated interfaces (SPI/I2C busses etc etc) which you'll also have to master. There is also a real-time element for many things.

Like anything else, start simple (flash the LED) and proceed from there. Its fun-most of the time. I always get a charge out of watching my program interact with the real world whether factory automation or mine-trucks. Its challenging but way more fun than processing AP/AR.

Jump in! You'll find lots of help here on AAC from many very experienced contributors.

Have fun.
 

MrChips

Joined Oct 2, 2009
30,706
Programming in C is the same wherever you go. What is going to be different is the library functions that are available with each platform.
As John says, get a STM32F DISCOVERY and a MSP430 Launchpad. Both are very inexpensive. You can download the evaluation software from IAR for free.

Check out my blog for MSP430.
 

ErnieM

Joined Apr 24, 2011
8,377
And now for something completely different…

C is a well documented standard. C compilers comply with this standard in various ways, but at least they do attempt to document where they stray.

Code written for one micro on one compiler will compile on another compiler very seldom, and work on a different micro with a probability of about .0001%.

Each micro has it’s one way of doing things specific to a manufacturer, and even the same family from the same manufacturer.

There are naming conventions that differ even when using the same micro on different compilers.

One thing I will agree with is to get a development board with some samples or even tutorials and jump right in and make something happen. Blink that LED, read that pushbutton, make a LDC D, whatever amuses you.

I wish I could point to a good book but even the one book I like best is now obsolete as the compiler changed.

Just keep at it, solve the problems you encounter, and keep going. It does get easier with experience.
 
Last edited:

josip

Joined Mar 6, 2014
67
Top