新聞中心
1. python 工具

#coding = utf-8
import pty
import os
import select
def mkpty():
master1, slave = pty.openpty()
slaveName1 = os.ttyname(slave)
master2, slave = pty.openpty()
slaveName2 = os.ttyname(slave)
print '\nslave device names: ', slaveName1, slaveName2
return master1, master2
if __name__ == "__main__":
master1, master2 = mkpty()
while True:
rl, wl, el = select.select([master1, master2], [], [], 1)
for master in rl:
data = os.read(master, 128)
print "read %d data." %len(data)
if master == master1:
os.write(master2, data)
else:
os.write(master1, data)
使用方法:
啟動:在終端里運(yùn)行“python mkptych.py&”,這樣就可以生成一個(gè)基于pty(偽終端)的虛擬端口對,兩個(gè)設(shè)備名會顯示在終端里。然后就可以利用這兩個(gè)設(shè)備名在本機(jī)上進(jìn)行虛擬串口之類的調(diào)試。
關(guān)閉:使用完后用ps查看這個(gè)python進(jìn)程的pid號,然后kill掉即可。
2. ubuntu下 cutecom 圖像界面串口調(diào)試工具
?。?)終端下載命令:sudo apt-get install cutecom
?。?)通過終端打開軟件:sudo cutecom (需要root權(quán)限,否則無法打開串口)
?。?)在 Device 中填寫上邊生成的虛擬串口號 /dev/pts/24 和 /dev/pts/25, Input 中輸入文字 ,點(diǎn)擊回車發(fā)送測試
3. python 編寫測試程序
(1)1.安裝pyserial(安裝 serial module)
這里區(qū)分python2和 python3:
sudo apt install python-pip //python2
sudo apt install python3-pip //python3
?。?)然后通過:
pip install pyserial //python2
pip3 install pyserial //python3
?。?)測試程序
import serial
from time import sleep
def recv(serial):
while True:
data = serial.read_all()
if data == '':
continue
else:
break
sleep(0.02)
return data
if __name__ == '__main__':
serial = serial.Serial('COM5', 9600, timeout=0.5) #/dev/ttyUSB0
if serial.isOpen() :
print("open success")
else :
print("open failed")
while True:
data =recv(serial)
if data != b'' :
print("receive : ",data)
serial.write(data) #數(shù)據(jù)寫回
網(wǎng)頁題目:Ubuntu下使用虛擬串口進(jìn)行開發(fā)測試
網(wǎng)站URL:http://m.fisionsoft.com.cn/article/djoppho.html


咨詢
建站咨詢
