UNIT 01 · LESSON 6 OF 6

Reading Schematics and Datasheets

How to read a schematic net by net, and how to find the numbers that matter in a datasheet: absolute maximums, operating conditions, min/typ/max limits with their test conditions, and pin functions.

INTERACTIVERead the schematic one net at a time
Schematic of a microcontroller with a pull-up button input, an LED output and a decoupling capacitorU1MCUGPIO0GPIO1VDDGND+3V3+3V3BTNLED_AR110 kΩSW1C1100 nFR2 330 ΩD1redExample: button input on GPIO0, LED output on GPIO1
Schematic of a microcontroller with a pull-up button input, an LED output and a decoupling capacitorU1MCUGPIO0GPIO1VDDGND+3V3+3V3BTNLED_AR110 kΩSW1C1100 nFR2 330 ΩD1redExample: button input on GPIO0, LED output on GPIO1

Try this

Highlight
Net BTN (button input) Joins R1’s lower end, SW1’s upper contact and U1 pin GPIO0. Button open: R1 holds it at 3.3 V and GPIO0 reads HIGH. Button pressed: SW1 ties it to GND, GPIO0 reads LOW, and 3.3 V / 10 kΩ = 330 µA flows +3V3 → R1 → SW1 → GND. Active-low.

Choose a net or a part (or click it in the drawing) to see what it connects to and why it is there. Net labels and ground symbols join points that are not drawn wired together. Reading order: find the supply and ground nets first, then follow each signal from where it is produced to where it is consumed.

What you will be able to do
  • Read a schematic: symbols, reference designators, net labels, junctions, power rails and pin names.
  • Trace the current path for each signal in a small circuit and say which part sets each current.
  • Distinguish absolute maximum ratings from recommended operating conditions and use each correctly.
  • Read a min/typ/max row together with its test conditions and decide which number to design with.
  • Check input thresholds, output voltage at load current, current budgets and pin functions in a real datasheet.
  • Review a simple circuit against a checklist before building it.
Before you start
  • All five previous lessons; this one ties them together.
  • Comfort looking things up in a long PDF.
Steps in this lesson
  1. Reading a schematic
  2. A guided circuit
  3. Reading a datasheet
  4. Worked example: four checks before wiring
  5. A circuit-review checklist
  6. Common misconceptions

The puzzle

A schematic and a datasheet are the two documents you will read most often, and both are written for people who already know how to read them. A schematic is not a picture of the board; it is a diagram of connections. A datasheet is not a description of the part; it is a list of promises, each valid only under stated conditions. Learn what each is really saying and the hardware around your firmware stops being a black box.

STEP 1

Reading a schematic

DIAGRAMSymbols you will meet on almost every schematic
Legend of common schematic symbolsResistorCapacitor+Polarised capacitorDiode (A → K)LEDPush buttonSwitch (SPST)Inductor / coilN-channel MOSFETNPN transistorGround+3V3Supply railSCLNet labelJunction (connected)Crossing (not connected)U21 INOUT 2IC with pin names
Legend of common schematic symbolsResistorCapacitor+Polarised capacitorDiode (A → K)LEDPush buttonSwitch (SPST)Inductor / coilN-channel MOSFETNPN transistorGround+3V3Supply railSCLNet labelJunction (connected)Crossing (not connected)U21 INOUT 2IC with pin names
Sixteen common symbols. An LED’s small outward arrows indicate emitted light; its cathode is marked by the bar.

Symbols vary a little between drawing tools and regions (the resistor is a zig-zag in one style and a plain box in another), but these shapes are the common core. A net label or a power symbol connects to every other occurrence of the same name without a drawn wire.

A schematic has four kinds of ink:

  • Symbols stand for parts. Each carries a reference designator (R1, C1, U1, SW1, D1) that identifies the physical part on the board and in the parts list, and usually a value or part number.
  • Wires are connections. A dot where wires meet means they are joined; a crossing without a dot means they are not. Every wire that is joined together, however it wanders across the page, is one net, and every point on a net is at the same voltage.
  • Net labels and power symbols join points without drawing the wire. Every +3V3 symbol is the same net; every ground symbol is the same net; two wires labelled SCL are one net. This is how a schematic avoids a spaghetti of ground wires, and also how connections hide from a careless reader.
  • Pin names on a chip symbol are the datasheet’s names for its pins (VDD, GND, GPIO0, RESET). They tell you the pin’s function; the number beside them tells you where it is on the package.

