WiringPi/gpio/gpio.1
Gordon Henderson 2c13e6148d Initial Commit
2012-07-10 13:37:06 +01:00

146 lines
3.0 KiB
Groff

.TH "GPIO" "14 June 2012" "Command-Line access to Raspberry Pi GPIO"
.SH NAME
gpio \- Command-line access to Raspberry Pi GPIO
.SH SYNOPSIS
.B gpio
.RB [ \-g ]
.RB < read/write/pwm/mode ...>
.TP
.B gpio
.RB < export/unexport/exports ...>
.SH DESCRIPTION
.B GPIO
is a command line tool to allow the user easy access to the GPIO pins
on the Raspberry Pi. It's designed for simple testing and diagnostic
purposes, but can be used in shell scripts for general if somewhat slow
control of the GPIO pins.
Additionally, it can be used to set the exports in the /sys/class/gpio
system directory to allow subsequent programs to use the /sys/class/gpio
interface without needing to be run as root.
.SH OPTIONS
.TP
.B \-g
Use the BCM_GPIO pins numbers rather than WiringPi pin numbers.
.TP
.B read
Read the digital value of the given pin and print 0 or 1 to represent the
respective logic levels.
.TP
.B write
Write the given value (0 or 1) to the pin.
.TP
.B pwm
Write a PWM value (0-1023) to the given pin.
.TP
.B mode
Set a pin into input, output or pwm mode. Can also use the literals up, down or tri
to set the internal pull-up, pull-down or tristate controls.
.TP
.B export
Export a GPIO pin in the /sys/class/gpio directory. Use like the mode command above
however only in and out are supported at this time.
Once a GPIO pin has been exported, the
.B gpio
program changes the ownership of the /sys/class/gpio/gpioX/value pseudo file to
that of the user running the
.B gpio
program. This means that you can have a small script of gpio exports to setup
the gpio pins as your program requires without the need to run anything as
root, or with the sudo command.
.TP
.B unexport
Un-Export a GPIO pin in the /sys/class/gpio directory.
.TP
.B exports
Print a list (if any) of all the exported GPIO pins and their current values.
.SH "WiringPi vs. GPIO Pin numbering"
.PP
.TS
r r l.
WiringPi GPIO Function
_
0 17
1 18 (PWM)
2 21
3 22
4 23
5 24
6 25
7 4
8 0 SDA0
9 1 SCL0
10 8 SPI CE0
11 7 SPI CE1
12 10 SPI MOSI
13 9 SPI MISO
14 11 SPI SCLK
15 14 TxD
16 15 RxD
.TE
.SH FILES
.TP 2.2i
.I gpio
executable
.SH EXAMPLES
.TP 2.2i
gpio mode 4 output # Set pin 4 to output
.PP
gpio -g mode 23 output # Set GPIO pin 23 to output (same as WiringPi pin 4)
.PP
gpio mode 1 pwm # Set pin 1 to PWM mode
.PP
gpio pwm 1 512 # Set pin 1 to PWM value 512 - half brightness
.PP
gpio export 17 out # Set GPIO Pin 17 to output
.PP
gpio export 0 in # Set GPIO Pin 0 (SDA0) to input.
.PP
gpio -g read 0 # Read GPIO Pin 0 (SDA0)
.SH "NOTES"
When using the export or unexport commands, the pin numbers are
.B always
native GPIO numbers and never wiringPi pin numbers.
.SH "SEE ALSO"
.LP
WiringPi's home page
.IP
https://projects.drogon.net/raspberry-pi/wiringpi/
.SH AUTHOR
Gordon Henderson
.SH "REPORTING BUGS"
Report bugs to <gordon@drogon.net>
.SH COPYRIGHT
Copyright (c) 2012 Gordon Henderson
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.