Getting started with Embedded system

Thread Starter

sjdali35

Joined Feb 16, 2012
4
I want to get started with embedded system programming. I want to buy a good development kit so that i can have some practical experience. But I am getting confused as there are lot of kits around and dont know where to start. Can anybody help please.

All help will be appreciated

Regards
 

MrChips

Joined Oct 2, 2009
30,707
You have to start by choosing a processor family.
The forerunners are Mircochip PIC, Atmel AVR, Freescale HC05, HC08, HC11, HC12, Intel 8051 and so many others.
 

Thread Starter

sjdali35

Joined Feb 16, 2012
4
Thanks for the suggestion. Which family of the processor is easy to get start with. I have done some programming for ATMEL microcontroller but that was in assembly language. What do you think. How about the arm processor (ARM Cortex - M).

Regards
 

MrChips

Joined Oct 2, 2009
30,707
If you are now starting out I would not go with the ARM processor for now. The hardware learning curve is steep.
If you have already worked with Atmel then that is a good direction to proceed.
 

ErnieM

Joined Apr 24, 2011
8,377
What are you looking to learn? Press a button and light a LED, or run a color GUI on a touchscreen with USB 3.0 peripherals and a SD card for backups, or something in between?
 

Thread Starter

sjdali35

Joined Feb 16, 2012
4
I would like to start with something simple but ultimate aim is to able to display text information on led board and run graphics on TFT. Also want to learn how to implement various communication method such as Rs232 Rs485 tcpip GPRS etc
Regards
 

ErnieM

Joined Apr 24, 2011
8,377
OK, just stick with "starting" for now. You will be learning some things and anything you pick today towards your "ultimate aim" will change tomorrow.

I'm biased to Microchip as I've been using them for decades and find them well supported with good tools that are free. You need a programmer to write to them, but even their cheapie programmer also does in-circuit debugging. They have 2 programmers, PICkit 2 and PICkit3. #2 does a little more and costs less, #3 covers all their newer devices and will continue to do so.

Both come with boards and lesson plans to get you started.

PICkit 2 and kits.

PICkit 3 and kits.
 

hgmjr

Joined Jan 28, 2005
9,027
If you are now starting out I would not go with the ARM processor for now. The hardware learning curve is steep.
If you have already worked with Atmel then that is a good direction to proceed.
I agree with MrC that you should postpone your exploration of ARM processors until you get a good dose of experience with microcontrollers such as PICs and AVRs.

hgmjr
 

John P

Joined Oct 14, 2008
2,025
I'm a PIC guy too, like most people here, but one big advantage of the AVR is that there's a good C compiler for it that's free. With the PIC there's a variety of vendors who may offer some free stuff, but they all really hope you'll buy their full product.
 

GetDeviceInfo

Joined Jun 7, 2009
2,192
I would like to start with something simple but ultimate aim is to able to display text information on led board and run graphics on TFT. Also want to learn how to implement various communication method such as Rs232 Rs485 tcpip GPRS etc
Regards
learning is relative to your environment;
http://www.viaembedded.com/en/products/systems/productDetail.jsp?productLine=2&id=890&tabs=1

Windows xpe with a host of industry standard software will have you online in real world applications in a hurry. You could step down into an ARM based system but you immediately reduce your resources. Step down further and now your developing your own OS, progs, and drivers.

The one thing you want to consider with embedded, is connectivity. Google's Android is opening an entire new wave of 'embedded', but it's more about 'connectivity' than hardware.

Some say keep it simple, and for me, functionality in a tight time frame is simpliest. That typically means finding a boxed solution that has the abilty to perform the desired task, plus a bunch of room for growth. Your job is then to configure it, rather than invent it.

But hey, inventing can be fun, just remember that there is an finite amount of time that one has.
 

ErnieM

Joined Apr 24, 2011
8,377
I'm a PIC guy too, like most people here, but one big advantage of the AVR is that there's a good C compiler for it that's free. With the PIC there's a variety of vendors who may offer some free stuff, but they all really hope you'll buy their full product.
Untrue. While there are many third party compilers available Microchip gives away very functional versions of compilers for every chip they sell.

Yes, for an extra payment you can get some extra optimization features, fast customer support and other goodies. No, you don't really need all that as they make write serviceable code as they come.

Microchip C Compilers
 

John P

Joined Oct 14, 2008
2,025
That's my point--the free compilers aren't the best you can get. Whether they're "serviceable" or not depends on how close to perfection your code needs to be. Most of the time, they're OK, and when they aren't, you can probably improve the critical parts with some hand tweaking. But with the AVR, the free compiler is the standard. It would be interesting to hear how close to "optimized" its output is, and how it would compare to the PIC compilers, either free or purchased.

Here's a quote from MMcLaren when this topic came up before--he thinks the BoostC compiler is OK (though of course it's limited in the free version) but is the Hi-Tech one "serviceable"?

When I tried the "new" free version of Hi-Tech that comes with MPLAB a couple of years ago I was utterly shocked when I saw the code it generated. They tell you it's not optimized but, gadz, it almost seemed that they went out of their way to generate garbage code. If the "free" Hi-Tech version is meant to be an advertisement or enticement to purchase their over-priced full versions, I think it back-fired. I won't go near Hi-Tech with a ten foot pole and I'm perfectly happy running the free/lite version of Boostc in my MPLAB environment.

Edited to say that actually, BoostC is as optimized as it'll ever be, right there in the free version. Its limitations are in the size of the program and its use of memory, and they say "For non-commercial use only", though how they'd ever enforce that, I don't know.
 
Last edited:
Top