STEP 2

A guided circuit

↑ This step uses the figure at the top of the page.

The circuit above combines the two things every embedded board has: a button input and an LED output. Step through the nets in the order an experienced reader would.

  1. Power first. Find +3V3 and GND. Here +3V3 feeds U1’s VDD pin, the top of R1, and C1. Everything returns to GND: SW1’s lower contact, C1, U1’s GND pin, D1’s cathode. Every current in the circuit will flow out of +3V3 and back into GND; if a part has no path to both, it does nothing.
  2. Then each signal. Net BTN joins R1, SW1 and GPIO0. R1 pulls it high; SW1 pulls it low when pressed; GPIO0 reads it. Pressed current: 3.3 V / 10 kΩ = 330 µA, flowing +3V3 → R1 → SW1 → GND. This is the pull-up circuit of lesson 3, active-low.
  3. Net LED_A joins R2 and D1. GPIO1 drives it: current flows GPIO1 → R2 → D1 → GND, set by R2 at about (3.3 − 1.9) / 330 ≈ 4 mA for a red LED. This is the LED circuit of lesson 5, and the pin must be able to source that 4 mA at an acceptable VOHV_{OH}.
  4. C1 sits between VDD and GND at U1: the decoupling capacitor of lesson 4. It carries no steady current; its whole job happens in the nanoseconds after a clock edge.

Notice what the schematic does not say. It does not say R1 is 10 kΩ because leakage is small and power matters; that reasoning lives in the designer’s head or a note. It does not say C1 must be within a few millimetres of the pins; that is a layout requirement the schematic cannot express. And it does not say whether GPIO0 has its Schmitt trigger enabled; that is firmware. Reading a schematic well means asking those questions, not just tracing the wires.

STEP 3

Reading a datasheet

A datasheet for a microcontroller runs to hundreds of pages, but the electrical promises live in a few tables near the end, and they are organised the same way in almost every manufacturer’s document. TI’s guide to reading logic datasheets describes the same three-part structure: absolute maximum ratings, recommended operating conditions, and electrical characteristics.

Absolute maximum ratings versus recommended operating conditions

DIAGRAMThree kinds of numbers on one voltage scale
Absolute maximum, recommended operating range and typical operating points on one voltage axis0 V1 V2 V3 V4 V5 V6 V7 VAbsolute maximum: 6.0 VriskOperating range: 1.8–5.5 V5.0 V3.3 VSupply voltage VCC of the example device
Absolute maximum, recommended operating range and typical operating points on one voltage axis0 V1 V2 V3 V4 V5 V6 V7 VAbsolute maximum: 6.0 VriskOperating range: 1.8–5.5 V5.0 V3.3 VSupply voltage VCC of the example device
Operate inside the recommended range. Absolute maximum values are stress limits, not precise damage thresholds or operating guarantees.

A supply-voltage example from a real datasheet (Microchip ATmega328P, DS40002061B). The recommended operating range is where the part is guaranteed to work as specified. The absolute maximum is a survival limit, not an operating point: exceeding it risks permanent damage, and operating near it is not guaranteed. Other parts have different numbers, so read each datasheet on its own terms.

Absolute maximum ratings are survival limits. The ATmega328P datasheet lists a maximum operating voltage of 6.0 V, ±0.5 V beyond the rails on any pin, 40 mA per I/O pin and 200 mA through the supply pins, and its notice reads, in part, that stresses beyond those listed “may cause permanent damage to the device”. It goes on to say that functional operation at those levels is not implied. In other words, the absolute maximum table defines stress limits, not a precise destruction threshold or an operating guarantee. The RP2040 datasheet’s equivalent table is two lines long: IOVDD from −0.5 V to 3.63 V, and any pin from −0.5 V to IOVDD + 0.5 V.

