forked from zbw/yiliao2026
把开机脚本改了一下
This commit is contained in:
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user