Buongiorno公司, 我想要一個簡單的字符串發送到串行端口命令噪聲測量儀器。
字符串是很容易:
「M 1」
「M 2」=儀器=關閉儀器
「M 3」=開始測量
「M 4」=停止措施
發送字符串串行
我發現這個程序:
import serial
ser = serial.Serial(0) #Seleziona la porta seriale COM4
ser.baudrate = 9600 #Imposta il baudrate a 9600bps
ser.open() #apre la porta com
ser.close()
#verifica se la porta e' aperta
if ser.isOpen():
com_num = ser.portstr
print ("Porta " + com_num + " aperta")
#invia il comando alla seriale
buffer = "M 3"
ser.write(buffer)
#Loop d'attesa caratteri
num = 0
while num == 0:
num = ser.inWaiting()
#scarica il buffer della seriale
buffer = ser.read(num)
print ("Dati ricevuti dalla seriale:")
print buffer
ser.close() #chiude la porta
else:
print ("Porta seriale gia' in uso o inesistente")
s = raw_input("digita INVIA per uscire")
使用Linux
程序是確定的,我只是有一些問題字符串類型。事實上,我不得不插入回車,但我不能這樣做。
我說,該方案是可行的,因爲從關閉樂器接通時,我做了我的第一個連接,並在視頻中,我讀「門的/ dev/TTYS = APERTA」泰德的意思是「打開」。但是這適用於我發送的任何類型的字符串。事實上,這就像港口的「無形化」,而不是真正的交流。
後來我不管理,以正確的方式發送的字符串,其可以用於回車的問題。
使用Windows
我無法打開端口,我已經拒絕訪問該端口的錯誤,這是錯誤:
Traceback (most recent call last):
File "C:/d.py", line 9, in
ser.open() #apre la porta com
File "C:\Programmi\Python26\lib\site-packages\serial\serialwin32.py", line 53, in open raise SerialException("could not open port %s: %s" % (self.portstr, ctypes.WinError())) serial.serialutil.SerialException: could not open port COM1: [Error 5] Accesso negato.
你能幫我:
1.管理在Windows上運行的程序
2.管理的方式正好與回車字符串給???
Thak你了。
斯特凡諾