Recommended operating conditions are where the promises hold. The ATmega328P’s DC characteristics are stated for VCCV_{CC} = 1.8–5.5 V; the RP2040’s for IOVDD = 1.62–3.63 V (with the input thresholds selected to match). Design inside these ranges. The gap between “recommended” and “absolute maximum” is not a bonus region; it is where behaviour is unspecified and the part may be quietly degrading.

Min, typ, max, and the condition column

DIAGRAMAnatomy of a datasheet row
A datasheet row with its symbol, condition and limits labelledSymbolVOLParameterOutput lowvoltageConditionIOL = 20 mAVCC = 5 VTA = 85 °CMin—Typ—Max0.9UnitVTEST CONDITIONSRead current, supply andtemperature together.MAXIMUMUse 0.9 V for this check.No typical value is given.Example: ATmega328P · Table 30-1Common DC characteristics · “—” means no value is specified.
A datasheet row with its symbol, condition and limits labelledSymbolVOLParameterOutput low voltageConditionIOL = 20 mAVCC = 5 VTA = 85 °CMin—Typ—Max0.9UnitVConditions belong to the specification.0.9 V is the maximum under these conditions.“—” means no value is specified.
Symbol · parameter · condition · min/typ/max · unit. The condition is part of the number.

One row from the DC characteristics table of the example device, with the parts that matter labelled. The number is only promised under the stated test condition; a different load current, supply or temperature gives a different result. When only a maximum is listed, no typical value exists in the document and you must design to the maximum.

Each row in an electrical characteristics table has a symbol, a parameter, the conditions under which it was measured, and up to three numbers:

  • Min and Max are the limits the manufacturer guarantees (some datasheets say “ensured”), under the stated condition and across the stated temperature range.
  • Typ describes representative behavior at the stated typical conditions, often room temperature. It is information, not a promise. Some parameters have no typ at all; do not invent one.
  • The condition is part of the number. The ATmega328P promises VOL≤0.9V_{OL} \le 0.9 V at IOLI_{OL} = 20 mA, VCCV_{CC} = 5 V and 85 °C, and ≤0.6\le 0.6 V at 10 mA and 3 V. At 2 mA the real VOLV_{OL} will be much lower, but the datasheet does not say how much. The RP2040 goes further and explains the interpretation in prose: its VOHV_{OH} is the lowest high the pin will produce while sourcing the current of the selected drive strength.

Design with the limit, in the direction that hurts. For a threshold you must exceed, use the max; for a level you must stay under, use the min. Typical values are for estimating, never for guaranteeing.

STEP 4

Worked example: four checks before wiring

The task: connect a 3.3 V RP2040 output to a 5 V ATmega328P input, and drive a red LED from another output. Walk through four checks before committing the wiring.

DIAGRAM01 · Does the HIGH voltage clear the input threshold?
Driver high of 2.62 volts falls short of a 3.0 volt input requirementRP2040 outputSupply: 3.3 VATmega328P inputSupply: 5 V→2.62 V3.0 VGuaranteed HIGHRequired HIGH2.62 − 3.0 = −0.38 V
Driver high of 2.62 volts falls short of a 3.0 volt input requirementRP2040 outputSupply: 3.3 VATmega328P inputSupply: 5 V→2.62 V3.0 VGuaranteed HIGHRequired HIGH2.62 − 3.0 = −0.38 V
Not guaranteed. The HIGH noise margin is negative. Use a suitable level shifter, or recheck the whole design at a compatible supply voltage.

RP2040 Table 625 gives the output guarantee at its selected drive-strength test current. ATmega328P Table 30-1 sets the input threshold at the receiver’s supply voltage. These are device-specific limits, not universal logic levels.

Find it: RP2040 Table 625 and ATmega328P Table 30-1. Changing the receiver supply may improve the margin, but also requires checking its permitted clock frequency and all other interfaces.

