OpenWRT (RT5350) 使能两个串口

OpenWRT(RT5350) 默认使能一个串口(uartlite) ,当做console口了,另外一个串口(uartf)与gpio复用。

在查找资料的过程中,发现在新的内核中使用到了设备树(device tree)的概念,使用dts文件描述SOC的所有资源。

针对RT5350平台,系统相关配置文件有如下几个:

1、~/openwrt/build_dir/target-mispel_24kec+dsp_musl-1.1.10/linux-ramips_rt305x/linux-3.10.49/arch/mips/ralink/rt305x.c

2、~/openwrt/build_dir/target-mispel_24kec+dsp_musl-1.1.10/linux-ramips_rt305x/linux-3.10.49/drivers/pinctrl/pinctrl-rt2880.c

3、~/openwrt/target/linux/ramips/dts/rt5350.dtsi

4、~/openwrt/target/linux/ramips/dts/MPRA2.dts

两个C文件主要是针对硬件平台相关接口寄存器定义,与dts文件密切相关,添加调试信息做了跟踪,并不需要修改。

两个dts文件主要是对接口的配置,如系统启动输出串口设置,gpio口,spi,i2c接口设置等;

下面开始配置串口,使能两个串口:(关键的修改在两个dts文件)

1、MPRA2.dts中将state_default从以下内容:

gpio {

ralink,group = "i2c", "jtag", "rgmii", "mdio", "uartf";

ralink,function = "gpio";

};

 修改成:

gpio {

ralink,group = "i2c", "jtag", "rgmii", "mdio";

ralink,function = "gpio";

};

uartf {

ralink,group = "uartf";

ralink,function = "gpio uartf";

};

2、MPRA2.dts中注释掉该文件最后gpio_export的所有内容。

3、rt5350.dtsi需要修改bootargs以使uartlite仍然作为console:

(开启uartf之前,uartlite为ttyS0作为console的,开启uartf之后,uartf成为ttyS0,uartlite变为ttyS1)

chosen {

bootargs = "console=ttyS1,57600";

};

4、rt5350.dtsi中释掉[email protected]中的status = “disabled”;

// status = "disabled";

至此,两个串口使能完毕!

时间: 2024-08-30 16:01:03

OpenWRT (RT5350) 使能两个串口的相关文章

11、串口编程

1.串口的介绍     串口的介绍, 串口发送的顺序: 1.空闲位:这里是连续的 1 2.起始位:低电平 3.数据位:对于传输的数据位这里是自己去设定传输位数,可以5.6.7.8位,但是我们一般设置为  8位 串口的数据是从低位开始发送 4.奇偶校验位:保证传输数据位中的 1 的个数是奇数还是偶数.奇校验:保证数据位中的'1'是奇数个,当数据位中的'1'是奇数个的时候,那么校验位填零:当数据位中的'1'是偶数个的时候,则校验位填为'1'. 5.停止位:低电平.持续时间为一个或者 1.5 个字符的

香蕉派路由功Openwrt、Android功耗对照測试

路由这个东西是要长期通电使用的,所以功耗也是须要关注的.如今香蕉派路由已经有了openwrt和android两个 系统,这两个系统的功耗是否一样呢? 測试工具:QUIGG的德国产功耗測试仪一个.手机充电器一个 香蕉派路由:除网线.调试串口外,没有接不论什么外部设备,当然TF卡不可缺少.没有开启无线 手机充电器自身的功耗: 电流: 功耗: 一.openwrt稳定后的数据: 电流: 功耗: 二.android稳定后的数据: 电流: 功耗: 因为openwrt眼下功能不完好,至少HDMI没有驱动起来,

keil中的串口调试:

keil中串口的虚拟调试信息在通过View-serial windows-#usart1/2/3/4/debug(printf)可以看到.当然也可以通过虚拟串口VSPD+串口调试助手在外部实现,方法如下: 虚拟 串口使用:步骤 1 下载虚拟串口软件,虚拟2个连接的串口COMA/COMB,这两个串口与PC机的真实物理串口没关系.两边的设置相同 2 打开串口通讯助手,将A分配给串口通讯助手,则B就分配给下面的COMx 2 在MDK中输入命令行或者将下面的做成debug.ini文件加载 MODE CO

