16
.gitlab-ci.yml
Normal file
16
.gitlab-ci.yml
Normal file
@@ -0,0 +1,16 @@
|
||||
# image: scorpil/rust:stable
|
||||
|
||||
stages:
|
||||
- test
|
||||
|
||||
shellcheck:
|
||||
stage: test
|
||||
image: ubuntu:yakkety
|
||||
before_script:
|
||||
- apt-get update && apt-get install -y shellcheck
|
||||
- locale-gen en_US.UTF-8
|
||||
- export LANG=en_US.UTF-8
|
||||
- export LANGUAGE=en_US:en
|
||||
- export LC_ALL=en_US.UTF-8
|
||||
script:
|
||||
- find . -type f -name '*.sh' -print0 | xargs -n 1 -0 shellcheck --color
|
||||
51
V1/led.sh
Executable file
51
V1/led.sh
Executable file
@@ -0,0 +1,51 @@
|
||||
#!/usr/bin/env bash
|
||||
# usage: led.sh <port>
|
||||
set -o xtrace
|
||||
|
||||
# config default
|
||||
GPIO_PORT="${1:-18}"
|
||||
|
||||
function export_port() {
|
||||
port="${1}"
|
||||
echo "${port}" > /sys/class/gpio/export
|
||||
}
|
||||
function unexport_port() {
|
||||
port="${1}"
|
||||
echo "${port}" > /sys/class/gpio/unexport
|
||||
}
|
||||
|
||||
function set_direction() {
|
||||
port="${1}"
|
||||
value="${2}"
|
||||
echo "${value}" > "/sys/class/gpio/gpio${port}/direction"
|
||||
}
|
||||
|
||||
function set_value() {
|
||||
port="${1}"
|
||||
value="${2}"
|
||||
echo "${value}" > "/sys/class/gpio/gpio${port}/value"
|
||||
}
|
||||
|
||||
function on() {
|
||||
port="${1}"
|
||||
set_value "${port}" "0"
|
||||
}
|
||||
function off() {
|
||||
port="${1}"
|
||||
set_value "${port}" "1"
|
||||
}
|
||||
|
||||
# set exit trap
|
||||
trap 'unexport_port "${GPIO_PORT}"' EXIT
|
||||
|
||||
# init GPIO port
|
||||
export_port "${GPIO_PORT}"
|
||||
set_direction "${GPIO_PORT}" "out"
|
||||
|
||||
# loop led on/off
|
||||
while true; do
|
||||
on "${GPIO_PORT}"
|
||||
sleep 1
|
||||
off "${GPIO_PORT}"
|
||||
sleep 1
|
||||
done
|
||||
Reference in New Issue
Block a user