树莓派通过串口发送数据

烂漫树林
发布于 2020-11-11 17:16
浏览
0收藏

可以通过串口登陆树莓派,也可以通过串口向其他主机发送数据。树莓派的串口接受数据科技爱好者博客已经写过,可以参考这篇文章:树莓派与arduino串口通信实践。这篇文章教大家如果通过树莓派的串口发送数据。

 

一、开启树莓派的串口功能

sudo raspi-config

选择Interfacing Options  ->Serial,选择“yes”选项即可开启树莓派串口功能。

树莓派通过串口发送数据-鸿蒙开发者社区

开启树莓派的串口功能


二、安装minicom串口软件


minicom是Linux上的串口调试工具,通过这个软件可以方便的在串口上发送和接受数据。首先安装minicom

 sudo apt-get install minicom

minicom串口调试工具的用法如下:

用法:minicom [选项] ... [配置]
Linux和其他类似unix的系统的终端程序。

  -b,--baudrate:设置波特率(忽略config中的值)
  -D,--device:设置设备名称(忽略config中的值)
  -s,--setup:进入设置模式
  -o,-noinit:启动时不初始化调制解调器和锁定文件
  -m,--metakey:对命令使用meta或alt键
  -M,--metakey8:使用8位元密钥作为命令
  -l,--ansi:文字;假定屏幕使用非IBM-PC字符集
  -L,--iso:不要假设屏幕使用ISO8859
  -w,--wrap:换行
  -H,--displayhex:以十六进制显示输出
  -z,-statline:尝试使用终端的状态行
  -7,--7bit:强制7bit模式
  -8,--8bit:强制8bit模式
  -c,--color = on / off:开启或关闭ANSI样式的颜色用法
  -a,--attrib = on / off:使用反转或高亮显示属性
  -t,--term = TERM:覆盖TERM环境变量
  -S,--script = SCRIPT:在启动时运行SCRIPT
  -d,--dial = ENTRY:从拨号目录拨打ENTRY
  -p,--ptty = TTYP:连接到伪终端
  -C,--capturefile = FILE:开始捕获到FILE
  -F,--statlinefmt:状态行的格式
  -R,-remotecharset:通信伙伴的字符集
  -v,--version:输出版本信息并退出
  -h,--help:显示帮助
  配置:要使用的配置文件

这些选项也可以在MINICOM环境变量中指定。
当前未设置此变量。
访问文件的配置目录和配置
编译到/ etc / minicom。

向<minicom-devel@lists.alioth.debian.org>报告错误。

启动minicom:

minicom -D /dev/ttyAMA0

 

默认波特率为115200,如需设置波特率为9600加参数 -b 9600,-D代表端口,/dev/ttyAMA0 类似于windows中的COM1, 注:如果是树莓派3B,板载的串口ttyAMA0作为蓝牙使用,用户串口端口改为ttySO。如下程序也类似,如果是到的树莓派3B,ttyAMA0需改为ttyS0。

 

三、树莓派使用python 通过串口发送数据

 

首先安装python serial扩展库。

sudo apt-get install python-serial

然后编写树莓派通过串口发送数据程序。

#!/usr/bin/python
# -*- coding:utf-8 -*-

import serial

ser = serial.Serial("/dev/ttyAMA0",115200) #启动串口

print('serial test start ...')
ser.write('Hello World! \n')  #通过串口发送数据

try:
        while True:
                ser.write(ser.read()) #接收字符并回传
except KeyboardInterrupt:
        if ser != None:
                ser.close() #关闭串口

然后执行程序,如果有usb转串口工具,就可以用3根杜邦线,把usb转串口的RX,TX,GND 三个引脚和树莓派的TX,RX,GND三个引脚对应连接起来,这样打开电脑的串调试工具,就可以看到树莓派用python通过串口发送过来的数据了。 在执行程序的时候,一些常见错误和其解决方法如下。

错误1:“AttributeError: ‘module’ object has no attribute ‘Serial’” 解决方法:

(1)你的文件名serial.py和引入的第三方库名字重复了,解决方法:重命名文件名,并删除当前目录下的serial.pyc文件 (2)你没有安装第三方库文件,解决方法,pip install serial  之后 pip install pyserial

错误2:“TypeError: ‘module’ object is not callable” 解决方法:

(1)你的文件名serial.py和引入的第三方库名字重复了,解决方法:重命名文件名,并删除当前目录下的serial.pyc文件 (2)你没有安装第三方库文件,解决方法,pip install serial  之后 pip install pyserial

 

原文作者:科技爱好者

分类
标签
已于2020-11-11 17:16:56修改
收藏
回复
举报
回复
    相关推荐