临时光口检测脚本

发布于:2023-09-14 ⋅ 阅读:(82) ⋅ 点赞:(0)
#!/bin/bash -e


GPIO_CHIP=334
OPTIC0_LOS=14
OPTIC0_TX_FAULT=15
OPTIC0_TX_DIS=16
OPTIC0_DECT=17

EXPORT=/sys/class/gpio/export
CLASS=/sys/class/gpio/gpio
LOS=$((${GPIO_CHIP}+${OPTIC0_LOS}))
FAULT=$((${GPIO_CHIP}+${OPTIC0_TX_FAULT}))
DIS=$((${GPIO_CHIP}+${OPTIC0_TX_DIS}))
DECT=$((${GPIO_CHIP}+${OPTIC0_DECT}))

declare -a GROUP=(${LOS} ${FAULT} ${DIS} ${DECT})

for sub in ${GROUP[@]} ; do
        if ! [[ -d ${CLASS}${sub} ]] ; then
            echo  ${sub} > ${EXPORT}
        fi
done

echo in > ${CLASS}${LOS}/direction
echo in > ${CLASS}${FAULT}/direction
echo in > ${CLASS}${DECT}/direction
echo out > ${CLASS}${DIS}/direction

echo $1 > ${CLASS}${DIS}/value
printf "OPT-1 LOS: %d FAULT: %d DECT:%d DIS:%d\n" $(cat ${CLASS}${LOS}/value) $(cat ${CLASS}${FAULT}/value) $(cat ${CLASS}${DECT}/value) $(cat ${CLASS}${DIS}/value)