DIAGRAM02 · Check dimmest operation AND excessive current
Two LED resistor cases showing 0.97 milliamps and 17.5 milliampsCASE A · less voltage headroomGPIO2.62 V330 Ω2.3 V(2.62 − 2.3) / 330 = 0.97 mABelow the intended 4 mACASE B · shrinking the resistorGPIO3.3 V80 Ω1.9 V(3.3 − 1.9) / 80 = 17.5 mABeyond the 12 mA drive test point
Two LED resistor cases showing 0.97 milliamps and 17.5 milliampsCASE A · less voltage headroomGPIO2.62 V330 Ω2.3 V(2.62 − 2.3) / 330 = 0.97 mABelow the intended 4 mACASE B · shrinking the resistorGPIO3.3 V80 Ω1.9 V(3.3 − 1.9) / 80 = 17.5 mABeyond the 12 mA drive test point
Check both ends of the range. 80 Ω improves the low-voltage case but can demand too much current at a higher output voltage. Use a driver if brightness cannot be guaranteed within the pin limits.

Two fixed-forward-voltage calculations show why choosing a resistor from minimum brightness alone is insufficient. They are illustrative operating cases, not a complete tolerance analysis; real checks also include supply, LED, resistor, temperature and pin-output limits.

Decision: do not size the resistor from minimum brightness alone. Check maximum supply voltage, minimum LED forward voltage, resistor tolerance and GPIO loading as well. The LED model here uses a fixed forward voltage for each case.

INTERACTIVE03 · Add the currents across all outputs
Adjustable total LED current compared with the 50 milliamp sourcing budget12 LEDs × 4 mA = 48 mA50 mA limit064 mA2 mA remaining
Adjustable total LED current compared with the 50 milliamp sourcing budget12 LEDs × 4 mA = 48 mA50 mA limit064 mA2 mA remaining
2 mA arithmetic headroom. Allow for other outputs and component variation; also check each pin’s load conditions.

This example assigns a nominal 4 mA to each LED and compares the sum with the RP2040’s 50 mA total sourcing limit. It omits other output loads and tolerances. A positive remainder is arithmetic headroom, not proof that a complete design is within every limit.

Try it: compare 1, 12 and 13 LEDs. Twelve nominal 4 mA loads leave only 2 mA; thirteen exceed the sourcing budget. This total is separate from the per-pin drive-strength test current.

INTERACTIVE04 · Reserve the pin function before wiring the board
One selected peripheral function routed to GPIO0SPI0 RXUART0 TXI²C0 SDAPWM0 AGPIO0physical pinOne selected role · check the pin-mux table
One selected peripheral function routed to GPIO0SPI0 RXUART0 TXI²C0 SDAPWM0 AGPIO0physical pinOne selected role · check the pin-mux table
GPIO0 is assigned to UART0 TX. Do not also allocate this pin to the button or LED. Check alternate pin options and peripheral requirements before choosing the final wiring.

Examples from RP2040 Table 2: GPIO0 can be assigned to SPI0 RX, UART0 TX, I²C0 SDA or PWM0 A, among other functions. The diagram selects one function at a time. It does not imply that all four signals operate on the pin simultaneously.

Find it: RP2040 Table 2. For the other device, ATmega328P Table 14-3 lists Port B alternatives such as PB5 / SCK / PCINT5. A peripheral may have other valid pins—check the table before reserving one for a button.

STEP 5

A circuit-review checklist

Before building or powering a board, walk the schematic once with this list.

Power and return

  • Every part has a path to its supply and to ground, and all grounds are one net (or are deliberately separate, with a documented reason).
  • Every supply pin has a decoupling capacitor, and the layout puts it at the pin.
  • Supply voltages are inside each part’s recommended operating range, and no pin can see a voltage beyond its absolute maximum (including from another board’s higher-voltage signal).

Inputs

  • No input can float: every input has a driver, a pull-up or a pull-down, including unused ones if the datasheet asks.
  • Each driver’s VOHV_{OH}/VOLV_{OL} at its actual load current clears the receiver’s VIHV_{IH}/VILV_{IL} with positive margin.
  • Slow or noisy inputs (buttons, long cables) go to Schmitt-trigger inputs or are filtered.
  • Active-low and active-high signals are named so that the firmware author cannot mistake them.

