Tuesday, September 18, 2012
Raspberry PI - Lots of ways to interface to the GPIO pins
By installing the appropriate LINUX drivers and Software Modules (more on this in a later post, I hope), the rPI can communicate on the General Purpose I/O Pins (GPIO) with a LOT of different protocols.
At least one rPI LINUX disto from Adafruit has support for SPI, I2C, and one wire already built in.
Just be aware that the rPI GPIO pins are 3v3 level, and not buffered, so you have to be careful in interfacing to them, see this post for more information.
Parallel (on rPI 3v3)
http://en.wikipedia.org/wiki/Parallel_communications
up to 17 wires + Gnd
up to Mhz
Many devices (LEDs, switches)
Serial Asynchronous - Start/8 Bit/Stop (on the rPI, level is 3v3, not RS-232 level
http://en.wikipedia.org/wiki/RS-232
2 wires + Gnd (or more)
115,200 bit/s and above
Many devices (especially legacy)
1-Wire (on rPI 3v3)
http://en.wikipedia.org/wiki/One_wire
1 Wire + Gnd
up to 16.3 kbit/s
Devices
Memory
Thermometers
Clock / Timer
Digital Potentiometer
etc.
I2C (on rPI 3v3)
http://en.wikipedia.org/wiki/I2c
2 Wires + Gnd
Serial Data Line (SDA), Serial Clock (SCL)
Up to 5 MHz
Devices
SPD EEPROMs on SDRAM, DDR SDRAM, DDR2 SDRAM, NVRAM
DACs and ADCs.
intelligent speakers.
OLED/LCD displays
hardware monitors and diagnostic sensors
real-time clocks
etc.
SPI - Serial Peripheral Interface Bus (on rPI 3v3
http://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bus
4 wires + Gnd
SCLK: serial clock (output from master);
MOSI; SIMO: master output, slave input (output from master);
MISO; SOMI: master input, slave output (output from slave);
SS: slave select (active low, output from master).
Not limited to any maximum clock speed, typical 1–100 MHz
Devices
Sensors: temperature, pressure, ADC, touchscreens, video game controllers
Control devices: audio codecs, digital potentiometers, DAC
Camera lenses: Canon EF lens mount
Communications chips: Ethernet, USB, USART, CAN, IEEE 802.15.4, IEEE 802.11
Memory: flash and EEPROM
Real-time clocks
LCD displays, sometimes even for managing image data
etc.
Eric Pierce VA3EP - See the Disclaimer in the Introduction
© Eric Pierce and "VA3EP Amateur Radio And Other Geek Pursuits", 1952-2099. Unauthorized use and/or duplication of this material without express and written permission from this blog’s author and/or owner is strictly prohibited. Excerpts and links may be used, provided that full and clear credit is given to Eric Pierce and "VA3EP Amateur Radio And Other Geek Pursuits", with appropriate and specific direction to the original content.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment