Books On Electronics For the Lay Programmer?
leoboiko writes "I'm a computer scientist and programmer with no training whatsoever in hardware or electronics. Sure, we designed a simple CPU (at a purely logical level) and learned about binary math and whatnot, and I can build a PC and stuff, but lately I've been wanting to, you know, solder something. Make my own cables, understand multimeters, perhaps assemble a simple robot or two. Play with hobbyist-level electronics. How does one go about educating oneself in this topic? I've been browsing Lessons in Electric Circuits online and it's been helpful, together with Misconceptions About 'Electricity' which went a long way in helping me finally to grok what electric charge and power actually are. I've reached the point where I want an actual dead-tree book, though. Any recommendations?"
Pick up the Art of Electronics by Horowitz and Hill. The lab manual might also be helpful. The Art of Electronics is basically the electronics Bible for physicists and a popular introductory text for electrical engineers.
For technical electronics work (like soldering or cable assembly) you will probably want to find a specific book (the Navy electronics manuals would be very helpful).
Suddenly, the hairy finger of a familiar monkey tapped me on the shoulder. It was time.--G. T.
I would like to make a plug for your local community college, if you live in a reasonably-sized city. Most community colleges offer a couple of basic-level electronics classes, which teach you basic circuit theory. Books (either eBooks or paper ones) like Misconceptions About 'Electricity' are sort of interesting from a physics perspective, but they don't really offer much insight into electronics. In fact, many of the logical assumptions taught to electrical engineers _aren't_ true, strictly speaking, but are 'true enough' and much easier to understand.
If you're looking for someplace where you can learn about your basic circuit elements (resistors, capacitors, op-amps, etc) a real dyed-in-the-wool intro electronics course might be just what you're craving.
---- I'll take you in a Hunt deathmatch any day.
I would suggest looking at the various hobby robotics books in a good bookshop. Most of these will cover stuff like how to solder, how a transistor/FET work and how to wire up configurations like H bridges etc.
Engineering is the art of compromise.
I recommend this annoyingly named book, which is an excellent cover-all on this and related subjects. Really did join the dots for me many years ago and it looks like it's now in its 2nd edition.
http://www.amazon.com/Bebop-Boolean-Boogie-Unconventional-Electronics/dp/0750675438/ref=pd_bbs_sr_1?ie=UTF8&s=books&qid=1210145164&sr=1-1
(Any grammar nazi's able to show me how to tidy up that link? Or point me at the right place on here to find out please?)
--- I've completed diagnosis of your problem and can classify it as a YOYO...You're On Your Own
Happy hacking!
Me lost me cookie at the disco.
Much as you can't learn to program well without looking at programs more complicated than you'll find in any textbook, you need to study real world circuits.
Whether you want to do digital stuff or analog, it's worth your time learning the analog stuff -- digital systems tend to break as a result of the underlying analog problem of circuit design.
For example, Wikipedia has the internal schematic for a 741 op amp along with a decent explanation. Once you understand the function of every one of those transistors, you'll be able to really understand why it has both a gain-bandwidth limit and a slew rate limit, and what the difference is.
The best source of real-world circuits I've found is the application notes and example circuits in data sheets published by manufacturers. Since they need the resultant circuits to work when engineers build them, they don't leave out the random extras that textbooks often do. Does that MOSFET need a gate resistor? A circuit in an app note will probably say, whereas an example diagram might well not.
If your goal is to learn more in general, as opposed to solving a specific problem, I'd pay more attention to the author than exactly what they're writing about. For example, I can't recommend Jim Williams' design notes highly enough -- he's both an excellent engineer and an excellent author. Making Shakespeare a citation is the sort of thing that keeps his writing lively and interesting. Or rating circuit complexity in baby bottles as a measure of how long it took him to design and debug it. And, of course, he often goes into great detail about the *practical* considerations involved in precise, high-speed analog work -- especially as it relates to working at the lab bench, rather than with professionally printed PCBs and the like.
I'm sure others will have excellent textbook recommendations. They're an important part, but only a part. Add some analysis of real-world circuits that you'll find in application notes, and a bunch of fussing around with actual silicon and a scope, and you'll be well on your way.
(I'm a physics professor teaching electronics to undergraduates this term.)
I'll second Horowitz and Hill.
But if you want a gentler sunday school introduction before you pick up the Bible, get "Getting Started in Electronics" by Forrest M. Mims III. This is the book I taught myself with, bought it from Radio Shack when I was twelve. Text-and-drawings done "lab notebook" style, very basic approach.
You'll need Horowitz and Hill to get the math, but for basic concepts Mims can't be beat.
Once you get through that you'll have a reasonable understanding of the field.
Engineering is the art of compromise.
The better the quality, the simpler and easier the circuit.
Get a receiver or amp that has a problem and mess with it. A receiver in "protect mode" is a good one since that pretty much means that you have a DC offset on the output. A bi-polar amp will drive you nuts, since *any* bad component will throw DC onto the output, but you'll learn a ton going through it. A mosfet amp is much simpler since they are more like tube amps in topology. Hell, for that matter, try to get ahold of an old tube amp. They are very simple and are a good way to get yer feet wet.
Or an old cassette deck, like an old Nakamichi. Nobody wants them anymore (and they shouldn't, either), but they have a lot of cool control/motor circuitry in them. Especially if you get a hold of one that's discrete -- ie, all the logic and control is done with transistors.
and get the service manual -- it'll have schematics and sometimes theory of operation.
Oh yeah, the advice for the Navy Manuals is right on. Those are the clearest and most comprehensive books on the subject.
mr c
"Physics is like sex. Sure, it may give some practical results, but that's not why we do it." - R. Feynman
I recently met up with a few people from my alma mater, and they have bought a bunch of Arduino's to teach embedded programming. From what they told me, they seem to be a great educational tool. I've never worked with them personally, but I do have experience with the processor used in the board, the ATMega. It's a nice architecture, clean design, and advisable. Another hint: stay away from PIC, they have severe limitations (like a hard-wired call stack, memory access limitations).
:-( ). Later on, you might feel the need for an osciloscope, these things can be quite expensive but you don't need the latest model, just a second-hand model from 10+ years old will be a very handy tool for measuring clocks, signals etc.
Still, this won't help you with understanding elektronics as such, but will it will make a bridge from your programming world to the electronics world.
Other things you need are: a multimeter (a good one costs some money, and a cheap one is probably good enough for a while, but from what I have heared, the problem of the cheap ones is that the calibration drifts after a couple of years). And a breadboard. That's a board with holes where you can plug in electronic components easily without need for a soldering iron. Very handy for experiments. For an example, see this: http://www.youtube.com/watch?v=HteDBfSJ9zo. (No idea if it's interesting, my flash audio doesn't work for some unknown reason
A last advice I can give you: read Elektor (a magazine available in many languages), find a simple circuit you find interesting and try to understand it. Read the explanation, calculate the voltages at certain points, build the circuit, measure, etc. This will teach you a lot.
"It's too bad that stupidity isn't painful." - Anton LaVey
Google Make Magazine! It is great for the DIY in you.
-Ghost
http://www.usna.edu/EE/ee301/internal/Applied_EngineeringPrinciples.pdf
Chapter 1 covers electrical, chapter 2 covers electronic. The remaining chapters dive into nuclear power field topics (chemistry, mechanics, reactor theory - also very handy for those interested in 'just the facts' for those topics). This reference is about as technical as it gets without venturing into "If I told you I'd have to kill you" territory.
It's awesome that the Naval Academy has an unclassified version out there...
this sig was brought to you by the letter
The Art of Electronics, which many people have recommended, is a well-written book, but it comes with a couple caveats. First, it is twenty years old, which means it spends a lot of time on topics that aren't as important today (JFETs, for example). Second, and more importantly, it's an electronics book, which means it's intended to be read after a corresponding class in basic circuit theory. Electronics is the study of how semiconductor devices are used in electrical circuits, not the study of electrical circuits in general. While the first chapter of AoE does offer a review of circuit theory concepts, it's pretty terse. If you're good at calculus and want a good textbook, try Engineering Circuit Analysis by Hayt, Kemmerly, and Durbin. This may be a bit more work than you're looking for, but one of the things you quickly learn about electricity is that it's pretty abstract (being invisible and all), and visualization aids like LEDs and even expensive test equipment don't help as much as you might think unless you already have an idea of what's going on. If you're just doing digital circuits you can get by with less, but for anything remotely analog, knowing the theory helps a lot.
Visit the