Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Recommendations for a development board for embedded programming [duplicate]

Possible Duplicate:
What is the best Evaluation Kit for Learning Embedded C/C++ Development?

I'm an electronics and software student and I'd like to enter the embedded devices world. At this point it's just a personal interest, not a career choice.

I'm somewhat experienced in C/C++ (mostly C++). I am an experienced linux user. I have an arduino but I dislike it because of the java layer on top. There are ways to upload C code on the device and I have done this.

However, at this point I'm a bit confused. I've seen dev. kits with debugger and programmer devices. I don't know what these are used for => I need info on those. There are also a lot of dev. kits out there that seem to offer various functions. Some come with software (MPLab on PICs) such as compilers and IDEs that make life easier.

I've searched for books and information but most either focus on some processor that I can't find (or costs $500). Others spend most time teaching C (I know C already).

Also I have the feeling that starting on an ARM processor would be best. I'm not sure that's the best processor to start with but they seem to have a lot of features and are very popular now. They also pack a significant throughput (I'm aware they also consume more power). Any recommendations on that?

I've looked at this: http://uk.rs-online.com/web/c/semiconductors/development-kits/microcontroller-processor/

A book recommendation would also be welcome. As I've said I've looked at some which focus on PIC (mostly) http://www.amazon.co.uk/s/ref=nb_sb_noss_1?url=search-alias%3Daps&field-keywords=embedded+systems&x=0&y=0

I've found a good book on ARM but I'm not sure it's for people new to embedded development. I think it might be for people new to ARM but with experience in embedded.

Thanks and hope it's not a double

like image 373
s5s Avatar asked Mar 28 '12 00:03

s5s


People also ask

What is development board in embedded system?

The development board is a printed circuit board used for embedded system development, including a series of hardware components such as central processing unit, memory, input device, output device, data path/bus, and external resource interface.


3 Answers

If you know C or C++ and want to get a taste of embedded development, I'd also steer clear of Arduino as it has terrible price/performance compared to newer micros, particularly ARM Cortex devices. It has a great ecosystem and accessible toolchain, but if you aren't afraid to get down and dirty and work with some unfriendly tools, an ARM device will give you a better taste of embedded development.

At the moment I think the best deal out there is STM32F4Discovery from STMicroelectronics. They are around $20, have a C SDK and toolchain, and it's a real, powerful part that you would use to design and embedded device. Lots of peripherals and CPU (for what it is); the Cortex M4 core is pretty much state of the art for microcontrollers. The only real downside with that board is it doesn't have a little LCD display, but the dev kits that do tend to be over $50 (although if you want something like that, the TI/Stellaris Cortex M3 kits are pretty nice too. You should be able to find plenty of resources for getting arm-eabi-gcc and OpenOCD (for program loading/debugging) set up on linux.

Raspberry Pi sounds like it has a chance to own this segment soon, although I think it may be a bit more software-driven environment as it is a full-blown linux system, although it has headers for peripherals it may actually be a bit harder to prototype a simple embedded system with RPi compared to an MCU kit depending on what you want to do. Same deal with BeagleBoard or PandaBoard, they are different classes of system and if you just want to learn some electronics and prototype an idea or two may actually be more complexity than you want. Unfortunately availability of Raspberry Pi is currently somewhere between incredibly limited and someday soon so it's actually not a viable choice if you want to order something today.

like image 168
Suboptimus Avatar answered Nov 02 '22 11:11

Suboptimus


Neuros OSD is pretty decent. You can get the Neuros OSD device for whatever they sell it for, and the whole software stack is open source code that you can work with freely. They have a decent Wiki-style documentation, and GNU based tool-chain. If I'm not mistaken its ARM-based.

I was able to bring it up and start writing code within hours. You might need a RS232 converter cable - send them an email and they'll ship you one if you can't find anything on eBay.

like image 43
littleadv Avatar answered Nov 02 '22 09:11

littleadv


Raspberry Pi is the new kid on the block. Developed specifically for learning, it runs Linux and is a fully capable computer on its own - no cross compiling necessary. Might be hard to get your hands on in the near term.

like image 21
Mark Ransom Avatar answered Nov 02 '22 10:11

Mark Ransom