arygon.py 文件源码

python
阅读 21 收藏 0 点赞 0 评论 0

项目:nfcpy 作者: nfcpy 项目源码 文件源码
def init(transport):
    transport.open(transport.port, 115200)
    transport.tty.write("0av")  # read version
    response = transport.tty.readline()
    if response.startswith("FF00000600V"):
        log.debug("Arygon Reader AxxB Version %s", response[11:].strip())
        transport.tty.timeout = 0.5
        transport.tty.write("0at05")
        if transport.tty.readline().startswith("FF0000"):
            log.debug("MCU/TAMA communication set to 230400 bps")
            transport.tty.write("0ah05")
            if transport.tty.readline().startswith("FF0000"):
                log.debug("MCU/HOST communication set to 230400 bps")
                transport.tty.baudrate = 230400
                transport.tty.timeout = 0.1
                time.sleep(0.1)
                chipset = ChipsetB(transport, logger=log)
                device = DeviceB(chipset, logger=log)
                device._vendor_name = "Arygon"
                device._device_name = "ADRB"
                return device

    transport.open(transport.port, 9600)
    transport.tty.write("0av")  # read version
    response = transport.tty.readline()
    if response.startswith("FF00000600V"):
        log.debug("Arygon Reader AxxA Version %s", response[11:].strip())
        transport.tty.timeout = 0.5
        transport.tty.write("0at05")
        if transport.tty.readline().startswith("FF0000"):
            log.debug("MCU/TAMA communication set to 230400 bps")
            transport.tty.write("0ah05")
            if transport.tty.readline().startswith("FF0000"):
                log.debug("MCU/HOST communication set to 230400 bps")
                transport.tty.baudrate = 230400
                transport.tty.timeout = 0.1
                time.sleep(0.1)
                chipset = ChipsetA(transport, logger=log)
                device = DeviceA(chipset, logger=log)
                device._vendor_name = "Arygon"
                device._device_name = "ADRA"
                return device

    raise IOError(errno.ENODEV, os.strerror(errno.ENODEV))
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号