KI7TU's Reference Page -- Glossary


When I first started on the Reference Page, I thought that having a glossary here was a bit redundant, as these days it's very easy to look up practically any word using sites like Wikipedia or Google or many others. However, upon further reflection, I realized that one of the ways to learn about a new field would be to see a glossary where related terms are grouped together, rather than scattered out alphabetically and embedded in a huge dictionary. (The left hand side has the alphabetical listing.)

I've tried to put the terms "defined" in bold, and obsolete terms in italics.

You'll probably want to look up virtually everyting mentioned in here, but this can at least give you an idea of things that can be grouped together. Also note that it's a long list it is not intended to be an exhaustive list, but rather enough to point the user at some related terms.

I realize that the size of this glossary is probably intimidating to a lot of people. Please don't let it scare you off! You don't have to understand anywhere near everything in here to have a lot of fun in electronics. I've merely put together this list to act as a guide to allow you to find some of the "buzz words" that are related to whatever it is you're currently playing with. Remember, too, that this list is the result of some 45 years of my "playing" with electronics. No doubt you'll have an even longer list of your own 45 years from now!

Passive Components

Passive components are ones that although they may "store" energy (for a short period of time) they don't "transfer" energy and, in general, respond the same regardless of the polarity of the applied voltage (though there is a notable exception to that). I know, some of these explainaitions sound complex. Unfortunately, the real world forces the complexity.
Resistor
A device that simply impedes (makes difficult) the flow of electricity. In the ideal case, it behaves the same regardless of how the voltage or current are changing -- the voltage is always proportional to the current, and the current is always proportional to the voltage at any given moment. Resistors are measured in Ohms. A capital Greek letter Omega Ω is usually used as an abbreviation for Ohms.

A potentiometer, or pot for short, is simply a variable (adjustable) resistor. A volume control is a type of potentiometer.


Capacitor
A device that can store some energy in an (internal) electric field. The only time there is current through a capacitor is when the voltage is changing. (In otherwords, it resists changes in voltage.) This means that it will block DC, but can pass AC. By connecting one side of a capacitor to ground, its ability to store some energy can be harnessed to smooth out variations in an ostensibly DC circuit. Also, electrolytic capacitors are the one exception to the rule that direction of voltage doesn't matter: electrolytic capacitors have a preference on polarity, and can react explosively (literally!) to having the voltage be in the wrong direction. (An old name for a capacitor is a condenser.) Capacitors are measured in Farads. A capital letter F is usually used as an abbreviation for Farads. A Farad, though, is horribly large for most purposes, so we often use micro Farads or pico Farads. The small Greek letter mu (µ) is used to indicate "micro", so micro Farads is usually abbreviated µF. Pico Farads are abbreviated pF. An obsolete term for pico Farads is "micro micro Farads", abbreviated µµF.

(See also battery.)

Inductor
A device that can store some energy in a magnetic field. The only time there is a voltage across an inductor is when the current is changing. (In other words, it resists changes in current.) For a DC current, an inductor looks like a piece of wire, but an AC can be blocked by an inductor. (Another name for an inductor is a coil, as some of them are simply a small coil of wire, though most are more complex than that.) Inductors are mesaured in Henrys.

Tuned circuit
A combination of capacitors and inductors designed to maximize the response to a particular frequency. They can be designed to either "conduct" at the designated frequency (by having the capacitor and inductor in parallel) or designed to "block" at the designated frequency (by haivng the capacitor and inductor connected in series).

Filter
A combination of one or more components that will allow more of a wanted signal to pass through and less of unwanted signals to pass through. Some generic types of filters are high-pass filters which allow higher frequencies through and block lower frequencies, low-pass filters which allow lower frequencies through and block higher frequencies, band-pass filters which allow frequencies within a certain band through while blocking frequencies above or below that band, and band-block filters which block frequencies within a given band while allowing frequencies above or below that band to get through.

Note that no filter is perfect, and that some small amount of the unwanted signals will always get through, and the strength of the wanted signals will be decreased. Because of this, active filters are sometimes used that include amplification of the desired signals back to their original levels.

Besides capacitors, inductors, and resistors, other components sometimes used in filters are crystals, ceramic resonators, and cavity resonators.


Transformer
A device that transfers (and transforms) energy from one voltage (or current) to another voltage (or current). It does this by means of two inductors that share the same magnetic field. (Because of the separate inductors, a transformer doesn't allow DC through.) An autotransformer is one that does it by using two different portions of the same inductor. (An autotransformer doesn't provide any blocking of DC currents.) A transformer doesn't look like it meets the definition I've given above of a "passive device", but under the more rigorous (and complex) definition that engineers use, it is a passive device. A variac is a transformer (usually an autotransformer) that will plug into line voltage and has an adjustable output voltage.

Crystal
A small piece of piezo-electric material (that is, a material which will physically expand or contract slightly when a voltage is applied), that can be made to vibrate at a very precise frequency. In electronics, crystals usually refer to devices made of quartz. When a very high level of frequency precision is required, the crystal is maintained at a specific temperature in something called a crystal oven.

Crystals can be used to generate frequencies, or used in filters for small signals.

Closely related to crystals are ceramic resonators.

Cavity Resonator
A device whose internal volume is such that a very specific frequency (uauslly a radio frequency) will resonate in it. These are most often used as filters in radio transmitters and receivers that have to operate in close proximity to other radio transmitters.

Active (or non-linear) Components

Active, or, as engineers call them, "non-linear" components, don't have the simple voltage-current relationships that the passive components do. But this makes them more interesting. There are a long list of devices, with many subclasses. I've tried to include the ones you're most likely to encounter.
Diode
In its simplest form, a two-wire device that allows current to flow in one direction but not in the other. Another name for a diode is a rectifier, though "rectifier" usually refers to a collection of parts. The terms full wave rectifier, bridge rectifier, or full wave bridge rectifier all refer to a collection of (usually) four diodes arranged so that the output will always have the same polarity regardless of the polarity of the input. Often the four diodes are in a single package.

There are several subclasses of doides, the main ones to be aware of are zener diodes which have a very specific reverse voltage, schottky diodes which have a low forward voltage, and LEDs or Light Emitting Diodes which produce light (though not necessarily visible light) when they're conducting electricity. A photodiode is one whose conductance is controlled by the presence or absence of light (again, not necessarily visible light). A varactor is a diode that acts like a variable capacitor whose capacitance is controlled by the DC voltage that is applied to it.

Transistor
A solid state device that (usually) has three wires, or "terminals", where the signal applied to one of the terminals controls the flow of current between the other two. Transistors can be broadly classified into two catagories: switching transistors that are intended to work in an "all or nothing" fashion, and linear transistors that are intended to work in a fashion where a partial input gets a partial output.

The two major types of transistors that you'll likely encounter as a hobbyist are junction transistors and Field Effect Transistors or FETs. Junction transistors use a current applied to the terminal called the "base" to control the current between the other two terminals (called the "collector" and "emitter"), while field effect transistors use a voltage applied to the terminal called the "gate" to control the current between the other two terminals (called the "source" and "drain").

Junction transistors can be divided into the more common NPN and the less common PNP types. Likewise, FETs can be divided into N channel and the fairly rare P channel.

You may also see transistors of any of the above sorts called by the fairly descriptive names of small signal transistors or power transistors.

There are also some highly specialized transistors that you may encounter. A phototransistor is a transistor that the presence, or absence, of light (not necessarily visible light) can control the flow of electricity between the two terminals. In some phototransistors an electrical connection is provided for the controling terminal to provide a bias (adjustment). You may also run into power MOSFET transistors (HEXFET is a trademark of International Rectifier for their line of MOSFETs, but is often used to refer to the class), or their close relative the IGBT (close, at least in applications, though not at the raw silicon level). These two classes of devices are strictly power switching transistors, though they are very good at that task.

