第21章 OpenWrt串口的使用1
来源:互联网 发布:java向构造方法里传参 编辑:程序博客网 时间:2024/06/11 07:07
21.1硬件原理
从RT5350的芯片手册上可以得知, RT5350一共有两个串口, 分别为UART Lite、 UART Full,详细定义如下。
UART Lite 就是我们惯称为的串口 1,作为系统调试串口,通过这个串口,我们可以看到 OpenWrt(Linux)系统的启动信息,并且可以通过该串口来控制开发板。 UART Full 就是我们惯称为的串口 2,我们通常就是用它来做 Wi-Fi 串口,然后用来控制其他串口设备。
通过上表,我们发现串口 1 是和 GPIO15、16 复用的,而串口 2 是和 GPIO7~14 复用的。如果我们再详细的看芯片手册,我们就会发现,串口 2 其实也是和 I2S 复用的,具体如下。
通过这张表格,我们就能找出串口 2 对应的管脚了。对于串口,我们其实也只用关系发送(TXD)、接受(RXD)和地(GND)三个引脚。因此,对于串口 2,也就是 I2SSDI、I2SWS、GND 三个引脚了。
21.2 OpenWrt 支持串口 2
为了使用开发板的串口 2,必须首先把串口使能,由于我们是使用的 MPRA2 这款路由的配置, 在它的配置上串口被配置成了 GPIO, 用于控制 LEDs, 所以这里需要把它改为串口模式。修改非常简单,只要修改 dts 配置文件就可以,这里就不啰嗦了,直接讲述如何修改串口的配置。
首先修改 target/linux/ramips/dts 目录下的 rt5350.dtsi 配置文件。默认的 rt5350.dtsi 配置文件,是将那个扩展串口状态给禁用了,所以我们看不到扩展串口。这里需要把那行去掉或者将状态改为 okay,详细如下。
rt5350.dtsi 配置文件中除了修改扩展串口状态外,还需要修改设备节点。
因为我们把扩展串口状态使能后,它将在调试串口的前面,扩展串口变为 ttyS0,而调试串口变为 ttyS1,所以这里需要把调试串口的 ttyS0,变为 ttyS1,具体如下。
修改后:
这样,rt5350.dtsi 配置文件就改完了,但是扩展串口相应引脚被设置为了 GPIO 模式,怎么样才能变为串口模式了呢?需要修改 MPRA2.dts 这个配置文件, 同样位于 openwrt/trunk/target/linux/ramips/dts 目录下。
把 GPIO 模式去掉,把设置 GPIO 的设置项中 uartf 去掉,详细如下
修改后:
21.3 串口2 的简单测试
注意:开发板上必须进行如下短接。
经过前面的努力,扩展串口 2 就可以使用了,扩展串口 2 的名字为 ttyS0,我们可以通过 echo hello f403tech > /dev/ttyS0 这个命令进行测试,如果对方接收到 hello f403tech这个字符串,那说明串口 2 已经可以正常使用了。注意,此时串口 2 默认的波特率是 9600。
上图所用的软件是博主用VB 编写的串口调试软件,读者朋友随便找个挑调试助手就可以测试串口了,如果没有的话,私信博主,留下邮箱,博主看到后会发给你。
阅读全文
0 0
- 第21章 OpenWrt串口的使用1
- 第22章 Openwrt串口的使用2
- openwrt的串口使用
- openWRT串口的使用(实用)
- OPENWRT的串口初试
- 第1章 Openwrt入门
- OPENWRT串口通信的实现
- OPENWRT串口通信的实现
- openwrt 的串口与网络通信
- linux+openwrt+linkit7688:串口的应用程序配置
- openwrt的samba使用
- openWrt的使用
- openWrt的使用
- openwrt uci的使用
- Openwrt使用lua进行串口通信读写操作
- 使用python在openwrt下操作串口发送十六进制数据
- Openwrt 串口多用户访问
- openwrt 下串口编程
- 曼彻斯特编码
- vue之watch用法
- 实现ajax的队列请求
- 第12周【项目
- DOM的innerHTML
- 第21章 OpenWrt串口的使用1
- GAN的基本原理、应用和走向
- Java初学者的建议!
- 特辑丨架构师进阶之路精品文章集萃
- fetch将返回值进行对应类型的转换
- PHP上传Excel文件导入数据到MySQL数据库示例
- Spring MVC启动时初始化的几个常用方法
- Asp.Net使用ImgAreaSelect实现图片截取
- fetch-body里数据为ReadableStream-解决办法