前提・実現したいこと
VISCAというSONYの独自規格を採用するカメラユニットをPCから制御することを考えています。
tkinterで作成したEditBoxに入力した文字列をコマンドとして送信しようと思い、
下記のようなプログラムでコマンドを送ろうとしたのですが上手くいかず(カメラが動作せず)、
何か対策が分かれば教えて下さい。
プログラム上のエラーは出ていません。
該当のソースコード(一部)
Pythonコード
1def send(self): 2 self.snd_cmd = self.EditBox.get() 3 r_data = self.uart_write_read(self.snd_cmd, 20) 4 self.EditBox2.insert(tkinter.END, str(r_data)) 5 6 '''シリアル通信でデータの送受信を行う''' 7 def uart_write_read(self,w_data, r_size): 8 '''write''' 9 self.ser.write(w_data.encode()) 10 print('Send: ' + str(w_data)) 11 '''Read''' 12 self.r_data = self.ser.read_until(size=r_size) # size分Read 13 print('Recv: ' + str(self.r_data)) 14 return self.r_data
試したこと
試しに下記のようなコマンドを送ろうと思い、
送信部分に直接コマンドを入力すると、正しく送れているようです。
コマンド:81 01 04 47 00 00 00 00 FF
self.ser.write(b'\x81\x01\x04\x47\x00\x00\x00\x00\xFF')
データの型変換が上手くいってないのでしょうか?
回答2件
あなたの回答
tips
プレビュー