Solved

Want to learn embedded systems

Posted on 2004-09-28
3
240 Views
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 8051..how could I do that.

 Please help me to learn embedded systems.

 Thanks in advance.

With Regards,
Lamdor.
 

 
0
Comment
Question by:lamdor
3 Comments
 

Accepted Solution

by:
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:
http://www.brillianet.com/electronics/microcontrollers/tutorials/8051/faq.htm

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:
http://www.imagesco.com/catalog/pic/pic.html

http://www.parallax.com/html_pages/products/basicstamps/basic_stamps.asp


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 http://www.jameco.com. Radio shack used to sell power supplies but they seem to be getting out of the electronic hobbyist arena.
 






   
0
 
LVL 1

Author Comment

by:lamdor
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,
Lam.
0
 

Expert Comment

by:embtech
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!
0

Featured Post

Save on storage to protect fatherhood memories

You're the dad who has everything. This Father's Day, make sure your family memories are protected. My Passport Ultra has automatic backup and password protection to keep your cherished photos and videos safe. With up to 3TB, you have plenty of room to hold the adventures ahead.

Question has a verified solution.

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

Suggested Solutions

This is about my first experience with programming Arduino.
A clone is a duplicate copy. Sheep have been cloned and maybe someday even people will be cloned, but disk cloning (performed by the hard drive cloning software) is a vital tool used to manage and protect data. Let’s look at what hard drive cloning …
This Micro Tutorial hows how you can integrate  Mac OSX to a Windows Active Directory Domain. Apple has made it easy to allow users to bind their macs to a windows domain with relative ease. The following video show how to bind OSX Mavericks to …
Hi friends,  in this video  I'll show you how new windows 10 user can learn the using of windows 10. Thank you.

863 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

Need Help in Real-Time?

Connect with top rated Experts

20 Experts available now in Live!

Get 1:1 Help Now