一、windows安装python
Welcome to Python.org
根据windows是64位找到对应的版本下载
下载完后直接安装即可!
打开cmd查看python版本
$ python --version #查看版本
二、串口编程
1、安装pyserial库
pyserial是Python中的一个库,用于处理串口通信。
cmd下输入命令,安装pyserial库
$ pip install pyserial
2、pyserial库常用函数介绍
serial = serial.Serial(‘COM1’, 115200) #打开COM1并设置波特率为115200,COM1只适用于Windows
serial = serial.Serial(‘/dev/ttyS0’, 115200) #打开/dev/ttyS0并设置波特率为115200, 只适用于Linux
serial.write(“hello”) #往串口里面写数据
serial.close() #关闭serial 表示的串口
serial.open() #打开串口
data = serial.read(num) #读num个字符
data = serial.readline()#读一行数据,以/n结束,要是没有/n就一直读,阻塞。
serial.baudrate = 9600 #设置波特率
print serial #可查看当前串口的状态信息
serial.isOpen() #当前串口是否已经打开
serial.inWaiting() #判断当前接收的数据
serial.flushInput() #清除输入缓冲区数据
serial.flushOutput() #中止当前输出并清除输出缓冲区数据
3、代码实例
重点掌握以下几个api的使用方法:
- 初始化串口对象:ser=serial.Serial()
- 打开串口:ser.isOpen()
- 发送数据:ser.write()
- 读取数据:ser.read()
- 关闭串口:ser.close()
下面是串口发送/接收的示例:
import serial
from time import sleep
if __name__ == '__main__':
ser = serial.Serial('COM25', 9600) #打开串口
if ser.isOpen() :
print("open success")
else :
print("open failed")
try:
while True:
data = input("输入要发送的数据:")
ser.write(data.encode('utf-8')) #发送数据
sleep(0.5) #延时
count = ser.inWaiting() #判断当前接收的数据
if count > 0:
data = ser.read(count)
print("receive:", data) #打印接收数据
except KeyboardInterrupt:
if ser != None:
ser.close()
4、运行结果:
$ python python_serial.py #运行python脚本
电脑上接了个串口板,Tx与Rx短接,因此串口能接收到发送的数据,测试OK!