blob: c8721fe9762a0ec395c8948aa75695d8d1b38743 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
#!/bin/bash
# shellcheck source=/dev/null
source /usr/sbin/gpio-defs.sh
function gpio_number() {
GPIO_BASE=$(cat /sys/class/gpio/gpiochip"$GPIO_CHIP0_BASE"/base)
echo $((GPIO_BASE + $1))
}
# Configure GPIO as output and set its value
function gpio_configure_output() {
gpioId=$(gpio_number "$1")
echo "$gpioId" > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio"${gpioId}"/direction
echo "$2" > /sys/class/gpio/gpio"${gpioId}"/value
echo "$gpioId" > /sys/class/gpio/unexport
}
function gpio_get_val() {
gpioId=$(gpio_number "$1")
echo "$gpioId" > /sys/class/gpio/export
cat /sys/class/gpio/gpio"$gpioId"/value
echo "$gpioId" > /sys/class/gpio/unexport
}
# Configure GPIO as input
function gpio_configure_input() {
gpioId=$(gpio_number "$1")
echo "$gpioId" > /sys/class/gpio/export
echo "in" > /sys/class/gpio/gpio"${gpioId}"/direction
echo "$gpioId" > /sys/class/gpio/unexport
}
|