Want to learn embedded systems

Posted on 2004-09-28
Last Modified: 2010-04-26
Hi all,

 I am a graduate. I want to learn pure embedded systems. Like

 1) want to deal with Hardware boards
 2) Want to develop programs in Assembly and C.

 In this regard I bought a 8051 Chip from cygnal (silabs). Can anybody help me what are all the steps and resources  to learn a perfect embedded systems.

 I want to deal with some free RTOS with could I do that.

 Please help me to learn embedded systems.

 Thanks in advance.

With Regards,

Question by:lamdor

Accepted Solution

RoyInTexas earned 100 total points
ID: 12206893

Haven’t you heard the saying, “Friends don’t let Friends program in assembly language”?

Well, you are in luck.  When I started programming in embedded systems, we had to program in assembly language.  Now there are Basic(not visual basic) and C compilers.

Since the memory address range for any 8051 is on the order of 16 bits, you can only address 2 ** 16 or 65, 536 bytes of memory.   That’s not a whole lot of room to work with. So if you have an operating system,a general purpose house keeping set of pre-complied programs),  you won’t have a whole lot of room left over for your specific program.  Most 8051 applications do just one or two specific things. Since they just do one or two things, they don’t need any operating system.  Everything that you need to do is all contained in the main program.

One nice thing they have now are assembly language software simulators.  What these simulators allow you to do is visually step through the program operations on your PC before you burn your program into memory.

An 8051 system is going to consists of a CPU(the 8051), an EPROM(Erasable Programmable Read Only Memory)  and optionally some Static RAM.

An EPROM will retain its memory when the power is shut off.  Static RAM will  get filled with garbage when power is reapllied.  So when you first power up an embedded system, you should always initialize your RAM to a known state by filling it with zeros.  If you are programming in a higher level language, always initialize your variables before you use them.

With a 8051 system, there is typically no Hard Drive or Floppy drive so your program has to reside inside of a chip, the EPROM.  In order to program the EPROM, you need a EPROM programmer.  But there are similar CPUs on the market that allow you to serially program them using your serial port on your PC.  There are even CPUs out there that let you directly program in Basic. I you are going to program in C, you will need to purchase a C complier designed specifically for the 8051.

To save lots of time, there are general purpose 8051 experimenter boards that are already built and low cost.

Make sure when you work with embedded systems, that you wear an anti-static wrist wrap.  You can make your own by simply attaching a small copper wire around your wrist to a cold water pipe.  Be careful if you hook up an anti-static writs wrap to the ground on any house hold plug because it can be wired incorrectly. Digital circuits are designed to run at 5 volts and lower. Through friction, you body can generate over 20,000 volts.  So if you are charged to 20,000 Volts and you touch a digital circuit, kiss that puppy good bye.  You might not even feel the transfer of electricity.

Here is a link to get you started:

Just remember, compliers and assemblers are computer programs. And as you all ready know, programs can have bugs.

Though if I were you, I would start with a PIC Microcontroller or Basic Stamp Microcontroller. With the Microcontrollers, you get the RAM and EPROM on board the main chip so it’s a lot more compact and thus cheaper.  If memory servers correct, it’s serially programmable so you don’t need to spend several hundred dollars on an EPROM programmer. In addition, it’s got a much larger following. Hence there is more reference material to get you up to speed.   Here is a link to get you started:

Keep in mind when programming in embedded systems, you will use the GoTo and loops a lot.  Reason being is because embedded system computer programs execute in a top down manor and if your program does not GoTo or loop when it reaches the last instruction in its list of steps, it will crash because it would be like running over a cliff.

Keep in mind, I have never purchased anything from the above website nor have I used their software.

 Most of the starter development boards I have seen do not come with their won 5 Volt power supply so you will need to purchase one.

You can pick one up from Radio shack used to sell power supplies but they seem to be getting out of the electronic hobbyist arena.


Author Comment

ID: 12246110
Hi Roy,

 Thanks a milion to help me in learning embedded. I hope I will remember you alover my career.

 Since this is the first move and first help I which boosted me a lot in understanding the things.

 Yeh!, I am planning to use 'C' Only initially. Later I will go for Assembly.

 By the way the PIC controller what ever you told I need more information on that. Can you please provide me..

 Thanks a milion ..get back to you.

With Regards,

Expert Comment

ID: 13294501
"An 8051 system is going to consists of a CPU(the 8051), an EPROM(Erasable Programmable Read Only Memory)  and optionally some Static RAM."

Although true many years ago, this need no longer be the case - there are plenty of 8051 microcontrollers available today with on-chip, In-System Programmable, Flash EPROM and plenty of RAM.
The Si Labs (nee Cygnal) chips mentioned originally are a case in point.

"With the Microcontrollers, you get the RAM and EPROM on board the main chip so it’s a lot more compact and thus cheaper."

The 8051 *is* a microcontroller!

Featured Post

On Demand Webinar - Networking for the Cloud Era

This webinar discusses:
-Common barriers companies experience when moving to the cloud
-How SD-WAN changes the way we look at networks
-Best practices customers should employ moving forward with cloud migration
-What happens behind the scenes of SteelConnect’s one-click button

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

I use more than 1 computer in my office for various reasons. Multiple keyboards and mice take up more than just extra space, they make working a little more complicated. Using one mouse and keyboard for all of my computers makes life easier. This co…
This paper addresses the security of Sennheiser DECT Contact Center and Office (CC&O) headsets. It describes the DECT security chain comprised of “Pairing”, “Per Call Authentication” and “Encryption”, which are all part of the standard DECT protocol.
In a recent question ( here at Experts Exchange, a member asked how to run an AutoHotkey script (.AHK) directly from Notepad++ (aka NPP). This video…
Exchange organizations may use the Journaling Agent of the Transport Service to archive messages going through Exchange. However, if the Transport Service is integrated with some email content management application (such as an antispam), the admini…

726 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question