1
0

2 Commity e9d2dbf8a7 ... 6665ee5434

Autor SHA1 Správa Dátum
  泡泡 6665ee5434 Merge remote-tracking branch 'origin/211130/shapan' into 211130/shapan 4 rokov pred
  泡泡 48c0d777e2 QWWQ456465121212 4 rokov pred
1 zmenil súbory, kde vykonal 67 pridanie a 0 odobranie
  1. 67 0
      test.py

+ 67 - 0
test.py

@@ -0,0 +1,67 @@
+import usb.core
+import usb.util
+import sys
+import threading
+import time
+
+VID = '128d'
+PID = '0013'
+
+dev = usb.core.find(idVendor=VID, idProduct=PID)
+cfg = dev.get_active_configuration()
+intf = cfg[(0, 0)]
+
+print(intf)
+
+write_ep = usb.util.find_descriptor(
+    intf,
+    custom_match= \
+        lambda e: \
+            usb.util.endpoint_direction(e.bEndpointAddress) == \
+            usb.util.ENDPOINT_OUT
+)
+
+read_ep = usb.util.find_descriptor(
+    intf,
+    custom_match= \
+        lambda e: \
+            usb.util.endpoint_direction(e.bEndpointAddress) == \
+            usb.util.ENDPOINT_IN
+)
+
+
+def write_endpoint_thread():
+    while True:
+        try:
+            write_ep.write("0123456789")
+        except:
+            print("write error")
+
+
+def read_endpoint_thread():
+    while True:
+        try:
+            data = read_ep.read(64)
+            size = len(data)
+            if size > 0:
+                print("recv %d bytes:" % size, end='')
+                for i in range(0, size):
+                    print("%c" % data[i], end='')
+                print('')
+        except:
+            print("no data")
+
+
+def main():
+    r = threading.Thread(target=read_endpoint_thread)
+    w = threading.Thread(target=write_endpoint_thread)
+    r.start()
+    w.start()
+    r.join()
+    w.join()
+    dev.reset()
+
+
+if __name__ == '__main__':
+    main()
+