失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 【树莓派】树莓派配置串口通讯

【树莓派】树莓派配置串口通讯

时间:2024-03-06 19:08:37

相关推荐

【树莓派】树莓派配置串口通讯

配置串口通讯

从树莓派的相关资料我们可以看到,树莓派有两个串口可以使用,一个是硬件串口(/dev/ttyAMA0),另一个是mini串口(/dev/ttyS0)。硬件串口有单独的波特率时钟源,性能好,稳定性强;mini串口功能简单,稳定性较差,波特率由CPU内核时钟提供,受内核时钟影响。

树莓派(3/4代)板载蓝牙模块,默认的硬件串口是分配给蓝牙模块使用的,而性能较差的mini串口是分配给GPIO串口 TXD0、RXD0。

首先运行命令

ls /dev/ser* -al

查看默认串口分配

1、关闭串口控制台

设置树莓派,在Raspberry Pi Configuration中将Serial Port设置为Enable,但是Serial Console都要Disable,即关闭串口控制台功能,然后必须重启树莓派生效。

也可以在命令行中输入下面命令进行配置:

sudo raspi-config

(1)上面串口的开启的步骤中,是在Raspberry Pi Configuration 界面中,将Serial Port选项ENable,也可以直接修改/boot/config.txt文件。

sudo vim /boot/config.txt

enable_uart=1即为Serial Port Enable串口开启,enable_uart=0即为Serial Port Disable串口关闭。

(2)上面关闭串口控制台功能,是在Raspberry Pi Configuration 界面中,将Serial Console选项Disable,可以直接修改/boot/cmdline.txt文件。

sudo vim /boot/cmdline.txt

cmdline.txt修改前

cmdline.txt修改后

去掉了“console=serial0,115200”,即Disable了串口控制台功能。

2、设置硬件串口为GPIO串口

接着将串口配置为我们的GPIO串口,对输入sudo nano/boot/config.txt命令,将下面两行内容添加到最后:

dtoverlay=pi3-miniuart-bt force_turbo=1

修改后保存并退出,内容如下图片所示:

重启树莓派,运行ls /dev/ser* -al,查看两个串口已经互换了位置。

3、安装minicom

1.minicom安装

sudo apt-get install minicom

2.minicom启动

minicom -D /dev/ttyAMA0 -b 115200#-b代表波特率,-D代表端口,/dev/ttyAMA0 类似于windows中的COM

4、minicom测试

连接USB转串口模块,接到树莓派端口上,发送数据,观察树莓派接收

5、使用pyserial

minicom仅满足调试用途,如果需要编程解决问题那么python的serial扩展库——pyserial则是一个不错的选择。

安装pyserial扩展库有很多种方法,可使用pip或者easy_install安装,也可以直接选择apt-get工具安装。

若使用apt-get工具安装,可输入以下指令

sudo apt-get install python-serial

2.串口回显程序

非常简单的一个串口程序,树莓派通过串口返回接收的内容。

import serialimport time# 打开串口ser = serial.Serial("/dev/ttyAMA0", 115200)def main():while True:# 获得接收缓冲区字符count = ser.inWaiting()if count != 0:# 读取内容并回显recv = ser.read(count)ser.write(recv)# 清空接收缓冲区ser.flushInput()# 必要的软件延时time.sleep(0.1)if __name__ == '__main__':try:main()except KeyboardInterrupt:if ser != None:ser.close()

如果觉得《【树莓派】树莓派配置串口通讯》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。