uboot设置固定按键停止

        嵌入式主板正常生产调试的时候。我们尝尝会预留一个Uart(串口)作为debug口,用来调试设备。这个串口也是uboot和内核登入控制终端。其中在uboot引到阶段会有一个delay时间用来等待键盘输入。如果在delay时间以内,按下键盘上面的任意一个字符。uboot会停止引到程序,等待客户的下一步输入。如果在等待时间内没有任何输入。uboot就会按照预定的流程加载内核和文件系统正常启动设备。但是这样就会有一个问题,就是当串口有杂数据进入的时候我们就永远也进不了系统了,进入boot就会被打断,停止在boot状态下。在实际的生产流程中。偶尔会碰到设备启动异常卡logo的状态。当插入串口调试线产看的时候。有时会发现设备停止到如下日志的位置。这个情况大部分是串口杂波干扰导致uboot接收到了异常输入,停止了。

U-Boot 2025.04-rc3 (Mar 04 2025 - 16:58:24 +0800)

DRAM:  512 MiB
WARNING: Caches not enabled
Core:  23 devices, 11 uclasses, devicetree: embed
Flash: 128 MiB
MMC:   mmci@5000: 0
Loading Environment from Flash... *** Warning - bad CRC, using default environment

In:    uart@9000
Out:   uart@9000
Err:   uart@9000
Net:   eth0: ethernet@3,02000000
Hit any key to stop autoboot:  0
=>

        几乎所有的原始SDK里面的boot都是可以按任意键停止的,我们修改uboot源码。让uboot接收固定的按键停止。这样就避免了调试口接收杂波停止的情况。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值