Open main menu

CDOT Wiki β

Changes

Raspberry Pi Interfacing

924 bytes added, 11:57, 2 October 2012
Precautions
== Precautions ==
{{Admon/caution|You can Destroy Your Raspberry Pi|The BCM2835 is directly connected to signals present the pins on the GPIO pin header connector. Therefore, when you connect to the GPIO pin header, you are directly attaching to the SOC, and an over-voltage or over-current condition can seriously and irreversibly damage or destroy the SOC and render the Raspberry Pi useless.}}
Two conditions lead to disastrous consequences;
# Grounding a pin (which is may be expected to be an input ) when it is configured as a high output (3.3 volts, often written as 3v3), either through the GPIO configuration or the PinMux configuration. This will cause a large current flow, probably damaging the Raspberry Pi. Likewise, connecting a pint which is expected to be an input to 3v3 when it is configured as a low output (0v) will have a similar effect.
# Connecting any pin to a voltage greater than 3v3 or less than 0v.
# Use female-to-male [http://en.wikipedia.org/wiki/Jump_wire jumper wires]. The female end is connected to a selected pin in the GPIO pin header, and the male end is attached to the breadboard.
# Use micro test clips (J-clips, grabber clips) to attach to individual header pins. The micro test clips can be attached to wires inserted into the breadboard, or you can use double-ended test clip cables and attach to devices plugged into the breadboard.
 
== Logic level pain: 3.3 volt vs 5 volt signalling ==
 
"TTL" digital signals were traditionally 5v signals -- 5v indicated a "1", 0v indicated a "0". More recent devices use 3v3 or 1v8 signals.
 
The Raspberry Pi uses 3v3 signalling. [http://www.arduino.cc/ Arduino]-compatible devices generally use 5v. Other devices vary.
 
Sometimes, no signal conversion is necessary between 3v3 and 5v signalling systems. For example, a 3v3 output driving a 5v input will often work, because the 3v3 "high" ("1") level is more than half of the 5v signalling level and therefore properly registers as a high signal.
 
However, connecting a 5v output to a 3v3 input presents problems. A simple solution can be to use a voltage divider (pair of resistors) to tap 3v3 from the 5v signal. When a bidirectional signal is used, an active bidirectional voltage converter is required.