Outputs and loads

  • Every LED has a series resistor sized from VsV_s, VFV_F and the target current, and the resistor’s power is checked.
  • No pin sources or sinks more than its rated current, and the summed currents stay within the part’s budget.
  • Loads beyond the GPIO’s specified capability use a suitable driver; an N-channel MOSFET example has a gate resistor, a gate pull-down and a shared ground; inductive loads have a flyback diode.

The drawing itself

  • Junctions have dots; crossings do not; no four-way dots.
  • Net labels have the intended scope and connections; a label used once can legitimately name a test point or a fully wired net. Every reference designator is unique.
  • Polarised parts (LEDs, electrolytics, diodes) are drawn with the polarity they will be fitted in.

MYTHS AND FACTS

Common misconceptions

The absolute maximum is the limit I can run at

It is the limit above which the part may be destroyed. Run inside the recommended operating conditions.

Typical is what I will get

Typical describes representative behavior under the stated typical conditions; it is not a guaranteed limit. Guarantees are min and max, and only under the stated condition.

Two ground symbols are two different grounds

On one schematic, identical ground symbols are one net. Separate grounds get distinct symbols or names.

The pin can source 12 mA, so twelve pins can source 144 mA

Check the summed budget; both example parts cap it far lower.

The schematic shows the layout

It shows connections only. Placement, trace width and loop area are decided elsewhere and matter just as much.

Check yourself

Answer in your head, then open the card.

A datasheet says VOL ≤ 0.4 V at IOL = 4 mA. Your load sinks 8 mA. What does the datasheet promise about VOL?

Nothing. The promise holds at 4 mA. At 8 mA the output will be higher than at 4 mA, but no limit is stated; you would need a row at 8 mA or a lower-current design.

A part lists “Voltage on any pin: −0.5 V to VCC + 0.5 V” under absolute maximum ratings and VCC = 3.3 V. Can a 5 V signal be connected to it?

Not directly: 5 V exceeds 3.8 V, the absolute maximum, and can damage the part. It needs a level shifter or a resistive divider, and even then the input thresholds must be checked.

In the guided circuit, the button is pressed. List the parts the current flows through, in order, and the current.

+3V3 → R1 → net BTN → SW1 → GND, then back to the supply. 3.3 V / 10 kΩ = 330 µA. GPIO0 draws only leakage (about 1 µA or less).

Two receivers, one needing VIH ≥ 2.0 V and one needing VIH ≥ 0.7 VDD at 3.3 V, hang on the same 3.3 V output with VOH ≥ 2.4 V at its load. Are both satisfied?

The first: 2.4 − 2.0 = 0.4 V margin. The second: 0.7 × 3.3 = 2.31 V, margin 0.09 V. Both are formally positive, but 90 mV is thin; check the actual load current (a lighter load raises VOH) and the ground offsets between the parts before trusting it.

Sources (3)
  1. Microchip, ATmega48A/PA/88A/PA/168A/PA/328/P Data Sheet, DS40002061B (Rev. B, 08/2020) — §29.1 Absolute Maximum Ratings, p. 308; §30.2 Table 30-1 “Common DC characteristics”, pp. 322–323 (VIL, VIH, VOL, VOH, RPU, leakage and notes 1–4); §1 Figure 1-1 pinout, p. 12; §14.3.1 Table 14-3 “Port B Pins Alternate Functions”, p. 91
  2. Raspberry Pi Ltd, RP2040 Datasheet (build 2025-02-20) — §5.5.3.1 Table 622 Absolute maximum ratings, p. 614; §5.5.3.4 Table 625 Digital IO characteristics, pp. 615–616; §5.5.3.5 on interpreting VOH/VOL at the selected drive strength, p. 617; §5.6 Table 634 Power supply specifications, p. 622; §1.4.3 Table 2 GPIO bank 0 functions, pp. 12–13
  3. Texas Instruments, SZZA036C “Understanding and Interpreting Standard-Logic Data Sheets” (Dec 2002, rev. June 2016) — how logic datasheets organise absolute maximum ratings, recommended operating conditions and electrical characteristics, and how to compare driver and receiver levels