查看ubuntu当前的python版本,若为python2系列需设置为python3系列
$ python --version
列出当下可用的python版本,例如显示了/usr/bin/python3.6
$ ls /usr/bin/python*
将ubutnu系统的python版本指定为/usr/bin/python3.6
# update-alternatives --install <链接> <名称> <路径> <优先级>
$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.6 2
最后再次查看当前python版本是否设置成功
$ sudo apt-get install python3-pip
$ python3 -m pip install pyserial
$ sudo apt-get install cutecom
准备一个usb2ttl模块插入电脑,查看它对应的端口号,与后面的程序对应
$ ls -l /dev |grep ttyUSB
将usb2ttl模块的txd与rxd连接
python serial数据接收程序,利用cutecom发送数据,程序接收数据并打印出来
# serial_rxd.py
import time
import serial
# set serial port initialized parameters
com = serial.Serial(
port = '/dev/ttyUSB0',
baudrate = 115200,
bytesize = serial.EIGHTBITS,
parity = serial.PARITY_NONE,
stopbits = serial.STOPBITS_ONE,
)
# wait 1s for serial port initialization
time.sleep(1)
# received data and print in hex string form
while 1:
rxd_num = com.inWaiting()
if rxd_num > 0:
rxd = com.read(rxd_num)
print(str(rxd.hex()))
python serial数据发送程序,1秒发送一次16进制数0xAA55,cutecom接收显示
# serial_txd.py
import time
import serial
# set serial port initialized parameters
com = serial.Serial(
port = '/dev/ttyUSB0',
baudrate = 115200,
bytesize = serial.EIGHTBITS,
parity = serial.PARITY_NONE,
stopbits = serial.STOPBITS_ONE,
)
# wait 1s for serial port initialization
time.sleep(1)
# send hex data 'AA55' per 1s
while 1:
hex_str = 'AA55'
com.write(bytes.fromhex(hex_str))
time.sleep(1)
1 Ubuntu18.04修改Python默认版本2.7->3.6
https://blog.csdn.net/ycfn97/article/details/100548743
2 ubuntu python serial实现串口通信
https://copyfuture.com/blogs-details/202204141937287952
http://www.cppcns.com/jiaoben/python/362061.html