よくわからないが、パソコンによってはHIDデバイスとして見えない場合がある。
もちろん、UV4からは見えます。
# USBDAP.py 2013/4/25 import pywinusb.hid class USBDAP: def __init__(self, pname="CMSIS-DAP"): self.dev = None for dev in pywinusb.hid.find_all_hid_devices(): if dev.product_name.find(pname) >= 0: self.dev = dev break assert(self.dev) self.dev.open() self.dev.set_raw_data_handler(self.rx_handler) reports = dev.find_output_reports() assert(len(reports) == 1) self.report = reports[0] def close(self): if self.dev: self.dev.close() def rx_handler(self, data): self.recv_data = data[1:] def write(self, data): assert(len(data) >= 0 and len(data) <= 64) data += [0]*(64-len(data)) self.recv_data = None self.report.send([0] + data) def read(self): while self.recv_data == None: pass return self.recv_data if __name__=="__main__": import time dap = USBDAP("KL25Z CMSIS-DAP") for _ in range(10): dap.write([1,1,1]) # LED ON dap.read() time.sleep(0.2) dap.write([1,1,0]) # LED OFF dap.read() time.sleep(0.2) dap.close()
(2013/4/25)
---
0 件のコメント:
コメントを投稿