Raspberr pi串口发送接收的Python实现
来源:互联网 发布:linux安装无线网卡驱动 编辑:程序博客网 时间:2024/05/29 19:40
最近在做一个Raspberry pi(树莓派)的应用,需要用串口收发数据,鼓捣了一会儿就成功了,跟大家分享一下过程。
我用Python进行编程,利用python-serial模块可以很方便的对串口操作。
1.安装Python:
sudo aptitude install python-dev
2.安装python-serial:
sudo apt-get install python-serial
我用的串口模块形如下图,很常见的USB转串口模块。
(图片引自百度)
3.将串口模块插到树莓派的USB接口上,输入ls命令:
ls /dev/tty*
查看是否有ttyUSB0文件,也有可能是ttyUSB1,之后我们需要赋予文件读写权限:
sudo chmod 777 /dev/ttyUSB0
4.接下来打开Python IDE:
python
import python-serial ,创建serial实例ser,端口为 ‘/dev/ttyUSB0',波特率设置为115200bps,校验位无
>>> import serial>>> ser=serial.Serial('/dev/ttyUSB0',115200,parity=serial.PARITY_NONE)
检查串口是否打开
>>> ser.isOpen()True
如果返回False,使用open()打开串口
>>> ser.open()
检测发送是否正常:
>>> ser.write('Raspberrt pi')
如果串口接收端收到发送信息,说明串口通信成功!
写个Python脚本实现串口的发送接收:
vim serTR.py
代码如下:
#!/usr/bin/python# Filename: text.pyimport serialser = serial.Serial('/dev/ttyUSB0',115200,parity=serial.PARITY_NONE)if ser.isOpen == False: ser.open()ser.write("serial turn on")try: while 1: size = ser.inWaiting() if size != 0: response = ser.read(size) print response ser.flushInput()except keyboardInterrupt: ser.close()
其中ser.flushInput()用于清空缓存。
有什么想法,欢迎交流。
0 0
- Raspberr pi串口发送接收的Python实现
- C# 实现串口发送接收 完整的例子
- 【python serial虚拟串口通信】发送端python代码实现--接收端C代码验证
- 异步串口的发送与接收
- 串口接收后发送指定的数字
- 51单片机串口的发送与接收
- Raspberry pi 使用python+pySerial实现串口通信
- 单片机C51串口中断接收和发送测试例程(含通信协议的实现)
- 单片机C51串口中断接收和发送测试例程(含通信协议的实现)
- 单片机C51串口中断接收和发送测试例程(含通信协议的实现)
- 利用MSComm控件实现字符发送与接收(串口)的工程设置问题
- s3c6410 s3c2440串口发送接收数据的实现(轮询)及相关寄存器
- MFC单文档之串口通讯实现16进制数据的发送和接收
- 串口通信程序中十六进制格式发送和接收实现
- 串口通信程序中十六进制格式发送和接收实现
- 串口通信程序中十六进制格式发送和接收实现
- python实现jms客户端(发送接收消息)
- C51---串口通信---接收---发送
- 线段树与树状数组
- Ubuntu的看到HTC Touch Pro2的家
- Ubuntu的本地网络域名系统缓存服务器
- Linux信号(signal、sigaction) 机制分析
- 译《Understanding Weak References》
- Raspberr pi串口发送接收的Python实现
- H3C交换tftp上传下载文件
- Linux中fork()函数详解
- DOM操作语法(中)
- Ubuntu的手机亮相 - 检查出来
- Ubuntu的手机在今年10月
- Ubuntu的与视窗选择就更好了
- POJ 3020 Antenna Placement(二分图的最大匹配)
- HDU 1686 Oulipo - KID