MTK openwrt SDK中修改串口控制台默认波特率

MTK76X8基于SDK OpenWrt添加UART驱动 运行: echo "0123456789ABCD" > /dev/ttyS0。添加/dev/ttyS2设备(原来只有ttyS0, ttyS1)红色是添加与修改的内容,重新编译openwrt工程升级固件。UART1输出:0123456789ABCD。默认波特率是:9600。 阅读详情

MTK openwrt SDK中修改串口控制台默认波特率

在MT7621开发板上,由于uboot波特率为115200,而MTK openwrt SDK编译出来的firmware中linux内核的波特率为57600; 通过openwrt常规的方法:修改“target\linux\ramips\dts\MT7621.dts”中的如下行,无法解决

chosen {

              bootargs= "console=ttyS1,115200";

       };

后来通过如下链接中这位仁兄的给出的方法解决了,非常感谢:


一)临时解决方法

MTK路由器原本的SDK中,rt5350 mt7620 7688 7621等串口控制台不能修改默认波特率问题,是由于linux-2.6.36.x(具体目录自己搜一下)\arch\mips\ralink\cmdline.c里面写死了默认启动命令行

linux-2.6.36.x  ---- 对于MTK提供的openwrt SDK中,这个目录可能是 build_dir\target-mipsel_24kec+dsp_uClibc-0.9.33.2\linux-ramips_mt7621\linux-3.10.14-p112871; 具体需要看你的SDK,或者用find命令来找cmdline.c这个文件。

#if defined(CONFIG_RT2880_ROOTFS_IN_FLASH)
#ifdef CONFIG_SYSFS
char rt2880_cmdline[]="console=ttyS1,57600n8 root=/dev/mtdblock5";
#else
char rt2880_cmdline[]="console=ttyS1,57600n8 root=1f05";
#endif
#elif defined (CONFIG_RT2880_ROOTFS_IN_RAM)
char rt2880_cmdline[]="console=ttyS1,57600n8root=/dev/ram0";
#else
#error "RT2880 Root File System not defined"
#endif
 

改为:

#elif defined (CONFIG_RT2880_ROOTFS_IN_RAM)
char rt2880_cmdline[]="console=ttyS1,115200n8 root=/dev/ram0";
#else
#error "RT2880 Root File System not defined"
#endif
就可以了。

 

 

 

二)通过打补丁解决

 在openwrt上,build_dir目录的内容,如果make clean的话,就会被删除。所以上面的临时方法不是长久之计;可以通过打补丁的方法来解决这个问题。

1)make  target/linux/clean V=99

进入Openwrt目录, make target/linux/clean V=99,将内核清理干净。

 

2)make  target/linux/prepare V=99

make target/linux/prepare V=99,将内核应用所有patch并生成最新代码到build_dir目录下。

 

3)cd  build_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2/linux-ramips_mt7621/linux-3.10.14-p112871

cd build_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2/linux-ramips_mt7621/linux-3.10.14-p112871

进入最新kernel的source code目录。

通过下面的命令我们知道,其他两个文件夹都指向linux-3.10.14-p112871,因此我们修改linux-3.10.14-p112871这个目录中内容就可以。
[test@localhost linux-ramips_mt7621]$ ll
总用量 4
lrwxrwxrwx  1 test test 21 5月  28 19:05 linux-3.10.14 -> linux-3.10.14-p112871
drwxrwxr-x 26 test test 4096 5月  28 19:06 linux-3.10.14-p112871
lrwxrwxrwx  1 test test 21 5月  28 19:05 linux-kernel -> linux-3.10.14-p112871

 

4)quilt  top 找到得到当前最后一条patch文件;一方便我们设置新的patch

patches/platform/0307-to-115775-nand-error.patch

 

5)quilt  newplatform/0308-test-mt7621-cmdline-bitrate-115200.patch

新建0308-test-mt7621-cmdline-bitrate-115200.patch ,并指定保存目录到patches/platform/下。

 

 

6)quilt  edit arch/mips/ralink/cmdline.c

 

编辑cmdline.c(操作方式类似VI),将波特率修改成你想要设置的。

 

 

7)quilt  refresh

保存patch。

 

8) 返回到openwrt根目录

make target/linux/update V=99

