Where to learn embedded system basics for little or no money?

I've been working on a project that involved testing a toy with a simple processor in it, that controlled how the toy reacted when the
user did things.
All of which got me interested in how the thing works at a hardware level - something in which I have no experience at all. I would like to learn more.
I have around me a Windows PC, a Linux PC, an EEPROM 'memory programmer', some basic programming skills, the ability to wire a plug, the ability to learn stuff, and broadband.
I would like to learn how to build and code embedded system type things with the absolute minimum of expenditure. Where should I start?
Are there emulators for microprocessor packages that I can program, complete with emulated lights and switches, or somesuch? Are there freeware ones? What about the attendant circuitry - sensors, buttons, motors, diodes and such?
--
Charlie

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Charlie King wrote:

Yes to all those questions. I use the 8052 microcontroller which has been around for ages and is available in lots of different versions. There are plenty of free and evaluation tools including all sorts of emulators some of which will simulate external circuits too. A google search will bring up lots of sites. You could do worse than start at www.8052.com which has tutorials and many links.
HTH
Ian
--
Ian Bell

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Charlie King wrote:

Minimum of expenditure = nothing! You can get a simulator which allows you to play with I/O on the PC screen. Check out AVR Studio + WinAVR at www.avrfreaks.net There should be plenty of others.
--
Best Regards,
Ulf Samuelsson
  Click to see the full signature.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

I was going to recommend that, but you beat me to it! :) Atmel's simulator is dependable. I did my first AVR project years ago in simulation, because the chips weren't quite available yet. When I finally got chips (8515's with a date code of "ES") I dropped the code in them, and everything was fine.
For working on real chips, an AVRISP is a nice simple dependable programmer, at $29 from Digikey. For the simpler chips, you can do a $5 programmer using the BA1FB software (google on BA1FB and programmer) A 2343 is a good starting chip. 8 pin, internal RC clock, a timer, some ram and registers, and some EEPROM, and some I/O pins, but not too complicated. Code ports upward relatively painlessly in the AVR line :)
As you progress, you'll want to get a Jtag Ice for debugging real hardware. Sparkfun sells them for about $40, and they work nicely.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

When I started using the AVR, the only chip available was the '1200. I used the BA1FB programmer with it, it worked very well. The newer Tiny2313 is a good chip to start with, IMOH. I'm not sure if it is supported by the BA1FB software, but it may be programmed with the SP12 software and (minimal) hardware.
Leon
--
Leon Heller, G1HSM
http://www.geocities.com/leon_heller
  Click to see the full signature.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

and
programmer,
using
hardware.
Just a small thing to add ...
The STK500 is a really nice and very low cost proto board that can be programmed directly from AVR studio. Usual LED's and IO headers for trying out your IO. Note however that it does not have a JTAG port (oddly) - although you can buy an adaptor to fit on one of the pin headers.
As previously stated - the simulator is excellent, so you can develop in the simulator then run on the STK500 for very little cost.
Regards, Richard.
http://www.FreeRTOS.org
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

The STK500 was designed before the AVR got a JTAG port and AFAIK, it was easier to design a small adapter than to change the STK500.
--
Best Regards,
Ulf Samuelsson
  Click to see the full signature.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Charlie
Another microcontroller you might want to play arround with is a PIC. by MicroChip. Below is a link of some projects I found on a google search.
http://www.electronic-engineering.ch/microchip/projects/projects.html
Also for a higher level language see if your local kibrary can do an inter library loan on this book. "Real-Time UML: Developing Efficient Objects For Embedded Systems" By Bruce Powel Douglass.
Another good book to look at is "UNIX Network programming" By W. Richard Stevens. this book wil get you a little more comfortable with unix and allow you to migrate to realtin OS's
Look at realtime OS's ThreadX is a C lib VxWorks pSOS these two are the work horses of rtos's Linux hard hat is makeing good progress
Linux Unix these are also worth looking into..
You should look at data manuals,(PDF online) and get use to reading them. At how devices operate. They have some basic characteristics that most share. Initail default wake up state. Mode control for data or control commands. After you have poked arround on a few chips look at the motorola power pc 860. Look at the embedded process and the list of embedded devices it has. become familair with these you will often times see many of these devices over and over, the 860 just hapens to have them all in one nice basket. The PIC 16C74 has many devices also.
I noticed that you mentioned you programed EEProms so I am assumeing that you have an eprom programer or acces to one. Going to extrapilate that you can get to either a bread borad or wire wrap set up and a DC power suply. IF you got all that or have access to it, then get a micro controler or two that you have become familair with and an LCD to display some output or even a few LED's. Read up a bit on electronics and build some simple circuits. Plug in your EEPROM code and have fun =)
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
On Sat, 26 Mar 2005 22:14:46 +0100, Charlie King

Check out AVR Studio, and AVRLCD from Atmel. http://www.atmel.com
These people have an emulator for some of the AVR processors, and ST devices. http://www.amctools.com/vmlab.htm Currently it costs EU75.00 for the full blown AVR version, until the end of March. The demo is code-size limited: max 4K bytes, max 4 code modules.
Texas Instruments have Kickstart (IAR Embedded Workshop), a programming and debugging suite for their MSP430 devices http://focus.ti.com/docs/toolsw/folders/print/iar-kickstart.html It's limited to 4K of compiled C code, but unlimited for ASM.
And there's MPLAB for the PIC from Microchip. http://www.microchip.com
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Charlie King wrote:

Take a look at <http://www.ganssle.com/ where you will find a number of useful articles. You should also find a link to Jacks book on embedded systems which includes lots of useful guidance.
--
********************************************************************
Paul E. Bennett ....................<email:// snipped-for-privacy@amleth.demon.co.uk>
  Click to see the full signature.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Charlie King wrote:

have a look at: http://www.dontronics.com/dt006.html free schematics, free software, simple programming circuit for AVR's.
Don...
--
Don McKenzie
E-Mail Contact Page: http://www.e-dotcom.com/ecp.php?un=Dontronics
  Click to see the full signature.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Polytechforum.com is a website by engineers for engineers. It is not affiliated with any of manufacturers or vendors discussed here. All logos and trade names are the property of their respective owners.