Silicon Controlled Rectifiers
SCR, Thyristor, and TRIAC are all related devices that can control the flow of electricity. They are switching devices, meaning they're either all the way "on" or all the way "off". They are also "latching" devices in that once turned on, they usually stay on until the electricity going through them goes away, even if the signal that turned them on goes away. (Note that in an AC circuit, the "electricity going through them" will "go away" 120 times a second, assuming 60Hz.) They're useful in a lot of circuits, but a very common one is in light dimmers, where they're set up to turn on "late" in each half-cycle of the power, and how bright or dim the light is gets controlled by how early or late in the cycle the device gets turned on.

Integrated Circuits or ICs

This is a truely huge class of components. An Integrated Circuit, or IC for short, is simply a bunch of separate devices, such as transistors, that are "built" on a single chip (usually made of silicon). The separate devices are usually connected together to do some useful function. They can be separated into two broad catagories, digital and analog (or linear) based on what function they are designed to perform. There are far, far more different ones than can possibly be described here, but I have included the most ones that the hobbyist is most likely to encounter (or to have fun with).

Digital ICs


Digital ICs are ones that deal with transforming 1s and 0s (ones and zeros) in some way. OK, even that is a bit of a misnomer, as the 1s and 0s are typically represented by "high" and "low" voltage levels, but it is just easier to think of them as 1s and 0s (especially as different types of ICs use different voltages for 1s or 0s -- see the spec sheet for the device you're interested in for details about it).

Discrete logic
These are ICs that bring the "simple" logic functions (called gates) out to the pins so they can be connected to the outside world. (Often a single IC will have several of the same gate, though some have only one gate per IC.) The basic logic functions are AND (output is 1 if both inputs are 1, otherwise the output is 0), OR (output is 1 if either input is 1, otherwise the output is 0), NAND (literally "Not AND", output is 0 if both inputs are 1, otherwise output is 1), NOR (literally "Not OR", output is 0 if either input is 1, otherwise output is 1), XOR (also known as Exclusive OR, output is 1 if exactly one of the inputs is 1, and the output is 0 if both inputs are 0 or both inputs are 1), and NOT or Invert (only one input, and when the input is 1, the output is 0 and when the input is 0, the output is 1). By the way, every possible combination of logic can be expressed as either a large number of NANDs or a large number of NORs, though there are some reasons to not implement it that way.

Although not strictly a gate, you may see Schmitt Triggers mentioned. Most types of logic have a "no-man's land" between high and low. Most gates become undefined, and may do bizzare things when faced with an input in this no-man's land. A Schmitt trigger is an input that will stay at it's last valid value while in the no-man's land.

There are several "families" of discrete logic. Each "member" has a different set of functions, but in general, all of the members in a family share the same specifications on things like supply voltage and what constitutes a 0 or a 1. Families you're likely to run into are the 7400 family, which is TTL ("Transistor-Transistor Logic"), the 5400 family, which is the "military" version of the 7400 series, and the 4000 family, which is an old CMOS series. On all three of these families, the last two digits indicate what the actual functions are, for instance, a 7404 is a 14-pin device with six inverters ("NOT" functions), with the remaining two pins being power and ground. Be aware that the 7400 series and the 4000 series use different numbers for given functions, for instance, a quad NAND gate in 4000 series is a 4011 while in the 7400 series it's a 7400. There are also several variants on the 7400 series, that are denoted by one, two, or three letters following the "74" part, but the last two or three digits consistently tell what the function is.

For historical completeness, I'll just metion that there were several other types of logic that were considered "obsolete" when I started playing with electronics in the mid 1960s: RDL ("Resistor-Diode Logic"), RTL ("Resistor-Transistor Logic", which was always extremely rare), and DTL ("Diode-Transistor Logic")

ECL ("Emitter-Coupled Logic") is another family that, as a hobbyist, you're not likely to encounter (though if you do, it's likely to be in the 10H00 series). ECL uses currents, rather than voltages, to represent 1s and 0s. Besides the price of these parts, downsides include the fact that they are very power-hungry, they use a -5.3 volt supply, and (since they are current-based rather than voltage based) you can't use normal oscilloscopes or volt meters to determine the state. Their big claim to fame, at one time, was extreme speed, though today the same speed ranges are common in CMOS devices. If you run across BiCMOS, it's a device with both ECL and CMOS on the same chip. (Although I worked with both ECL and BiCMOS professionally, I've never seen either in hobbyist applications.)

Programmable Logic ICs
This refers to any of a number of devices that have a large number of logic gates on them, and the user can configure how those logic gates are connected, both to each other and to the input and output pins of the device. Typically these are used to replace a fist full of discrete logic devices, but where, for various reasons (such as speed of response) one doesn't want to have a full blown microcomputer.

Most of the ones that the hobbyist is likely to encounter are of the sort that use some sort of "non-volatile" memory (that is, memory that doesn't "forget" when power is removed) to hold the programming, though there are some on the market that do use volatile memory and thus need to be reprogrammed every time the power is turned on.

There are a number of types of devices that fall into this category, with small to major differences between them: PAL, PEEL, PLA, and PLD, to name a few.

Computer chips
There are a huge variety of chips that can fall into the general classification of "computer chips". If you look under the computer hardware section below, you'll find a discussion of many different terms, and most of these terms will have a good number of chips that would fulfill that particular description.

Application Specific IC or ASIC
As the name suggests, this refers to an IC that is designed for one specific application. Due to the high cost of developing an ASIC, and the large number of relatively inexpensive programmable chips on the market today, you generally only run into ASICs in gadgets where they expect to make millions of them, things like cell phones, MP3 players, TV sets, that sort of thing.

Digital Signal Processor or DSP
This is actually a highly specialized computer chip. It works on the incoming data (usually a digitized representation of an analog signal, thus the name) in several stages. Once a datum (singular of data) has been processed by one stage, it is passed on to the next stage so that the first stage can be processing the next datum.

Mixed Signal IC
This is an IC that belongs partly under Digital ICs, and partly under Analog ICs. A couple of examples are D/A Converters (Digital to Analog Converters, or DACs) and A/D Converters (Analog to Digital Converters, or ADCs).


Analog ICs

Analog ICs are integrated circuits that are designed to work on inputs that can take on any value within a specified range, unlike digital ICs which are intended to work on inputs that can only take on two (or three) particular values. A good comparison in most peoples' lives is a light switch versus a dimmer: a simple on-off switch is a digital device, where as the dimmer, which can be set to a range of values, is an analog device.

As with the digital devices, many analog ICs can be grouped into families based on the functions that they are designed to perform. I've tried to include the ones that the hobbyist is most likely to encounter. Note that there is a dizzying array of ones that exist, so this list is no where near exhaustive.

Operational Amplifier or OpAmp
This is simply an amplifier built into a chip. Most OpAmps have what is called a diferential input. That is, the signal that they "see" (or at least pay attention to) is the difference between the two inputs, not the actual value of either of the two inputs. (If one of the inputs is tied to ground, then the device will appear to be responding to the actual value applied to the other input pin.)

There is a very wide variety of OpAmps available on the market. One of the key parameters is the maximum frequecy, and this can range from a few thousand hertz (audio) into the gigahertz (microwave) range.

There are many books that are just about OpAmps and how to use them.

Voltage Regulator
This device will take an input voltage that may vary, and put out a very precise voltage. These are often three terminal devices, and so often come in the same type of package as a transistor. For small output currents, you will typically use a "linear" regulator, but linear regulators are inefficient at high current levels. "Switching" regulators are much more efficient, but require more circuitry around them. Some regulators have a fixed voltage output voltage, and others can be adjusted by external components (often the ratio of two resistors connected to the regulator).

Although there are a large variety of regulators available, three important "families" that the hobbyist should be aware of are the 7800 series which is a family of three-pin regulators for voltages that are positive with respect to ground, the 7900 series which is a family of three-pin regulators for voltages that are negative with respect to ground, and the LM317 which is a single regulator whose output voltage is set by the ratio of two resistors and is for voltages that are positive with respect to ground. For both the 7800 and 7900 series, the last two digits are replaced by the actual output voltage, e.g., the 7805 is a positive 5 volt regulator (and probably the most important one in the series).

Please see "Voltage Regulators" in the tips page for additional important information.


Phase-Locked Loop or PLL
Although technically a "mixed-signal device" the PLL is usually classified as an analog device. A PLL provides a way to generate a desired frequency (usually as a sine wave) from an accurate reference frequency (usually generated using a crystal). In many designs, the "desired frequency" can be selected at will. One example of where a PLL is used is to synthesize the frequency for a radio.

Sensors
Have some electrical property that is dependant upon physical conditions around the device. An example is the LM34 temperature sensor that outputs a voltage that is proportional to the temperature. They often all get lumped together under "Analog ICs", although some of them are simple devices. To name a few, there are sensors for accelleration, temperature, relative humidity, position, and pressure.

One sensor of note is the thermocouple which is a temperature sensor with an extremely wide range.

Computer Terms


These days, a lot of the projects that hobbyists undertake involve some sort of computer capabilities. Therefore, it seems appropriate to mention some of the terms. Since you're reading this on a computer, it also seems safe to assume that you have at least the most basic knowledge of how to deal with a PC of some sort, and to, as they say, "surf the Internet".

Most things relating to computers can be grouped into either hardware or software.

Note that although virtually all of the terms here also apply to PCs, and even to larger computers, the emphasis is on the sort of things that the hobbyist is likely to see incorporated into things she or he is likely to build. Things that only apply to larger computers are generally not included here.

Hardware


The most basic definition of hardware is probably anything that you can see or touch (even with the power off), though possibly a more accurate description is anything to do with a computer that has (physical) weight. (Things that you "use up", like ink and paper for the printer, floppy disks, CDs and DVDs, are usually excluded from being "hardware", and fall into their own catagory of "consumables".)

I do need to stress again that this glossary does not include terms that the "general public" would be expected to know (such as "keyboard" or "mouse"), though terms that need a more specific definition than what the average person would need are included.
Central Processing Unit or CPU
The part of the computer that actually does the "computing", that is to say that it executes the instructions and has the logic (electronics) to do the required math, as well as keeping track of where the next instruction to be executed is located.

These days, it is actually very rare to see an IC that is only a CPU. They more often that not contain many other functions on the same chip.

Memory
This is the part of a computer that contains the instructions and data for immediate use. Many casual users get confused about the difference between memory and mass storage.

Mass Storage
Hardware that stores very large amounts of data and instructions for long-term storage. The information on a mass storage device is not instantly available to the CPU, and must be brought into memory to be used. A disk drive is an example of a mass storage device.

Microprocessor or MPU
The term microprocessor dates back to the days when most computers filled large rooms, and when even a small "mini" computer would fill a fair sized table. When a "CPU on a chip" came along, it was, obviously a "microprocessor". The big boxes have gone the way of the dinosaours, but the microprocessor remains. (Even todays "super computers" are made up of huge arrays of MPUs.)

Strictly speaking, an MPU refers to a chip that is just a CPU. However, today it is used more-or-less interchangably with the term microcomputer, which technically combines a CPU, some memory, and I/O onto a single chip. Some manufacturers use the terms CMU, CMP, or MCU to refer to their version.

A Programmable Logic Controller, or PLC is essentially a "microcomputer in a box", that (usually) includes a power supply, the interface circuitry to be connected to real-world sensors, and circuitry for controlling line-voltage mechanisms (e.g. motors). They are usually used in industrial situations in what is called process control applications. They are usually programmed with Ladder Logic.

Random Access Memory or RAM
Refers to general "read/write" memory, that is, memory where the locations can be read or written in any order desired. (Historically there were types of read/write memory that had to be accessed in a certain order, but those are long obsolete.)

RAM is generally one of two types: dynamic memory or static memory.

Dynamic memory (also known as DRAM) actually stores the data on tiny capacitors, and the charges will fade away in a fairly short time (the spec sheets typically say 2mS, but my testing in the mid 90s suggested that at room temperature, reality is more like 2 seconds). The designs always include a provision for a fairly easy refresh cycle, which just means "resetting the fade-out clock". The main memory in most desktop and laptop computers is dynamic. Terms like SDRAM, DDRAM, DDR2, DDR3, and DDR4 refer to the type of bus that the CPU uses to communicate with the DRAM. (There are several other types of busses as well. Many are obsolete today.)

Static memory (also known as SRAM) is memory that will hold its contents as long as power is maintained to the device. (OK, there are a few things that can make it "forget", like a cosmic ray hit, but these are fairly rare.) This means that all of the complications of refresh circuitry is eliminated. However, the internals of static memory are significantly more complex, and so for large amounts of memory, static can be quite a bit more expensive than dynamic, even allowing for the extra refresh circuitry.

Cache refers to some very high speed RAM that is on the same chip as the CPU, and thus very fast for the CPU to access. Some types of disk drives also have cache memory, again, because it is faster for the disk to access than the computer's main memory.

Core memory is an obsolete term that for many years was used to describe the computer's main memory. It came from the fact that early computer memory used tiny magnetic cores to store the data. (It did have the advantage that it didn't "forget" when the power to the computer was turned off.)

Read Only Memory or ROM
Today, most of what falls into the category of "Read Only Memory" should really be called "Read Mostly Memory". This is memory that contains things that aren't expected to change (or at least, not change very often). ROM devices can retain their data for at least several years, even without having any power applied.

The first ROM devices were "mask programmed", which means that the data content was set when the device was manufactured. Next came Programmable ROM, or PROM devices, which were "blank" when they came from the factory, and you used a special piece of hardware called a programmer to put the data into them. They were only programmable one time, so if you needed to change the contents, you had to replace the PROMs.

Next came Erasable Programmable ROM, or EPROM, devices. These could be erased by exposing them to ultraviolet (UV) light, as each had a small window over the actual chip. You then programmed them using a special programmer, and then plugged them into the circuit. Then came Electrically Erasable Programmable ROM, or EEPROM devices. These would be erased by a special signal. Since they could be both erased and programmed electrically, it became common to build this capability into the circuitry around the EEPROM. Most PCs today use EEPROMs to store their BIOS (Basic I/O System, or what allows the computer to know enough to load the operating system when it's first turned on).

Flash memory is a subset of EEPROMs that can erase a portion of the memory at a time, rather than having to erase everything all at once. They are used a lot in consumer goods such as digital cameras, and tiny "flash drives" that are used as portable mass storage devices.

Input/Output or I/O
This is how the computer "communicates" with the outside world. It can be as simple as turning an LED on or off, or detecting when a switch has been closed, or as complex as being able to communicate with the Internet.

I/O falls into two categories; Parallel I/O and Serial I/O. With Parallel I/O each bit of data has its own pin, while with Serial I/O all of the data bits share a signle pin, going through it "single file", one at a time, like the queue to get through a narrow doorway.

These days, Parallel I/O is used within a computer, and for talking to multiple "real-world" (single-bit) devices.

Some examples of Serial interfaces are RS-232 and USB for communicating outside the computer, and SPI (Serial Periferal Interface), I2C (prounounced "I squared C") and SATA for communications within the computer. By the way, you'll sometimes see MISO and MOSI used, which are acronyms for "Master In Slave Out" and "Master Out Slave In" respectively, to indicate the direction of the wires connecting the devices.

Many MCUs have some Analog I/O pins that, rather than just taking (our outputing) zero or one, will input (or output) a range of voltages. These are useful in conjuction with sensors.

Interrupt
Provides a method for an "outside" device or circuit to get the attention of the CPU. A few examples are that the user pushed a button, that something (like sending a byte via a serial link) has been completed, or that a (real time) clock tick has occurred. The classic example of an interrupt for students is imagine that you're sitting reading a book, and the door bell rings. You put your bookmark into the book (so that you can return to where you left off) and get up and go to the door. It is important to be aware that interrupts can be nested: In the example, consider what happens when the phone rings while you're headed to the door, and as you pick up the phone, the kitchen timer goes off telling you that something needs to come out of the oven.

Most CPUs provide special hardware that acts like the "bookmark". There is also an interrupt vector which tells the CPU where the instructions for dealing with the interrupt are in memory.

Interrupts can be complex and confusing to deal with, but are generally worth the effort in that using them allows the CPU to do useful work (or even just go into a power-saving mode) while awaiting some event.


Other Computer Hardware Terms
Besides the terms connected with computer hardware that you should have some, at least vague, familiarity with based on just using some sort of computer, there are a few that don't really seem to fit in any of the above categories, but still should have some mention here. One is Stored Program Computer. This refers to a machine that sotres the programs in memory, similar to the way it stores data. This is as opposed to computers that were programmed by plugging wires into a wiring board. I should also mention the essentially obsolete concept of an Analog Computer, which, rather than ones and zeros, used analog circuits to do "calculations".


Software


The term software merely refers to the programs for a computer, or, to put it a different way, the instructions to the computer hardware on how to accomplish a given task. (Firmware is software that is designed to be stored in, and executed from, Read-Only Memory.)

There are several different ways of grouping software. The first way is by language.

We ofthen speak about various computer languages. Humans speak what is referred to by computer folks as natural languages, for example, English, Spanish, or Chinese. Computers have their own languages that are used to describe what the humans want them to do. One of the key differences between natural language and computer language is that computer languages are very unambiguous. As a one word example of ambiguity in English, consider the word "fair". This one word can mean "nice weather" (as in "the prediction for tomorrow is fair to partly cloudy"), "a gathering of people with exhibits, entertainment, and exotic foods" (as in "let's go to the state fair tomorrow"), "each participant having an equal chance of winning" (as in "the referee made sure the game was fair"), or "middling, neither really good nor really bad" (as in "I'm feeling fair today, despite being bed-ridden yesterday"), and no doubt several others.

Computer languages come in various sorts that can be grouped into two groubs by how close they are to human languages. Low level languages are machine language and assembly language, and essentially all other computer languages are higher level languages.

Machine Language
Computers "think" in ones and zeros. (Even this is a bit of an inaccuracy, as they actually work in "high voltage" and "low voltage", but it is very convenient to talk, instead, about "ones" and "zeros".) Although this is the easiest, and indeed, the only way computers can actually process instructions, it is very difficult for humans to deal with. It is worthwhile to note that every family of computers has its own language, referred to as its native language. For instance, a program for a PIC 18 microprocessor is simply random garbage to an Intel Pentium chip.

Representing machine code in binary leads to huge arrays of ones and zeros, so even on the rare occasions when the machine code is actually examined by a human, it is generally shown in hexadecimal, or sometimes octal.

Machine language is extremely difficult to program in, and so it is almost never done these days.

Assembly Language
The next step up from machine language is assembly language. There is a one-to-one correspondance between an assembly language program and the machine language code that it generates. That is to say, each assembly language instruction translates into one machine language instruction. The instructions in assembly language are mnemonics, which are simply easy, or at least easier, to remember names for the machine language instructions that they represent. Often the mnemonic is an abbreviation for the instruction.

Assembly language programs also usually use names for memory locations where data is stored, rather than the exact address of that memory location. One advantage is that it is less likely to use the wrong address (and thus, the wrong data), and another is that if it is necessary to change what actual location is being used, it is easy to do so.

An assembler is a program that translates the assembly language program into machine language. Assemblers also provide help with memory allocation, that is, automatic selection of exactly what address should be used for each named memory location, as well as providing several other useful, though more essoteric, services. A cross assembler refers to an assembler that runs on one type of computer (for example, a PC), and generates code for another type of computer (for example, a PIC 18 microprocessor).

Compiled Language
A higher-level language, meaning that each statement (or instruction) typically translates into several machine language instructions, and in which the entire program is translated (compiled) into machine language prior to any portion of it actually running. The translation is accomplished by a compiler. A cross compiler refers to a compiler that runs on one type of computer, and generates machine language code to run on a different type of computer.

Interpreted Language
A higher-level language, meaning that each statement (or instruction) typically translates into several machine language instructions, and one which each statement (or instruction) is translated (interpreted) into machine language immediately prior to executing it. The translation (and execution) is done by an interpreter. There are two major limitations to this in that (one) every instruction is usually translated each time it is executed, even if it gets executed thousands of times in one run of the program, and (two) it can not be done as a cross-platform process. (There are a few languages whose interpreters can avoid the first problem.)

A scripting language generally refers to a special case of an interpreted language which is primarily intended to run other programs as a major portion of the work done by a given script.

Linker, Link Editor, or Linkage Editor
Although not strictly speaking a language, the linker plays a vital role with the assembler or compiler. It has several functions, the primary one being able to resolve any calls (references) to functions that are outside of the user's program (usually ones that are provided by the operating system). The linker also allows the user to split single programs up into more manageable chunks, called modules and link the together. This has many advantages, including easier debugging and making it easier to re-use part of one program in another program.

The linker also takes care of making sure that variables that are shared across multiple modules are what are actually referenced within that code.

Some linkers can deal with having modules be originally written in different languages, thus allowing (for instance) the use of assembly language in one part of a program when that is more convenient, and a higher level language for the rest of the program.



In addition to the assembly language mentioned above, there are a number of higher-level languages that are worth naming here. C is a very interesting language, in that it is a higher-level, compiled language that still gives the user access to many of the capabilities of assembly language. C++ and C# are object oriented extensions of C. FORTRAN and COBOL are compiled languages that date back to the 1950s but which are still very much in use today. Some other compiled languages that you might run across references to are Smalltalk, APL, ALGOL, and Pascal. (Pascal is often compiled to an intermediate language, called "p-code" that is then run by an interpreter. Supposedly the p-code was "platform-independant", meaning that you could compile it on one type of machine and run it on another type of machine, but in practice as they say, "your mileage may vary".) BASIC is a fairly common language, and although it seems easy to the raw beginner, it makes a lot of more advanced stuff a LOT more difficult as well as being EXTREMELY error prone. (Originally BASIC was an interpreted language, although now it is more often a compiled language.) LISP and SNOBOL are two rather old interpretive languages you may run across. Perl and Tcl/Tk are examples of scripting languages.

There is a dizzying array of other languages, too, though many are rare and/or highly specialized. HTML is an example of a highly specialized interpretive language that happens to use a web browser as its interpreter.

Ladder Logic is a specialized language for Programmable Logic Controllers. It is used to graphically specify the relations and sequences of outputs (which will do things like turn motors on, turn heaters off, etc.) based on various inputs (for example, a tank is full, or the temperature is too cold). The name comes from the appearance of the code on a couputer screen -- it looks like the rungs of a ladder.

Each and every one of the above mentioned languages has its own advantages over all of the others, but often not enough to justify learning an entirely new language.

There are some software concepts that are worth mentioning. You'll probably want to look them up in other places to get more detailed definitions, but I'm mentioning them here so you'll have some idea of what to look up.

Variable
This refers to a location used to contain some data while it is being processed.

Different languages have different types of variables, but some are fairly common. Integer will store a number that has no fractional part, what we learned in school as "whole numbers", for instance, "41" or "-7". Floating point (also called real in some languages) will store a number that has a fractional part, e.g., "7.3568". Floating point numbers are typically capable of storing very large or very small numbers, as they include an exponent that tells where the decimal point is. It should be noted that variables can be signed, meaning that they can hold either positive or negative values, or unsigned meaning that they can hold only positive numbers. Some languages also allow the programmer to specify the length of the variable, thus controlling the largest number that can be held, or, in the case of floating point numbers, the resolution of the variable.

Variables can also be non-numeric (or at least appear to be non-numeric). The most common is a character (often shortened to char), which can contain one letter, digit, or special symbol. (Closely associated are strings.)

One type of variable that is especially confusing to the beginner is the pointer variable. This is simply a variable that contains a value that points at (is literally the address in memory of) another variable. Even programmers with decades of experience tend to make a lot of mistakes when dealing with pointers. Not all languages support pointers.

Arrays
Virtually all higher level languages have some form of arrays, though the details differ from one language to the next.

An array is simply a group of several variables, all of one type, that has a name as a group. Included is the concept of an index which tells exactly which one of the variables is wanted. As a simple example, you might have an array that contains the hourly temperature readings for one day, and then you could have a way of indexing into this array for, say, the 10 AM reading.

String
A string is a special case of an array, where the base type of the array is a character (or char) type.

Some languages use the idea of a special character to terminate a string, thus eliminating the need to have a string be a fixed length of characters, although this introduces its own set of problems (notably allocation).

Record or Structure
Some languages allow you to build a record or structure for data that go together. As a very simple example, you might have a structure that has a string for a name and a space for a telephone number.

Many languages that allow you to specify a structure will then allow you to specify an array of that structure.

Linked List
Many languages allow us to define a structure that includes, amongst the other data it is to contain, a pointer to an instance of itself. Although at first glance, this seems like a silly thing to do, it turns out to be quite powerful. Going back to the example of a name and a phone number, if the structure contains a pointer to the next record if the same type, we can put as many name/phone number pairs as we want into the list.

There are many "ins and outs" of using linked lists, but that's the basic idea of what a linked list is.

Statements
Computer languages, like natural languages, have the concept of sentences. In computer languages, they are usually called statements.

Just as in a natural language, there are a wide variety of statement types in a computer language.

Most languages have some sort of declaration statement (or declarative statement) that allows you to declare variables that you are going to use and what type they are. Some languages also allow autodeclaration (or automatic declaration) of variables -- that is, when the compiler sees a new variable name, it automatically gives it some space and uses certain rules to figure out what type it should be. Although this sounds like a good idea on the surface, it actually causes a lot of problems and is a large source of errors in programs.

All languages have some form of assignment statement that tells the computer to give a variable a value. In most instances, this new value will be calculated based on things like the value of other variables, constants, functions, or even the current value of the variable itself (for instance, the new value is the old value plus one).

All languages also have various forms of flow control statements, including loop statements, branch statements, and call statements.
Loop statements
are used when a block of statements needs to be executed multiple times. Loop statements include for loops, do loops, repeat loops, and while loops, though most languages do not support all four types. (Each has its own subtleties, and can vary slightly from one language to the next, so be sure to check the documentation for the language you're using to fully understand its loops.)
Branch statements
are used to go to some other part of the program. These can be unconditional branch statements (goto statements) where the branch is always taken, or conditional branch statements where a decision is made, usually based on the contents of some variable, as to what statement to execute next. Common forms are if-then statements or if-then-else statements, and case statements (also called switch statements or computed goto statements) that usually have more than two possible outcomes.
Call statements
are simply the places where a subroutine is invoked.

Functions and Subroutines
A subroutine is simply a block of code that can be invoked (called) from another part of the program. A function is merely a subroutine that returns a value upon completion. Some languages have subroutines and functions as two distinct structures, while others merely provide the ability for a function to "return" a value of "null".

Often times a subroutine will be used when the same thing (or nearly the same thing) has to happen in multiple places within the program. Other times a subroutine will be used to group together into one place code that logically goes together, even though it only gets executed once during the program.

A linker can allow code in one module to call subroutines in another module. This can be useful in organizing large programs into smaller, more managable pieces, or to allow sharing subroutines amongst multiple programs. The linker also allows calls to subroutines or functions that are provided by the operating system.

Some languages permit recursive subroutines (recursion) which are subroutines that call themselves. Other languages prohibit this.

In object oriented languages, the data objects can have methods rather than having subroutines or functions.

Subroutines and functions (and, for that matter, methods) can have arguments (also called parameters) that pass data into (and sometimes out of) the subroutine or function.

Comments
Virtually all source languages allow the programmer to add comments, which are text that can be seen when viewing the source code but do not affect the execution of the program. That is, they get ignored by the compiler or assembler.

Assembler Directives and Compiler Directives
Virtually all assembly languages, and many (but not all) compiled languages allow for directives. These are statements that are evaluated at assembly time or compile time and can be used to control how the program is assembled or compiled. There are four basic groups that you need to know about, and many languages include a variety of other things. These four are defines, macros, conditionals and includes.
Defines
Basically you're just specifying that when you mention a name in your program, you want the assembler or compiler to insert some other text in your code in place of the name prior to trying to assemble or compile that line. For instance, you might define "green_LED" to be pin 3 on Port C, because that's the pin you connected to the green LED in your project.

It should be noted that defines can come from the command line when the assembler or compiler is invoked, thus giving the programmer flexibility (see conditionals, below).
Macros
Macros are an extension of defines, but are generally longer than just a few characters. Like subroutines, they can have arguments. However, unlike subroutines, a complete copy of the macro's code is included whereever the macro is called.
Conditionals
Conditionals are used to "turn on" or "turn off" blocks of code at assembly or compile time. Some uses are for programs that might run on different computers, or when the programmer isn't quite ready to delete some of the development/debugging code.
Includes
These directives are used to tell the assembler or compiler to include the entire contents of another file as though the entire thing were typed into the current program. They are especially useful when defining things like subroutines that are in another module (or provided by the operating system), or defining names for things specific to a given microprocessor.

Command Line Options
Many years ago computers didn't have fancy "graphic user interfaces" (or GUIs), but rather had text terminal interfaces. Rather than going through a menu of possible programs, or clicking on an icon, you would type in the name of the program you wanted to run and hit the "enter" or "return" key. This was called a command, and thus the entire line of text was called the command line. You could also type in options after the name of the program, for instance, to specify the file to be worked on (say, the file that you wanted the compiler to compile). One of the things that can be speicifed is to control the conditionals mentioned above. You can still use either a terminal program and type in the command line manually, or use an IDE that allows you to specify the command line options for the assembler, compiler, and/or linker.

Source Code and Object Code
Source code simply refers to the (more-or-less) "human readable" code that goes into the assembler or compiler. Object code refers to the stuff that comes out that directly makes sense to the computer. Technically, object code is what then goes into the linker which outputs executable code in the form of an executable image file, but we often get a bit sloppy about this, and just refer to the executables as "object code".

Editor
Text editors, or simply editors were the precursor to word processors, and are somewhat similar in that they allow you to type and change text freely. However, editors do not include things like the ability to change fonts, change colors, or do spelling checks as text is typed in. Editors also do not support formatting, such as centering lines, nor do they support inclusion of non-text things like graphics. Editors always use a "fixed spaced" font. The files they work on are pure ASCII text. One editor that many will be familiar with is Microsoft's Word Pad, though this one does not have any of the features that are useful in trying to write code.

Debugger
A debugger is a program that allows you to stop the execution of a program at virtually any point, usually by setting a breakpoint, and examine the contents of any variable. Almost all debuggers allow the user to single-step through the code, that is, to execute one statement at a time. Some, though by no means all, will also allow the user to modify variables.

Integrated Development Environment
An IDE for short, is a set of programs that include an editor, a debugger, an assembler or a compiler, and a linker that all work together. IDEs for microcomputers will generally include interfaces for In-Circuit Emulators. Frequently the debugger will be set up to show you the exact location being executed in your source code. Generally IDEs will include the capability of storing "exactly where you're at" when you quit one session so that you can pick up again when you come back later. (Generally, though, the program under development has to be restarted from the beginning, as the contents of the variables are not usually kept.)

IDEs can vary wildly in price, ranging from free to download off the internet to costing several thousand dollars. Clearly the latter are out of the reach of most hobbyists.

Numbering Systems
There are several ways of expressing numbers that you might run into. I'll mention the most prominent ones.
Binary
Sometimes shortened to just BIN, is a system that uses only 0 or 1. Like the numbers we're used to, the ones further to the left usually have a greater significance. For example, 001 is one, 010 is two, and 100 is four. This number system gets unweildy and confusing very quickly, but it is closest to what the computer actually "thinks" in. Binary is also called Base 2.
Octal
Sometimes shortened to just OCT, this is a number system that uses individual digits in the range 0 through 7. Again, ones further to the left usually have a greater significance. For example, 007 is seven, 070 is fifty-six, and 700 is four hundred fourty-eight. By grouping binary digits together in sets of three, it is easy to convert between binary and octal. The "rub" comes when you consider that most computers deal with things in bytes, which are groups of eight binary digits, and eight isn't an exact multiple of three. The customary practice is to use the octal numbers in the range of 000 through 377 to represent the contents of a byte. Often you will see a small letter o either in front, or in back, of an octal number to indicate that it is an octal value. Octal is also called Base 8.
Decimal
Sometimes shorted to just DEC, is the normal number system that you learned in elementary school. it uses individual digits in the range of 0 through 9, which digits further to the left having greater significance than those further to the right. The "rub" is that it isn't very convenient at all to change back and forth between binary and decimal. Decimal is also called Base 10.
Hexadecimal
Sometimes shortened to just HEX, is a numbering system that isn't quite so obvious. It has sixteen possible values for each digit. This is a problem in that the normal numeric characters of 0 through 9 only give us ten values. To get around this, we use the letters A through F to give us six more values, with A being ten, B is eleven, C is twelve, D is thriteen, E is fourteen, and F is fifteen. Again, digits further to the left have greater significance than those to the right. Thus, 00F is fifteen, 0F0 is two hundred fourty, and F00 is three tousand eight hundred fourty. It is very convenient to group binary bits together into groups of four, and then convert each group of four into a hexadecimal digit. Since a byte is eight bits, each byte can be represented by two hexadecimal digits. Often either an h or an x (or sometimes an H or an X) will be used to indicate that the number is in hexadecimal. Hexadecimal is also called Base 16.
Binary Coded Decimal
Also called BCD, is a numbering system where the half-bytes (also called nibbles) are limited to the range zero to nine. Many microcomputers have instructions to convert from binary to BCD, and even to do some arithmetic with all of the data in BCD. This is convenient to use when the data will have to be presented to a human, as the conversion from BCD to decimal is straight forward and doesn't include a lot of math. The downside is that it uses memory a lot less efficiently, as each byte can only represent values in the range 0 to 99 rather than the 0 to 255 that can be represented by each byte when pure binary is used. One advantage to using BCD for fractions is that most monetary units these days use fractional values that are tenths or hundreths of the base unit (e.g., cents are hundreths of dollars), and so are much easier to represent in BCD.
Other numbering systems
You may see old references to duodecimal, which is base 12 (using 0 to 9, T, and E), or trinary, wich is base 3 (using 0 to 2). Roman numerals are rarely used in the computer world. (An obscure differentiation within Roman numerals is "modern" versus "ancient" or "Roman style", the difference being that 4 is IV in modern style but IIII in ancient style, and 9 is IX in modern style but VIIII in ancient style.) There are other, obscure numbering systems, but you're not likely to encounter them as an electronics hobbyist.

Non-numeric Data
Often a computer is asked to deal with data that isn't numeric, or at least data that isn't what most people think of as being numeric. There are a lot of different standards for dealing with non-numeric data, but most of them are ones that the electronics hobbyist is unlikely to encounter. Some of the ones you are likely to encounter are enumerated below. (The latter ones in the list are more properly considered to be file formats, but they still contain what most people consider non-numeric data.)
ASCII
This is an acronum that stands for "American Standard Code for Information Interchange". It is a seven-bit code, so fits nicely into an 8-bit byte. It includes codes for all 26 letters in the English alphabet, bot upper and lower case (sometimes called capital and small letters, respectively), the digits 0 through 9, a number of special symbols (such as ampersand, dollar sign, and period, to mention a few), and several "control codes" such as tab, carriage return, and bell, to mention a few). It does have limitations, though, as there are many characters that are missing, such as the degree sign and cent sign, to mention a couple, as well as not being able to represent characters from non-English alphabets (such as Greek characters).
Unicode
An extension of ASCII from 7 bits to 16 bits. It includes many more special symbols, as well as many non-English alphabets. Values in the range of 0 through 127 are exactly the same as ASCII.
Baudot
This is another code that at one time was widely used to represent characters, and was used for communicating between certain teletype machines. It was a 6-bit code, and thus could only represent 64 characters. To expand this, it also had a pair of "shift" characters, which expanded the number of characters that could be represented. It is generally considered to be obsolete today, although it is still used for some ham radio communications.
EBCDIC
A code used by early IBM computers for coding data. The hobbyist is only likely to encounter it in historic documents today.
Hollerith
This is code that is used for encoding characters on punched (paper) cards. It is a 12 bit code, and includes codes for upper case letters, numbers, and many special symbols. Cards (usually) had 80 columns, each one used to represent one character, and twelve rows (called 0 through 9, ten, and eleven). A single hole generally represented one of the digits 0 through 9, two holes being a letter, and three holes being a special symbol. A column with no punch was a space. It is generally considered to be obsolete today.
MIDI
This is actually a communications format that was developed to communicate between electronic musical instruments. It is still in common use for that purpose today. GIF, TIFF, BMP, and JPEG
These are actually file formats that are used to store visual data (pictures). GIF is a fairly old format, that at one time involved some proprietary features. TIFF is a totally non-compressed, non-lossy format, originally developed for use with scanners and facsimile (FAX) machines. BMP, or Bit Map File, was developed by Microsoft. JPEG (sometimes called JPG) involves a "lossy" compression technique, that is to say, that the compression is allowed to lose a certain amount of fine detail.
WAV
A file format used to store sounds. This is an uncompressed file format.
MPEG
A format for storing movies. Also sometimes referred to as MPG. It typically refers to MP2, or MPEG Version 2, though it can also refer to MPEG Version 3. It uses a lossy compression technique that greatly reduces the size of the files.
MP3
Technically it is a format for storing movies, though it is commonly used for storing just the sound track. It uses a lossy compression technique.
PDF
A file format for holding graphic data, including formatted text, drawings, and photographic images. It was originally develped by Adobe Software under contract to the U.S. Navy. It is an abbreviation for Portable Data Format. The original idea was that the Navy wanted a way to generate a document on one type of computer and know that it would look exactly the same on any other type of computer.

Other Miscellaneous Electronics Terms


The following are some terms that the hobbyist is likely to encounter, but don't really fall into the other catagories described here.
Schematic
Refers to a drawing that shows symbols for each of the various components in a circuit and lines showing how they are (electrically) connected together. Information will be included beside the symbol for each component identifying its key values, and often times a sequential device number is attached to each device.

Soldering
A method of connecting two metal objects by melting a filler material that melts at a substantially lower temperature than the objects being joined. In electronics, we historically used an alloy of lead and tin as a solder, though the industry is moving towards lead-free solders (usually involving a metal called antimony [which is so named because it poisoned the monks who discovered it]).

Soldering requires a flux which chemically cleans the objects to be joined. In electronics we always use a non-acid flux, usually rosin, and for hand-soldering we usually use a solder that is actually made as a tiny tube filled with the flux (called a "core"). Some other types of soldering use acid flux, but this flux must never be used with electronics as it can destroy the electronics.

Plumbers often use soldering to join copper pipes, though they call it sweating. Brazing is a closely related process, but usually uses a copper-based alloy as a filler. Jewlers often use a silver-based alloy to solder together precious metals (such as silver, gold, or platinum).

Welding is a somewhat related process where part of the metal objects to be joined are melted along with the filler metal. Spot welding often does not add any filler metal, and simply heats the two objects to be joined in one small area using an electric current.

Wire Wrapping
A technique used to build circuits, typically one-of-a-kind circuits, that involves wrapping special silver-plated insulated wire around square, usually gold-plated posts. The posts are often connected to sockets for ICs, though there are ones to which discrete components can be soldered. One of the advanatabes of wire wrapping is that it is reasonably easy to make changes to the circuit. Special tools are available to strip and wrap the wire, as well as to unwrap the wires from a post.

Printed Circuit Board or PCB
The circuit card consisting of one or more layers of insulating material with conductive traces (usually copper) in a specific pattern used to connect together electronic components which are usually soldered to the traces. They can be single-sided, that is, with the traces only on one side, two-sided (sometimes refered to as two-layer) with traces on both sides, or multilayer where several boards are actually laminated together to form a single board.

"Printed" is actually a misnomer as they are usually etched from a solid copper sheet permanently attached to an insulating board (often fiberglass). The pattern is usually produced by a photographic process. The process involves some fairly nasty chemicals. PCBs can be made for one-of-a-kind circuits, or they may be produced literally by the millions, or anything in between.


Schematic Capture and CAD Software
Schematic Capture Software refers to software that is specifically designed to make nice, neat drawings of an electronics schematic. CAD, or Computer Aided Design software is used to design things like printed circuit boards. Many CAD packages will either include, or work from files produced by, a schematic capture program, which greatly eases the task of getting from a schematic to a PCB design. There are several commercial companies that will take the output from a CAD system and produce PCBs for a fairly reasonable fee.

Schematic Capture/CAD packages range from free for personal use (such as the gEDA/PCB Designer package that runs under Linux) to literally tens of thousands of dollars for commercial packages.

Battery
A device that stores electrical energy in the form of chemical energy. (Contrast it to a capacitor, which stores energy in the form of an electric field.) Technically a battery is the combination of several cells, usually in series, to get a higher voltage, but common usage has made battery also refer to a single cell.

A battery can be a primary battery, which is discarded (or recycled) whenever the energy in it is used up, for example, a watch battery or disposable flashlight batteries, or a secondary battery which can be recharged (because the chemical reaction is "reversible"), for example, a car battery or cell phone battery.

In addition to the fact that rechargable batteries can typically hold far more energy than capacitors, there are three other important differences to be aware of. The first is that the voltage on a capacitor decreases linearly as the charge is drawn off while a battery has a non-linear discharge curve. (Thus, a capacitor that has been discharged to say 10% of its initial charge will only have 10% of the initial voltage, but a battery, depending on the exact type, discharged to 10% of being fully charged may still have 80% or more of the fully charged voltage.) The second difference is that a rechargable battery will only survive a few hundred, or at most a few thousand charge-discharge cycles before losing most of the capacity, while some capacitors can literally go through billions of charge-discharge cycles per second, every second, for twenty or thirty years and not exhibit an appreciable loss of capacity. The third difference is that most capacitors can only retain their charge for a relatively short time (minutes or hours, though there are a few types that can get into weeks), while batteries can typically retain their charge for longer periods, weeks or months for secondary batteries and several years for primary batteries.

Switch
A device for opening or closing one or more electrical circuits controlled by a mechanical input (often times used for human input).

Switches come in a huge variety. They can be classified based on the mechanical action, the number of positions that they can take on, and on the circuits they control. Some important ones to know are toggle switches that have a lever that is used to input to the switch, push-button switches that have a plunger that is depressed or released, rotary switches that have a shaft that is rotated to one of two or more possible positions, micro switches that have a very small amount of movement required (and often have a lever, and are usually used as position sensors), and slide switches that have a button that slides back and forth. Many of these can have one or more momentary positions, that is when physical pressure is removed from them they return to their "normal" position. (An example of a momentary switch is the letter "A" key on a keyboard - when you depress it, a signal is sent to the computer indicating that you wish to send an "A", and many keyboards, if you continue to depress it will send a series of "A"s until you release the key.)

As for the circuits controlled, an archaic term of poles is still used. The archaic term throw is used for the number of positions for many types of switches. Single and double are used to specify one and two, respectively. Often they're abbreviated. Ones you're likely to encounter include

SPST
Single-pole single-throw, or a simple on-off switch.
DPST
Double-pole single-throw, a simple on-off siwtch that controls two circuits.
SPDT
Single-pole double-throw, a switch for a single circuit with two different "on" positions.
DPDT
Double-pole double-throw, a switch for controlling two circuits that has two possible "on" positions.
3PDT
3-pole double-throw, a switch for controlling three circuits that has two possible positions.

I've seen switches as high as six poles, and as high as 12 throw, but these are usually rotary switches.

An often overlooked but important aspect of switch selection is life expectancy. Is it long enough for the intended use of the switch? Some switches are only designed to last a couple thousand cycles, while others may be designed to last for millions of cycles.

Fuse or Circuit Breaker
Generally a device for limiting overloads. A fuse is generally a single-use device, that needs to be replaced if the overload condition is encountered. A circuit breaker is generally a resettable device, that is, if an overload condition causes the circuit breaker to "trip" (open the circuit), it can be reset (once the overload has been cleared). Both fuses and circuit breakers can be time delay, meaning that they will allow a higher current for a brief period (usually less than 5 seconds). This is useful for situations where the circuit being protected requires a higher start-up current than what it requires during normal operation.

A thermal fuse is a fuse that will open the circuit when a specified temperature is exceeded. They are common in certain small appliances, such as coffee makers.

A ground-fault circuit interrupter or GFCI is a somewhat related device that detects shorts to ground and quickly turns off power before such a short can become dangerous to a human. They do NOT protect against a short between the hot and neutral wires of an outlet, though.

Although there are some circuit breakers that are designed to serve as switches (mostly in aircraft applications, but also sometimes in marine applications), most circuit breakers are only designed for a few hundred cycles and should not be used as switches.

Vacuum Tube
The vacuum tube (or simply tube) was the predecessor of the transistor. It was based on a principle of physics that says that under certain circumstances, an object in a vacuum can emit electrons. Vacuum tubes are somewhat related to incandescent light bulbs, and indeed early tubes did resemble the light bulbs of the era.

Up until about 2005 or so, CRT (Cathode Ray Tube) based monitors and TVs were fairly common, and are still seen in places that sell used computers. The CRT is a special type of vacuum tube that is also called by the more descriptive term picture tube.

The one place where vacuum tubes are still common in the home is the magnetron in a microwave oven. Other tubes are still used by some audiophiles.

Note that in some countries, a vacuum tube is called a valve.

Modulation
How "information" is carried. The "information" can be music, pictures, voice, computer data, what position is desired, or a number of other things. Typically (although not always) modulation is applied to a carrier signal of some sort. The carrier is often a radio signal, though it can be something else as well. (As another example, I've seen a liquid flow modulated to carry some data in a situation where radios weren't at all practical, namely to bring up data from near the bottom of a well that was being drilled.)

There are many types of modulation possible. Here are some that are of interest to the electronics hobbyist.

AM
Amplitude modulation modifies the amplitude, or "volume", of the carrier as the applitude of the information changes. (This is how broadcast AM radio works.)
FM
Frequency modulation modifies the frequency of the carrier as the amplitude of the information changes. Note that the modulation is very small compared to the unmodulated frequency of the carrier. For instance, an broadcast FM radio station may be at 91.3MHz (91,300,000 Hertz) but is limited to a maximum deviation (modulation) of just 25kHz (25,000 Hertz).
PM
Phase modulation doesn't change the amplitude or (directly) the frequency of the signal, but adjusts where the "peaks and valleys" are in time. It's probably worth noting that actual usage of PM is fairly rare.
SSB
Single side band is related to AM, but has the unmodulated portion of the carrier removed. When a signal is AM modulated, there are two side bands produced that actually carry the information. In SSB, one of them is removed, as it is redundant. SSB is popular in ham radio, and is also used by some international short wave broadcasts. It is also occasionally used in CB radio.
PWM
Pulse width modulation is where the width of a (periodic) pulse is adjusted to carry the desired information. It is often used in remote control ("R/C") applications where the information is the desired position of a servo.
Spread Spectrum
Althought not really a form of modulation, you will sometimes encounter it mentioned in the same sentence. Spread spectrum refers to a carrier that is frequency hopping, that is, it goes ("hops") through a series of different frequencies in a certain order, usually at a fairly high rate of speed. There are several advantages to this, one being that it offers a higher immunity to noise, and another is that it allows several stations to share the same band of frequencies. (This is how WiFi works, for instance.)

There are many other forms of modulation in common use, but the above ones are the relatively simple ones that the electronics hobbyist is likely to encounter.

Frequency Ranges
Now that we've talked a bit about modulation, we should probably talk a bit about frequency ranges. We measure the frequency of any oscillating property in Hertz, which is abbreviated Hz. Back in the 1960s (and earlier) we used the term cycles per second, which is the same thing. (The name was changed to honor an important early scientist.)

For many uses, it is more convenient to use a larger unit, such as kilohertz (abbreviated kHz, which is a thousand Hz), megahertz (abbreviated MHz, which is a million Hz), or gigahertz (abbreviated gHz, which is a billion Hz). There are others, but those are the most common ones.

In radio, you'll commonly see references to frequency ranges. These have changed over the decades, and are basically just approximate limits. Here are the ones you're most likely to run into as a hobbyist:

Audio Frequency (AF)
This range is typically considered to be from about 30 Hz to about 20kHz. It is more-or-less the range that most humans can hear. There are some radio communications in this range, when it is called Low Frequency (LF), but due to the relatively small amount of data that can be carried, they tend to be rather specialized.
Medum Frequency (MF) or Medium Wave (MW)
This is typically considered to be about 500kHz to about 1.8MHz, and includes the AM broadcast band.
High Frequency (HF) or Short Wave (SW)
Today this is typically considered to be from about 1.8MHz to 30MHz. It includes many different radio "services", for example there are several amateur (ham) radio bands and also international short wave broadast bands in this range, as well as many others.
Very High Frequency (VHF)
This is generally considered to be the range of 30MHz to about 300Mz. Included in this range are several amateur (ham) radio bands, several commercial two-way radio bands, most television stations, the FM Broadcast Band, aircraft communications band, and several others.
Ultra High Frequency (UHF)
This is generally considered to be in the rage of about 300 MHz to about 1Ghz, though some folks differ a bit. Again, there are several amateur (ham) radio bands, commercial bands, the old TV UHF band, some cell phone bands, and many other uses. Doppler weather radar also operates in the UHF band.

A sidelight is that what is considered "UHF" has changed significantly over the decades. When coax cable was first developed some seventy years ago, anything above a couple of megahertz was consdiered "UHF" - thus the common name for PL-259 connectors, even though they are very poor at today's UHF frequencies.
Super High Frequency (SHF) or Microwave
This is generally considered to be anything above about 1GHz. There are a growing number of things that operate in this range, thanks to the development of inexpensive components that can function at these frequencies. A few examples are aircraft control radar, microwave ovens, WiFi, most cell phones, sattelite communications, and, of course, several amateur (ham) radio bands. There are some designations within this range, such as &qout;X-band" "K-band", "Ku-band" (pronounced "kay-you band") and others.

Each of the above frequency ranges (for radio) has its own propogation characteristics, and so its own uses.
In radio receivers, you'll sometimes encounter the term Intermediate Frequency or IF. It is not uncommon for radios to convert the radio frequency being received to another frequency (possibly in more than one step) before actually sorting out the sound (or other information) that is actually desired.

You may also encounter the term octave, which comes from music. It simply means a factor of 2 in frequency. For instance, 448MHz is one octave above 224MHz. A filter that has a pass band of 100MHz to 400MHz would be said to have a two octave pass band. In electronics, when we talk about harmonics, we are normally talking about multiples of the frequency. For instance, the third harmonic of 200MHz is 600MHz.

Photovoltaic Device
PV for short, this is just the big fancy term for a solar cell, a device for turning light into electricity. It uses the same phsyics as an LED, only it is designed to operate the other way.

Bezel
The bezel is the nice front part of the case or cabinet that mounts the bits and pieces (such as switches, volume controls, indicator lights, and so on) that a human uses to interact and control the electronic device. Usually the bezel also has labels indicating the purpose of each control or indicator.


Electromechanical Devices


These are devices that electrically powered devices that create some sort of physical motion.
Relay
Turning the power on to the coil of the relay causes what amounts to a switch to either open or close. Usually, removing power from the coil will cause the switch portion to return to its original position, though there are latching relays which remain in their last position until they receive another pulse. (Some latching relays have separate coils to turn them on and to turn them off, others have a more complex mechanism and cycle between on and off on each pulse received, and still others latch on with a pulse of one polarity and off with a pulse of the opposite polarity.)

A stepping relay is an obsolete device that, in essence, counted the number of pulses received. It was how the phone company was able to automatically deal with the pulses from the old rotary phones prior to the wide-spread use of computers.

Note that in automotive usage a relay is often called a "solenoid".

Solenoid
A device that produces a small, linear motion when power is applied. It might, or might not, have a spring to return it to its original position when power is removed. It can be a push solenoid, a pull solenoid, or a push-pull solenoid, based on the direction of the mechanical action when power is applied. An example of a push-pull solenoid is the device that actuates the electric locks in many automobiles - it will either lock the doors or unlock the doors at the press of a switch.

Note that in automotive parlance, a solenoid often refers to a (heavy-duty) relay.

Motor
A device for changing electrical energy into motion. Most motors produce rotary (turning) mostion. Motors come in a wide variety of types. Besides the simple DC motors (either brush-type or brushless), some types that the hobbyist is likely to encounter are:
Stepping motors
These motors produce a few degrees of turning for each step. Although attractive for some applications, the controls involve some rather complex electronics. Also, if an exact position is required, some sort of position detector must be incorporated (though this can be as simple as a limit switch to detect when the mechanism is in a certain position, and steps can be counted from that position).
Servo
A device that will move to a specified position in response to a control signal. Almost always the control signal is a pulse-width modulated signal (PWM), with the industry standard being that 1500 µseconds (1.5mS) being the "neutral" position. Servos are popular for remote control, such as in flying model airplanes or toy cars. Many microprocessors include special circuits that can be used to generate the PWM signal necessary to control a servo.

Technically, they should be called "servo motors", as there are servos which do not incorporate an electric motor, but in the hobbyist world, they are typically called simply servos.
Synchronous Motors
These are always AC motors, and are designed so that the frequency of the power supplied to them controls their speed. At one time they were popular in electric clocks, as the power line frequency is extremely accurate, at least over the long term.
Vibrator
Typically a small DC motor with an offset weight attached to the shaft, these will create a vibration when energized. Because of their widespread use in cell phones (and previously in pagers), they are readily available on the surplus market.

Historically, back before the days of transistors, there was a completely different device called a vibrator which was used (typically in automotive applications) to generate the high voltage required by the vacuum tubes in the car radio.
Gearmotor
A small motor that incorporates gears to reduce the output speed and increase the torque (twisting power) available.
Linear motor
A motor designed to produce a straight-line motion, rather than a rotation. The difference between a linear motor and a solenoid is that a solenoid is designed to go to one of two positions, while a linear motor is capable of going to essentially any position within its travel range. (There are some other, more technical, differences.)
Linear actuator
This is another device capable of straight-line motion, but achieves it by using a "normal" motor to drive a lead screw. They can be rather slow, but they can deal with relatively large loads using fairly small motors.

There are a large variety of other type of motors around.

Other Terms

These are just some miscellaneous terms that don't fit into the other catagories, but which have some special meaning in the world of electronics.
Junk Box
An affectionate term for the collection of parts that the hobbiest happens to have around, but doesn't have an intended use for in the very near future. This can include anything ranging from brand new factory fresh parts to very old, non-working things that the hobbyist thinks might some day come in handy for salvaging useful parts from, for example, an old computer power supply that might provide a useful connector or two at some point.

Hamfest
A gathering of ham radio enthusiasts which almost always includes a swap meet of people trying to sell electronics related things. It can be anywhere from a few hours to several days in length.



This screen last updated: 07-Feb-2017

Copyright © 2010-2017 by Clark Jones