进入Openwrt目录, make target/linux/update V=99,将patch应用,此时会生成新patch,到target/linux/ramips/patches/下查看。

 

ll target/linux/ramips/patches/

总用量 32

-rw-r--r-- 1 test test 4867 5月  28 10:00 0201-firmware-size.patch

-rw-r--r-- 1 test test 529 5月  28 10:00 0301-ramips-profile.patch

-rw-r--r-- 1 test test 890 5月  28 10:00 0302-rt-timer.patch

-rw-r--r-- 1 test test 1183 5月  28 10:00 0305-sdk4.3.0.5_20141205_MT7621_HW_NAT.patch

-rw-r--r-- 1 test test 413 5月  28 10:000306-sdk4.3.0.10_20150209_6RD_issue.patch

-rw-r--r-- 1 test test 3356 5月  28 10:00 0307-to-115775-nand-error.patch

-rw-rw-r-- 1 test test 825 5月  28 10:170308-test-mt7621-cmdline-bitrate-115200.patch

 

 

MT7621原厂openwrt SDK使能串口2和串口3   MT7621有三个串口,项目需要将三个串口都使能;   首先按照openwrt的方法修改DTS文件来使能串口2和串口3是不行的,经试验,还是要按照MTK传统的方法,修改内核源码来解决;不同SDK版本可能不一定相同,因此仅供参考。   一)首先修改gpio mode使能串口2和串口3; 原厂SDK,默认串口3是不使能的;需要通过修改ralink_gpio.h和ralink_gpio.... 阅读详情

相关推荐

openwrt MT7621 支持512M内存

openwrt MT7621 支持512M内存 【问题】MTK官方20150311版本SDK的openwrt中,如果选择MT7621,并且设置内存为512M时,编译出来的firmware无法运行;SDK文件为mtksdk-openwrt-3.10.14-20150311-d021c937.tar,  【解决】 一)修改前MTK官方20150311版本SDK的openwrt中build_dir/ta...

junglefly的学习工作纪录 1万+

mtk平台改串口波特率

cust_bldr.h

sunxingzhesunjinbiao的专栏 4078

MTK平台下修改波特率57600

1.Uboot/include/configs/rt2880.h #define CONFIG_BAUDRATE 57600   //将值修改为想要的波特率 2.MTK5020/source/linux-2.6.36x/arch/mips/rt2880/init.c      //将57600修改为想要的波特率 static void serial_setbrg(unsigned lo

sy1257911124的博客 2634

MT2712 Android 串口波特率修改

MTK平台默认使用的波特率是921600,经常遇到过串口乱码的问题,原因是USB转RS232的串口线hold不住这么高的波特率,可以通过降低串口波特率来解决。 1、修改bootargs 修改dts中bootargs 参数: kernel-4.9/arch/arm64/boot/dts/mediatek/device_id.dts bootargs = "console=ttyS0,115200n1 如果没有使用device_id.dtbo 来做overlay,需要直接修改对应项目使用的dts文件

SlamDunk的博客 2046

openWRT USB转串口调试记录

本文记录了openwrt下USB转串口的实验,能将console输出重定向到ttyUSB0

liangalei123的博客 2013

【MT7628】MT7628如何修改串口波特率、调试串口物理口、使用UART3口

MT7628如何修改串口波特率、调试串口物理口、使用UART3口

wgl307293845的博客 1750

mt7621 开启/ttyS2

1. question 将编译好的openwrt放入开发板之后,运行应用程序发现程序中断退出 经过调试发现中断退出点在于fd = open(“/dev/ttyS2”, O_RDWR | O_NOCTTY );失败 return -1; 而ttyS2(串口3)在程序中作用很大,在代码开始的初始化代码部分就需要通过ttyS2与JN5169进行通信获得必要信息 2. solve #2.1 自己首先去查找 /dev/ttyS2 文件 通过命令 ls -l /dev/ttyS* : crw-r–r-- 1

qq_51174802的博客 1644

mt7621_operwrt_sdk

mtk openwrt开发参考文档。 支持SOC: mt7621t、mt7628 wifi Chips: mt7603、mt7602、mt7612、mt7628 linux kernel: 3.10.4

MTK 官方 openwrt SDK 使用

