千家信息网

树莓派怎么用Python实现UART

发表于:2024-10-04 作者:千家信息网编辑
千家信息网最后更新 2024年10月04日,这篇文章主要为大家展示了"树莓派怎么用Python实现UART",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"树莓派怎么用Python实现UART"这篇文章
千家信息网最后更新 2024年10月04日树莓派怎么用Python实现UART

这篇文章主要为大家展示了"树莓派怎么用Python实现UART",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"树莓派怎么用Python实现UART"这篇文章吧。

首先树莓派得安装 python-serial ,Raspbian还需要在raspi-config中激活UART.

然后修改文件1:sudo nano /boot/cmdline.txt, 删除红色部分:

dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait

最终变为: dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait

然后修改文件2:sudo nano /etc/inittab, 注释最后一行内容:

#T0:23:respawn:/sbin/getty-L ttyAMA0 115200 vt100,

例子:

模块HM-10的配置方法:在蓝牙模块未连接蓝牙4.0设备的情况下,使用串口调试工具minicom,复制命令后,粘贴在工具里发送给模块。具体参见该模块的手册。蓝牙4.0设备如手机用app与模块相连,最后用该模块公司出的那个 BLE蓝牙串口调试助手 app。

写程序用uart与模块通信 BT_demo.py

import serialimport timeser = serial.Serial('/dev/ttyAMA0', 115200, timeout=1)#ser = serial.Serial('COM3', 115200, timeout=1)print ser.isOpen()words="abcd"while 1:          getchr = ser.read()    #print getchr    if getchr == 'h':        ser.write(words)    time.sleep(5)ser.close()

调试过程出现错误:

如果安卓app发送字符出现发送不成功,比如点一下发一大串:

1, 可能是树莓派上串口没打开,Raspbian在raspi-config 中打开,并确认串口文件修改配置正常。

2,由于先连接了模块后运行程序,正确的应该是先运行程序后连接模块。

如果收发没反应,或者是乱码,确认连接正确,速率是否匹配。

以上是"树莓派怎么用Python实现UART"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

0