12042|1

5260

帖子

236

TA的资源

管理员

楼主
 

使用Beaglebone Black的串口UART [复制链接]

转帖:http://blog.csdn.net/wyt2013/article/details/16846027
Beaglebone Black上有UART1-UART5共5个可用的uart串口,UART0连到了Beaglebone Black新增的串口调试引脚上,我们最后再来说它。我们进入/lib/firmware目录中可以看到系统自带了一些与uart有关的device tree
  • /lib/firmware/BB-UART1-00A0.dts
  • /lib/firmware/BB-UART2-00A0.dts
  • /lib/firmware/BB-UART4-00A0.dts
  • /lib/firmware/BB-UART5-00A0.dts

/lib/firmware/BB-UART1-00A0.dts/lib/firmware/BB-UART2-00A0.dts/lib/firmware/BB-UART4-00A0.dts/lib/firmware/BB-UART5-00A0.dts(不知道为何没有UART3)
以UART1为例,打开BB-UART1-00A0.dts文件我们会看到这部分内容
  • exclusive-use =
  • /* the pin header uses */
  • "P9.24", /* uart1_txd */
  • "P9.26", /* uart1_rxd */
  • /* the hardware ip uses */
  • "uart1";

        exclusive-use =                /* the pin header uses */                "P9.24",        /* uart1_txd */                "P9.26",        /* uart1_rxd */                /* the hardware ip uses */                "uart1";注释写得很清楚,P9.24和P9.26分别用作了txd和rxd引脚。因此我们就可以将这两个引脚连同地线这3根线连上串口转USB模块,稍后把模块插到usb接口上。
下面我们挂载device tree来启动UART1
# echo BB-UART1 > $SLOTS进入/dev目录会发现比原来多了一个设备ttyO1(注意是大写字母O,不是数字0)。
这时beaglebone已经准备好了,下面准备一下电脑端。

首先要确认已经装了电脑端的PL2303驱动,mac版的可以在http://pbxbook.com/other/mac-tty.html#minicom找到。win版的一搜便是,网上有很多。
然后需要一个串口助手。mac系统自带了一个在终端里运行的串口助手,名字叫screen,我们就先用它做实验(如果不习惯命令行,你也可以在网上找到各种有图形界面的串口助手)。
此时电脑端也准备好了。下面开始连接。

把usb转串口模块插到电脑上,然后在终端中进入电脑的/dev目录,会发现多了一个cu.usbserial文件。输入

# screen /dev/cu.usbserial 9600



不出错的话会成功打开串口,波特率为9600,终端界面也会清空,等待接收数据。
在beaglebone Black的终端里,我们输入
# echo "What a wonderful day" > /dev/ttyO1


如果在screen程序的终端上显示出同样的内容,串口测试就成功了。
如果你不小心把screen程序终端关闭了,那么再打开一个新的终端的话,会发现连接不上cu.usbserial了,是因为刚刚的串口进程还没关闭,串口还是被占用状态。在电脑端的终端中输入top命令查看进程,找到screen进程,记住PID进程号,然后按q键退出查看进程,然后输入 kill PID号 杀掉之前的screen进程就可以重新连接了。

如何调波特率?
在beaglebone Black的终端上,输入
# stty -F /dev/ttyO1 38400就可以把ttyO1的波特率改成38400了。波特率设置不能超过终端的最大速度,可以输入stty speed查看终端的最大速度。输入stty --help可以看到stty命令更详细的参数。

最后我们说说UART0,Beaglebone Black比上一代Beaglebone新增了串口调试引脚,我们直接把串口转usb模块的TXD,RXD和地线连到对应的引脚上(如图所示),无需进行任何配置,立刻就能开始使用了。


使用方法类似,在电脑端输入(注意这个波特率超过了之前说的最大值)

# screen /dev/cu.usbserial 115200



就能打开串口调试助手。在BBB上输入

# echo "What a wonderful day" > /dev/ttyO0
测试发现没有问题。



加EE小助手好友,
入技术交流群
EE服务号
精彩活动e手掌握
EE订阅号
热门资讯e网打尽
聚焦汽车电子软硬件开发
认真关注技术本身

最新回复

谢谢分享!   详情 回复 发表于 2014-2-27 09:22
点赞 关注(1)
 

回复
举报

6066

帖子

92

TA的资源

裸片初长成(初级)

沙发
 
谢谢分享!
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表