来源 1、https://github.com/unigent/openwrt-3.10.14 上面有个 问题:SDK 缺少 linux-3.10.14-p112871.tar.xz 在 https://github.com/mqmaker/linux/releases 下载,注意要下载那个没打补丁的文件 3.10.14-p112871.tar.gz ,下载后需转换为 tar.xz 文件...

weixin_30773135的博客 1982

win7可用抓MTK串口工具支持921600波特率

windows 上可以用来抓uart log工具,真实可靠。特别强调的是支持921600 波特率

大模型时代的具身智能系列专题(二)

自由形式语言指令 L 指定了一个操作问题,例如“打开最顶部的抽屉”。然而,根据 L 生成机器人轨迹是很困难的,因为 L 可能具有任意长度,或者是不明确的(例如,需要上下文语义)。相反,我们专注于问题的各个阶段(子任务)l_i,它们明确地指定了一个操作任务 (例如,“抓住抽屉把手”,“打开抽屉”),其中被分解的子阶段(子任务)L→l1l2lnL→l1​l2​...ln​由高级规划器(例如,一个LLM或一个基于搜索的规划器)给出。

achao的专栏 2171

OPENWRT 修改串口(ttyS*)笔记

openwrt 系统 mt7621 配置串口功能

YL_boy的博客 1450

Xilinx Vitis arm-xilinx-eabi-gcc.exe: error: *.c: Invalid argument

This problem may be a bugof version 2021.1 only. Unfortunately, I'm just currently using this version. After Build Project: Find where this Makefile is through "make: Leaving directory" information. For me, it is located atZynq_CPU_wrapper_hw_platfo...

Ayka的博客 6660

openwrt 7621 使能ttyS1

openwrt版本 15.05-release 1 修改openwrt-15.05-release/target/linux/ramips/dts下对应的dts文件,取消uart2 uart3配置为gpio功能 将uart2 uart3从里面删掉 2 修改openwrt-15.05-release/target/linux/ramips/dts/mt7621.dtsi文件,增加串口 将uart1 uart2 uart3修改为图示,有则改之,无则加之,这样改是为了和内核源码对应起来,后..

qq_43400642的博客 1407

吃透 AM32 无人机电调:从源码架构到工作原理的全方位解析(附实践指南)(中)

介绍了三相电机控制中的SVPWM算法实现及保护机制设计。SVPWM部分详细解析了电压矢量扇区判断、占空比计算和过调制保护,通过限制占空比范围(0-100%)防止电机失控,并提供了完整的代码实现。保护模块则重点分析了过流、过压/欠压、过温三种保护机制,采用分级处理策略(硬保护停机/软保护降功率)确保系统安全。此外,文章还介绍了参数管理模块在STM32 Flash中的存储方案,包括参数定义、数据结构和读写操作,为电机控制系统提供了完整的解决方案。

bother3000的博客 1388

微信小程序 - 引入并使用 Fly.js 请求库(超级详细的教程及运行示例)提供 Fly.js 源码源文件下载,贴心的配置示例及注释,优雅快速的发起 http 网络请求

fly.js请求库官方教程文档,微信小程序封装fly.js请求,在小程序/mpvue中使用flyio发起网络请求的方法,微信小程序中如何使用flyio封装网络请求,微信小程序中如何使用flyio封装网络请求,最好的教程,fly最好的文档教程,微信小程序使用fly接口请求框架,引入fly.js报错,微信小程序中如何使用flyio封装网络请求,微信小程序引入Fly.js请求库,如何在fly中配置请求/响应拦截器,如何在微信小程序中优雅地发送异步请求,请求/响应拦截器,微信小程序-引入并使用F

🏆 前端领域优质创作者 5608

OpenWRT编译 -- uboot修改波特率以及Openwrt使用115200波特率乱码问题

环境:Openwrt,MT7620、MT7688 一、修改默认的波特率 当前路径:uboot 在 ./lib_mips/board.c 中 初始化函数 board_init_f() 里面调用 init_baudrate 来初始化波特率 static int init_baudrate (void) { //uchar tmp[64]; /* long enough for env...

青椒*^_^*凤爪爪的博客 6864

基于混合智能框架的景区边界范围预测与补全系统

摘要 本文提出一种混合智能框架,结合随机森林模型和GIS规则约束,解决景区边界缺失问题。系统基于Python和ArcGIS平台,利用多源地理空间数据训练随机森林分类器预测景区范围,并集成地形、水文、道路等GIS规则进行优化。实验结果表明,该方法能有效预测15000个景区的边界,精度优于单一模型。创新点在于: 1)数据驱动与知识驱动相结合的混合智能范式; 2)面向全国尺度的大规模边界补全; 3)提供完整的Python+ArcGIS实现方案。该系统为景区精细化管理提供了技术支撑,具有实用价值。

