Слияние кода завершено, страница обновится автоматически
#!/usr/bin/python
#
# tinycom_com.py
#
# --powered by liuyajun(20200316)
#################################################################
import os,sys
import serial
import threading
import linecache
from tqdm import tqdm
from pathlib import Path
curpath = sys.path[0];
# config the sci com-parms
print("Tinycom-com>: #########################################################");
print("Tinycom-com>: # Tinycom-com");
# device
devstrtmp = linecache.getline(curpath + '/tinycomcfg', 1);
devstr = devstrtmp.strip("\n");
dev = Path(devstr);
if not(dev.exists()):
print("\033[0;37;41m\nplz connect the SCI...");
print devstr;
print('\033[0m');
exit();
# speed
spdstrtmp = linecache.getline(curpath + '/tinycomcfg', 2);
spdstr = spdstrtmp.strip("\n");
# connect
SERIAL_COM = serial.Serial(devstr, spdstr, timeout=0.2);
print "Tinycom-com>: #","Device: ",str(devstr)
print "Tinycom-com>: #","Speed: ",str(spdstr)
print "Tinycom-com>: #","Speed: "
print("Tinycom-com>: # ctrl+c / -ec / -exit: terminate communication");
print("Tinycom-com>: #########################################################");
def com_rx():
while True:
rcvstr = SERIAL_COM.readline();
rcvstr = rcvstr.strip("\n");
if len(rcvstr):
print "Tinycom-com-RX>: ",rcvstr;
def com_tx():
while True:
cmdstr = raw_input("Tinycom-com-TX>: ");
cmdstr = cmdstr.strip("\n");
if cmdstr == "-ec":
return;
if cmdstr == "-exit":
return;
SERIAL_COM.write(cmdstr);
if __name__ == "__main__":
try:
rxthread=threading.Thread(target=com_rx);
rxthread.start();
while True:
cmdstr = raw_input("Tinycom-com-TX>: ");
cmdstr = cmdstr.strip("\n");
if cmdstr == "-ec":
rxthread._Thread__stop();
break;
if cmdstr == "-exit":
rxthread._Thread__stop();
break;
SERIAL_COM.write(cmdstr);
except:
print('\033[0m');
rxthread._Thread__stop();
print "# END-tinycom-com"
exit();
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )