Slashdot Log In
Books On Electronics For the Lay Programmer?
Posted by
kdawson
on Wed May 07, 2008 02:12 AM
from the solder-anything dept.
from the solder-anything dept.
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?"
Related Stories
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Full
Abbreviated
Hidden
Loading... please wait.
The Art of Electronics (Score:5, Informative)
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).
Not the Art of Electronics! (Score:5, Informative)
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.
Parent
Re:Not the Art of Electronics! (Score:5, Insightful)
There are very few technical books that are as well written an clear as Art of Electronics. A robotics book might be more "essential" if you are interested in building a robot, but very few of them will extend your understanding and mastery of robots specifically as AoE will extend your understanding of electronics in general.
"Practical" doesn't just means "arts-and-crafts." Theory is "practical" too, when you are faced with a problem that requires an original solution. AoE was not, if I recall correctly, written with the EE student in mind. It was written for people like experimental scientists from whom the ability to understand and design circuits would be a great practical advantage.
If you want to build other people's designs, then by all means restrict yourself to building things that other people have designed or snapping together modules, you can get by without really knowing much about how electronics works. I expect that most robot hobbyists only have a rudimentary understanding of electronics theory, and that's fine for them. But it certainly won't hurt to be able to analyze circuits even design them, and if you avoid AoE because it is not "practical", you're cheating yourself out of one of the best tech books ever written.
Parent
Re:Not the Art of Electronics! (Score:5, Informative)
Parent
Re:Not the Art of Electronics! (Score:5, Informative)
You can always return to AoE when you're ready.
Parent
Re:The Art of Electronics (Score:5, Informative)
As for your link to electricity misconceptions [eskimo.com], all I can say is that I find the information there disagrees with what I was taught by the US Navy. It reminds me of the old electron flow vs hole flow [uiuc.edu] arguments. The important part is that electric circuits work the same regardless of what you're philosophy is concerning the movement of electrons.
Best of luck with your search. Just remember that soldering irons are HOT. I've heard good things about the Art of Electronics as well.
Aero
Parent
Re:The Art of Electronics (Score:5, Interesting)
On topic I found "Teach Yourself Electricity and Electronics" by Stan Gibilisco to be a very useful book for hobbiest stuff.
Parent
Re:The Art of Electronics (Score:4, Informative)
Parent
Applied Engineering Principles (Score:5, Informative)
http://www.usna.edu/EE/ee301/internal/Applied_EngineeringPrinciples.pdf [usna.edu]
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...
Parent
Bebop to the Boolean Boogie (Score:5, Informative)
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 [amazon.com]
(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?)
Parent
Re: (Score:3, Informative)
You'd end up with Bebop Boolean Boogie Unconventional Electronics [amazon.com]
Tada!
Re:Bebop to the Boolean Boogie (Score:5, Informative)
While this is true in this specific case, it's only because Slashdot automatically corrects your broken markup. You cannot use slashes in an attribute value without quoting it, and slashes appear in most URLs.
Parent
By far the best I've seen (Score:5, Informative)
Once you get through that you'll have a reasonable understanding of the field.
Parent
Re: (Score:3, Interesting)
Re:The Art of Electronics (Score:4, Funny)
Parent
Re: (Score:3, Informative)
I's actually say get
Elelectricity - Principlas and Applications http://www.amazon.com/Electricity-Principles-Applications-Richard-Fowler/dp/0078262860/ref=sr_1_1?ie=UTF8&s=books&qid=1210161568&sr=8-1 [amazon.com]
and as a second book "Electronics - Principles and Appli
Forrest M Mims -Getting Started In Electronics (Score:3, Informative)
METER EXAMPLE: ESI480A
http://www.toolsusa.com/asp/item_ [toolsusa.com]
Re: (Score:3, Informative)
Don't get me wrong-- I have a copy on my desk too, but I haven't cracked the spine in years, despite being an active hardware designer.
Re:The Art of Electronics (Score:5, Insightful)
It's pretty useless as a display of how to set the bias current for a class A amp for an obsolete transistor. You know, vocational school "training".
But its great for explaining the thought process of, "I want an amp" "I need the following characteristics" "guess I want a class A" "how should I design one?" "here is an example". Yes the last step, the example, is somewhat useless now, but the best part of the book was the other steps anyway. It provides an "EE education" as opposed to "vocational training".
It's like the difference between "history" and "journalism". Or "education" and "training".
Don't go into AoE expecting the wrong thing, or you'll be disappointed.
Go into it with the attitude that it's "EE in 24 hours" and you'll be unhappy. Go into it with the attitude that its a guided puzzle book or a philosophy of EE work, and you'll be happy. It's kind of like Knuth's TAoCP series, in that way.
Parent
Two great books (Score:3, Informative)
http://www.amazon.com/Art-Electronics-Paul-Horowitz/dp/0521370957 [amazon.com]
You should also have a look at the classic:
"Foundations of Wireless and Electronics
by M.G. Scroggie "
http://www.amazon.co.uk/Foundations-Wireless-Electronics-M-G-Scroggie/dp/0750634308 [amazon.co.uk]
Musical Electronics (Score:4, Informative)
The book goes through all the basics: making and repairing your own cables, soldering, working with metal and plexiglass chassis, various types of boards(breadboards, etching). Projects are of varying difficulty and include a headphone amp, miniamp, fuzz-tone, "ring" modulator and phase shifter(the most difficult). Most projects use battery power and are safe to build and operate(note: unfortunately, none of the projects are synths.)
Maybe not your cup of tea but more fun to reuse than a run of the mill blinkenlighter.
Parent
Ahhh.... yes.... (Score:5, Funny)
3 Scary things: A programmer with soldering iron, a manager who codes and a user who gets Ideas
Re:Ahhh.... yes.... (Score:5, Funny)
Programmer
function int getVoltage(I:int, R:int)
{
var int smoke=I*R;
return smoke;
}
Manager
function float cashCow(Idea myIdea)
{
var step1:String=myIdea.text;
var step2:String=null;
var step3:String="Profit!"
return 0.0;
}
User
What if I got rid of the off button?!? That would be MUCH SIMPLER!
Parent
Community college (Score:5, Informative)
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.
Re:Community college (Score:5, Funny)
Parent
Re: (Score:3, Funny)
Yeah, I just saw one at Barnes and Noble in the kids section when I was there with my son last weekend. Unfortunately, they're for nine and up, and my son is only four... the truth is, I want the damned thing for myself, but I have to wait until he's nine and pretend I got it for him and do all the projects after everybody else is in bed.
Starter for electronics (Score:4, Interesting)
http://www.arduino.cc/ [arduino.cc]
Re:Starter for electronics (Score:4, Insightful)
If you want to just tinker with the digital side and you are willing to learn vhdl or verilog, then get a dev board from Xilinx or Altera. Some of them come with lcd screens, so you can have fun sending output to the screen.
It's corny but there's a lot more of a sense of accomplishment when you get your first LED light blinking on and off than when you write your first Hello World program.
Parent
Re:Starter for electronics (Score:5, Informative)
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 [youtube.com]. (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.
Parent
The usefulness of textbooks (Score:5, Insightful)
That being said, learning something like electronics or signal processing completely from a textbook would be really tough for me. I'm not saying it can't be done, but I think the original poster would be much better off taking a class or two than he would be trying to slug his way through something like the Art of Electronics.
Practical Electronics for Inventors (Score:5, Informative)
Happy hacking!
Re: (Score:3, Informative)
Cheers
Well... (Score:5, Informative)
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 [wikipedia.org] 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 [linear.com] a citation is the sort of thing that keeps his writing lively and interesting. Or rating circuit complexity in baby bottles [linear.com] 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.
Re: (Score:3, Informative)
The guts of a 741 is both a good and a bad place to start learning about [bipolar] transistors. You certainly won't digest it all in one sitting. But it has most of the basic arrangements that are important, and they're relatively cleanly separated. It's got an emitter-follower push-pull output stage, a common-emitter gain stage, a long-tailed pair differential input stage, some current mirrors to set up biasing, and a Vbe multiplier to help bias the output stage; it's really not complicated if you take
Pragmatic Programmers on Electronics (Score:3, Interesting)
Forrest M. Mims III (Score:5, Informative)
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.
Re:Forrest M. Mims III (Score:4, Interesting)
It looks a bit different [amazon.com] than it did when I read it.
Note that what you'll be able to do when you understand the stuff in this book is very little. You'll be able to make tone generators, and blinking lights.
What good is that? Well, given a basic microcontroller, you'll probably learn enough basic electronics sense to not burn out any of your components, and you'll probably learn enough to be able to read other people's circuit schematics.
That may be all you need of the electronics part to start you down into the exciting world of digital signal processing without a computer, which I have always thought of as the exciting part.
Parent
Not serious, but... ? (Score:3, Informative)
Practical Electronics for Inventors (Score:3, Interesting)
"The Art of Electronics" by Horowitz is definitely the standard for electronics, but for me it delved too much into the theory. It is extremely thorough, but maybe not geared towards people just wanting to build their own first small circuits.
Bridge the gap between HW and SW (Score:4, Interesting)
1. Break down assembly language even further and look into OP codes as well as the FDOES (Fetch-Decode-Operands-Execute-Store) cycle. Think clocks and busses. [microprocessor architecture, bus architecture, instruction set, instruction architecture]
2. Move further into details of how ALU and memory are implemented: how flip-flops are used to store state, and how ALU's adder circuits, etc. can be implemented using NAND gates. Know what a 7401 is. [digital circuit design, half adder, full adder, flip-flop, register]
3. Then at a lower level, study how NAND gates themselves are implemented using transistors. Know about BJTs and FETs. [transistor electronics, electronic circuit analysis and design, BJT, FET]
4. You can be happy at the transistor level, but to solder things that actually work (and at the same time, know what you're doing), you have to study electric circuits and power electronics [electrical engineering, power electronics, ohm's law, thevenin, kirchoff's circuit laws]. Know how to read the color bands on resistors and appreciate the cheeky mnemonics for BBROYGBVGW
5. If you want to grind your own sand to make your chips and transistors, you may want to look up material science
*Be careful not to inhale the lead fumes, lest you suffer brain damage
Now if someone could recommend books for each stage...
(It's hard to recommend self-learning hardware, because I was taught hardware and am self-learning Computer Science.)
Get some old/broken stereo equipment (Score:5, Informative)
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
Arduino? (Score:4, Informative)
Another option... (Score:3, Informative)
Some other books to look at are over on the ARRL.org website. Their primary focus of course is radio electronics, but they also have books on basic circuit boarding, robotics, and a few other electronic projects, as well as a few kits if you are interested in them.
Hope that's of some help. Have fun.
Make Magazine (Score:4, Informative)
Practical experience! (Score:5, Interesting)
1. Solderless breadboard, and an assortment of transistors, resistors, capacitors, inductors, 555 timers, op-amps etc. Do some simple circuits with them - make logic gates with BJTs and resistors, then do the same with mosfets (construct some CMOS gates out of discrete transistors for instance). Experiment with power supplies - buck converters to step DC voltages down, boost converters to step voltages up. Make sure you have several of each, because you'll probably let the magic smoke out of some of them.
2. Decide on a simple practical project. I chose to make a solar power system for my garden - an 80 watt pv panel sourced from ebay. The first project was to turn on lights at night from the battery that had been charged by the panel in the day. This consisted of a voltage comparator to detect when the solar panel voltage had fallen below a certain level. The output is connected to a power transistor that turns on the lights.
3. More complex stuff. Get a heap of 74 series or 4000 series logic ICs and make something with it. This will teach you how the real world has a nasty habit of creeping into your digital designs: glitches, why we need decoupling capacitors, synchronizing clocks, that kind of thing. I built an RS232 nixie tube display. It had no microcontroller - the UART was entirely implemented in 4000 series logic. I built it on tri-pad proto board. This required me to learn how to build several things: a simple switch mode power supply to boost 12v to 170vdc for the tubes, as well as the UART.
4. It is your fate to home brew a computer. My next project was a Z80 based single board computer on 160x100mm (Eurocard). It has a CTC, PIO, real time clock, paged memory, 512k of flash memory and 32k of RAM, and an expansion connector. The flash was initially programmed by a similar circuit to the nixie tube UART, but with a simple address generator circuit added. Once the initial program was written, the Z80 system could write its own flash.
I'm now up to the stage where I'm doing more challenging designs, such as an ethernet card for an 8 bit system, implemented almost entirely surface mount components, the glue logic being in a programmable logic chip called a CPLD (the little brother of the FPGA). There are even more real world considerations that mess with digital design here: how to avoid ground bounce, PCB layout considerations to make the board work at all, and also a good bit of real fun programming: writing a driver for it in assembly language
There's a great deal you can do as an electronics hobbyist: for example, you can make your own PCBs for fine pitch surface mount components if you have access to a laser printer: I've made my own PCBs for chips with 0.4mm pin pitch (that's 0.2mm traces and 0.2mm spacing) using nothing but gEDA PCB (which is GPL'd PCB layout software), a laser printer, a clothes iron, copper clad board and etchant. Sparkfun Electronics have some great tutorials on hand soldering surface mount components, by the way. As you progress, you'll want to be able to do this because there are a lot of interesting ICs that are only available in some sort of surface mount package.
"All About Circuits" (Score:3, Informative)
It's still a work in progress, but it's mostly done by now and really well-written as an introductory guide.
Additional recommendations (Score:3, Informative)
If you really want to dive in and swim however, I might also recommend "Electronic Circuits for the Evil Genius" by Dave Cutcher. I think that will get you into building things more quickly that Horowitz, but without a lot of the fundamentals.
Another idea is to get yourself one of those Radio Shack 200 in 1 electronic project kits. No soldering required for that, but you could always order the parts for any of the projects and stick them on a breadboard yourself.
Have fun!
Arduino, Lady Ada's Tutorial, join a user group! (Score:3, Informative)
And join a nearby Arduino user group!
David Mellis just started one in Boston [arduino.cc], which led me to purchase an Arduino last night!
The forums on the arduino site mention quite a few regional user's groups, maybe you can find one near you?
Don't forget circuit theory! (Score:5, Informative)
MAKE Magazine (Score:4, Informative)