Learning Hardware as a Software Geek?
digitalvengeance asks: "I'm a long-time software geek with very little experience on the hardware side. I've configured servers and built various desktops for friends and family, but I'd like to move to the next level. I assume I need to purchase a breadboard to begin tinkering, but is there a particular kit I will find more useful than others? What books, sites, or other resources can the hardware geeks recommend for a software geek wanting to learn the basics of electronics and hardware?"
If you're going to do anything outside of just digital electronics, then I thoroughly recommend "The Art of Electronics" by Paul Horowitz and Winfield Hill, Second Edition. Cambridge University Press, ISBN 0-521-37095-7.
It starts off with the real basics, and has a very readable style and lots of practical advice.
It's pretty expensive (about $50) but well worth it. If I'd had this at University, I would have done a whole lot better in my practical electronics courses.
Sean Ellis
Follow OfQuack's antics on Twitter.
Here is a great online book that starts with basic electrical principles and works up to semiconductor and digital circuit stuff. It is wonderful.
For one, you should know about passive analog electronics. Build an AM radio or something.
Next step, is to go digital. Buy a couple of PIC or AVR microcontrollers and build some simple stuff. You'll get to write assembly code (or even in C) and upload the code to the chip and run it there. The pic can be interfaced with ethernet, audio chips, flash chips, LCD, camera CCD etc. Think of the possibilities.
If the PIC is tough, just use the simplest PIC16F54A initially, or even just use a BASIC stamp. Make a set of blinking lights to begin with, and download the test code first before writing code.
After the 8-bit level, you can buy the powerpc or ARM kits from olimex.com or ebay, and with enough flash, sram and boot code, try to boot netbsd, linux or something similar.
"Give orange me give eat orange me eat orange give me eat orange give me you." -Nim Chimpsky
Second of all get your ham radio license! Buy a copy of Now You're Talking! from the ARRL and study up! Amateur radio is approximately 50% applied analog and digital electronics, and don't think all that communications theory stuff doesn't apply to computers because it does, RF knowledge is CRITICAL to engineering high speed digital circuits! Get involved with a local ham radio club and start building ham radio kits and projects. Other than working in an electronics lab, it's the best way to get applied electronics experience quickly.
I'm n1ywb and that's my two cents.
-73, de n1ywb
www.n1ywb.com
You can get an evalkit from anyone of top FPGA vendors for a $hundred or two (for example), program it in VHDL (if you were doing software for a while it will be quite easy for you, just another language -- actually if you've ever done Ada it will be very easy, it is basically the same), compile VHDL program, load it into the board (they come with USB, parallel or plain old serial links) -- and here is your first special-purpoise hardware device! ;-)
;-)
Now, the problem is to figure out what do you want it to do....
Paul B.
For an introductory title Designing Embedded Hardware is pretty good. It doesn't go into specifics, just introduces terminology and explains the things you need to know.
A good multimeter (digital or analog, your call, each has its advantages), and a good logic probe.
The multimeter is good for simple diagnostics (checking the power supply, checking a circuit for shorts, and troubleshooting analog inputs). The logic probe can make or break a project. This is assuming its mulitple chips and not a single FPGA>
I tried to get back into it a few years ago and was disappointed to find out that none of the local Radio Shacks had any of the Engineer's Mini Notebooks. The folks at the counter hadn't heard of them, either.
Just two weeks ago a friend serendipitously returned something that I'd lent and forgotten about -- Mims' "Getting Started in Electronics", which the cover tells me was published exclusively for Radio Shack. It was a great introduction to electronics and covered enough theory to make it worth reading even if you didn't actually make anything functional.
It's definitely looking for a copy, or writing to Radio Shack to see if they know of any sources. It probably set me back about $10 at the time, and is a great introductory handbook.
Somebody get that guy an ambulance!
I took http://ict.open.ac.uk/courses/t223/ at the Open University (the largest UK based university!). They do world-wide correspondence courses - sadly I don't think the hardware courses are available outside the EU, but this may help someone else here.
4 (ie T224) in the school of informatics.
It seems (M)T223 has been stopped now, but you may find something else there that is useful. The replacement is http://www3.open.ac.uk/courses/bin/p12.dll?C01T22
T223 was a top down look at microprocessors starting with the C programming language, then look at compilation, instructions, microcode and logic to understand how programs are converted to impulses. The course used a serial (RS232) connected thermometer to aid study of some of the hardware aspects.
If you know software then it might be a little basic for you - but you could try for a level-3 course.
HTH
pbhj