openwrt调试串口转为普通通信串口

本文详细介绍了如何在OpenWrt系统中关闭串口控制台和内核打印,从而释放串口用于与其他外部芯片进行通信。通过修改系统配置文件,用户可以自行编译新的固件或直接修改现有固件来实现串口的释放。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

http://wiki.wrtnode.com/index.php?title=Release_UART/zh-cn

由于mt7620n只有一个UART lite接口,在原生的OpenWrt中作为了内核打印和tty控制台所用。

而在很多情况下,需要使用串口与外部芯片就行通讯,这时就需要从OpenWrt中释放串口。

其实这个任务只有两个步骤:(我们假定$(TOPDIR)为OpenWrt的编译目录)


  • 关闭串口控制台

将$(TOPDIR)/target/linux/ramips/base-files/etc/inittab文件里的下面一句注释掉

::askconsole:/bin/ash --login
$ vi $(TOPDIR)/target/linux/ramips/base-files/etc/inittab 
::sysinit:/etc/init.d/rcS S boot
::shutdown:/etc/init.d/rcS K shutdown
#::askconsole:/bin/ash --login
  • 关闭内核打印

在$(TOPDIR)/package/base-files/files/etc/config/system文件添加以下两句

option 'conloglevel' '1'
option 'kconloglevel' '1'
$ vi $(TOPDIR)/package/base-files/files/etc/config/system
config system
        option 'conloglevel' '1'
        option 'kconloglevel' '1'
        option hostname OpenWrt
        option timezone UTC

config timeserver ntp
        list server     0.openwrt.pool.ntp.org
        list server     1.openwrt.pool.ntp.org
        list server     2.openwrt.pool.ntp.org
        list server     3.openwrt.pool.ntp.org
        option enable_server 0

通过以上两个步骤,就可以关闭OpenWrt中所有的系统串口互动,除系统刚刚启动前十余秒的uboot打印信息和Kernel早期打印信息(关于这个部分的残余打印信息,建议在下位机开发的时候做出冗余)。

以上的方法是在OpenWrt的源码里修改,编译新的固件,将新的固件烧进WRTnode便可释放串口。

由于OpenWrt文件系统的可写性,也可以直接修改WRTnode现有固件里的/etc/inittab和/etc/config/system文件,重启后即可释放串口。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值