sillab-usb.py

来自「Buck Read Write Sil lab C8051F320 wiht p」· Python 代码 · 共 54 行

PY
54
字号
# -*- coding: utf-8 -*-import usbID_VENDOR = 0x10C4ID_PRODUCT = 0x0002ID_INTERFACE = 0EP_IN = 0x82EP_OUT = 0x02TIME_OUT = 200def getDevice(device_nro):    buses = usb.busses()    devices = ()    for bus in buses :        for device in bus.devices :            if device.idVendor == ID_VENDOR:                if device.idProduct == ID_PRODUCT:                    devices += device,    if len(devices) >= (device_nro + 1):        return devices[device_nro]    else:        raise Exception, "Numero de device no encontrado"class SafeUSB(object):        def __init__(self, device):        self.device = device        self.active = False            def getDeviceInfo(self):        print "Vendor ID: %d  Product ID: %d" % ( self.device.idVendor, self.device.idProduct)        def setActive(self, value) :        if value != self.active:            if value:                self.handle = self.device.open()                #self.handle.detachKernelDriver(ID_INTERFACE)                self.handle.claimInterface(ID_INTERFACE)                self.handle.setAltInterface(ID_INTERFACE)            else:                self.handle.releaseInterface()                self.handle.reset()                            self.active = value    def read(self, bytesToRead):        return self.handle.bulkRead(EP_IN, bytesToRead, TIME_OUT)    def write(self, buf):        return self.handle.bulkWrite(EP_OUT, buf, TIME_OUT)

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?