1
0
forked from zbw/yiliao2026

把开机脚本改了一下

This commit is contained in:
2026-03-05 12:25:23 +08:00
parent b45049f18b
commit 92fbd87207
2 changed files with 90 additions and 7 deletions

View File

@@ -11,14 +11,14 @@
# 7 - 错误绑定usb_ch343驱动失败
# 变量设置
TTY_DEVICE="/dev/ttyACM1" # 替换为你要等待的tty设备路径
TTY_DEVICE="/dev/ttyACM*" # 替换为你要等待的tty设备路径
CDC_ACM_PATH="/sys/bus/usb/drivers/cdc_acm"
USB_CH343_PATH="/sys/bus/usb/drivers/usb_ch343"
CHECK_INTERVAL=1 # 检查设备就绪的时间间隔(秒)
MAX_WAIT_SECONDS=30 # 最大等待时间0表示无限等待
# 初始化变量
start_time=$(date +%s)
start_time=$(cut -d. -f1 /proc/uptime)
current_time=0
qinheng_id=""
usb_address=""
@@ -30,13 +30,17 @@ cdc_acm_sub_addr=""
# ----------------- 1. 等待TTY设备就绪 -----------------
# 循环等待tty设备就绪检查设备节点是否存在+是否可读写)
while true; do
if [ -c "${TTY_DEVICE}" ] && [ -r "${TTY_DEVICE}" ] && [ -w "${TTY_DEVICE}" ]; then
echo "[雷达驱动自动切换程序] 设备 ${TTY_DEVICE} 已就绪!" > /dev/kmsg
break
fi
for dev in /dev/ttyACM*; do
[ -e "$dev" ] || continue
if [ -c "$dev" ] && [ -r "$dev" ] && [ -w "$dev" ]; then
echo "[雷达驱动自动切换程序] 设备 $dev 已就绪!" > /dev/kmsg
TTY_DEVICE="$dev"
break 2 # 跳出两层循环
fi
done
if [ ${MAX_WAIT_SECONDS} -gt 0 ]; then
current_time=$(date +%s)
current_time=$(cut -d. -f1 /proc/uptime)
elapsed_seconds=$((current_time - start_time))
if [ ${elapsed_seconds} -ge ${MAX_WAIT_SECONDS} ]; then
echo "[雷达驱动自动切换程序] 错误:等待 ${TTY_DEVICE} 超时(${MAX_WAIT_SECONDS}秒)!" > /dev/kmsg