RT-Thread下的串口驱动程序分析【转载】

编写本文稿的目的,在于通过分析stm32平台上的串口中断源码,学习 RTT中如何编写中断处理程序 如何编写RTT设备驱动接口代码 了解串行设备的常见处理机制 先以RTT官方源码中的STM32 BSP包来分析.rt-thread\bsp\stm32f10x 下,涉及的文件为: usart.c usart.h serail.c serail.h RTT的设备驱动程序概述 编写uart的驱动程序,首先需要了解RTT的设备框架,RTT的设备框架我们已经大致的介绍了一下,这里以usart的驱动来具体分析R

香蕉派路由功Openwrt、Android功耗对比测试

路由这个东西是要长期通电使用的,所以功耗也是需要关注的.现在香蕉派路由已经有了openwrt和android两个 系统,这两个系统的功耗是否一样呢? 测试工具:QUIGG的德国产功耗测试仪一个.手机充电器一个 香蕉派路由:除网线.调试串口外,没有接任何外部设备,当然TF卡必不可少.没有开启无线 手机充电器自身的功耗: 电流: 功耗: 一.openwrt稳定后的数据: 电流: 功耗: 二.android稳定后的数据: 电流: 功耗: 由于openwrt目前功能不完善,至少HDMI没有驱动起来,所以

【转】RS232串口通信详解

串口是计算机上一种非常通用的设备通信协议. --------------------------------- 串口的引脚定义: 9芯 信号方向来自 缩写 描述 1 调制解调器 CD 载波检测 2 调制解调器 RXD 接收数据 3 PC TXD 发送数据 4 PC DTR 数据终端准备好 5   GND 信号地 6 调制解调器 DSR 通讯设备准备好 7 PC RTS 请求发送 8 调制解调器 CTS 允许发送 9 调制解调器 RI 响铃指示器 两个串口连接时,接收数据针脚与发送数据针脚相连,彼

N76E003之串口

N76E003包含两个具备增强的自动地址识别和帧错误检测功能的全双工串口.由于两个串口的控制位是一样的,为了区分两个串口控制位,串口1的控制位以"_1"结尾(例如SCON_1).下述详例以串口0为例.每个串口都有一种同步工作模式:模式0.三种全双工异步模式:模式1,2,和3,这意味着收发可以同时连续进行.串口接收带有接收缓存,意味着在接收的前一个数据在被读取之前,串口就能接收第二个数据.接收和发送都是对SBUF进行操作访问,写入SBUF数据将直接传到发送寄存器,而读取SBUF是访问一个

进阶项目(3)UART串口通信程序设计讲解

写在前面的话 UART串行接口简称串口,是我们各类芯片最常用的一种异步通信接口,通过串口我们就可以建立起计算机和我们实验板之间的通信和控制关系,也就是我们通常所说的上下位机通信.串口可以说是不同平台互相通信.控制的一个最基本的接口. 项目需求 设计一个UART控制器,当控制器从上位机接收到数据以后,马上将数据输出,发送回上位机,完成“回环测试”.  UART的原理分析 要实现UART通信,首先我们需要用到一个外部的电平转换芯片MAX232,其具体配置电路如下: 注解: MAX232芯片是美信(M

JAVA串口开发帮助类分享-及写在马年末

在系统集成开发过程中,存在着各式的传输途径,其中串口经常因其安全性高获得了数据安全传输的重用,通过串口传输可以从硬件上保证数据传输的单向性,这是其它介质所不具备的物理条件.下面我就串口java开发的过程分享一下,并分享一个SerialPortHandler串口开发帮助类,以提高串口开发效率. 1.部署开发环境. 拷贝RXTXcomm.jar 文件到 \jre\lib\ext 目录下,拷贝rxtxSerial.dll文件到 \jre\bin目录下.注意是jre目录下,并非jdk\jre下:注意dl