huanghm88的专栏 281

mt7621 openwrt19.07 打开uart3

感谢网络各路大神的慷慨分享,不然无门可入! 用于和STM片子通信的,单片机的uart很快搞好,openwrt的uart配置太绕,但是设备树(dts)似乎是linux老大推进的。弄呗。。 默认情况,dev下有ttyS0-2,但只有ttyS0用于console。启动log看不到其他tty信息。 cat ttyS1会报错:read error: I/O error, 程序里open后发数据,tx3上看不到信号。 打开 uart3:target/linux/ramips/dts/mt7621.dtsi 注释

csdn_kike的博客 1712

SAP UI5 主题设置全解析:从启动参数到运行时切换、跨域白名单与事件监听

SAP UI5主题体系深度解析:从配置到切换的完整指南 摘要:SAP UI5主题机制远不止CSS换肤,其工程化实践涵盖启动配置、运行时API切换、跨库路径映射及安全管控等关键环节。通过bootstrap标签或URL参数设置初始主题,运行时可用Theming.setTheme无刷新切换。自定义主题需配置theme-roots路径,跨域加载需声明sap-allowed-theme-origins白名单。主题切换完成后会触发applied事件,适合执行视觉同步操作。该体系支持多品牌适配、集中式主题管理,在Fior

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 326

Xilinx平台SRIO介绍(二)SRIO IP核基础知识

使用SRIO IP核必须掌握的基础知识! 理解了这篇,剩下的只是代码罢了。

数字IC/FPGA杂货铺,找一找,或许有你想要的~ 4万+

MT7688学习笔记(6)——OpenWrt下串口编程

一、头文件 操作串口需要包含的头文件: #include <stdio.h> /*标准输入输出定义*/ #include <errno.h> /*错误号定义*/ #include <sys/stat.h> #include <fcntl.h> /*文件控制定义*/ #include <termios.h> /*POSI...

Leung的博客 2780

AMBA-AXI and ACE协议详解(十)

本章介绍了ACE协议中的Barrier事务机制,包括内存屏障和同步屏障两种类型。

Crazzy_M的博客 612

flymcu无法打开串口_openwrt中添加stm32 usb虚拟串口

写在前面:由于7628的外设支持比较少,所以在开发的时候有时会使用stm32的单片机来进行扩展,这时候就需要使用虚拟usb转串口功能,而一般自己开发的usb设备在openwrt中是无法识别的,所以我们需要在内核中添加识别代码。单片机实现:stm32官方lib中自带了使用CDC类实现usb转串口功能的例子,有兴趣的同学可以自己去网上寻找如何实现,本次只关心如何将他挂载到openwrt上。如下所示,我...

weixin_39830323的博客 1897

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

openwrt 怎么进入串口_OPENWRT串口通信的实现

串口设置开机启动信息可以看到串口的名称,例如以下串口启动信息:Serial: 8250/16550 driver, 1 ports, IRQ sharing disabledar933x-uart: ttyATH0 at MMIO 0x18020000 (irq = 11) is a AR933X UARTconsole [ttyATH0] enabled, bootconsole disable...

weixin_31080131的博客 2450

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

Openwrt 串口透传ser2net 详细步骤带调试过程

2、编译固件过程中选择:luci->applications->luci-app-se2net;同时再选择一个Minicom工具utiltys->termail->minicom,后续调试串口用;服务端口:5000,协议:raw(双向);超时:0(永不超时);(1)putty登录openwrt,ps |grep ser2net,查看是否启动;(3)Cat /tmp/ser2net.conf查看配置信息是否和已配置内容一致;(2)Echo “123”/dev/ttyS2,打印信息到串口看串口是否正常;

qq_20312079的博客 2436

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

上一篇: 获得Z-WAVE产品的完整可配置参数列表
下一篇: openwrt MT7621 支持512M内存
飞越丛林
博客等级 码龄19年 115粉丝 97原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值