from machine import SPI, Pin

# GPIO21 = Pin(Pin.GPIO21, Pin.OUT, Pin.PULL_PU, 0)
w_data = b'\x9F\x9F\x9F\x9F'
r_data = bytearray(len(w_data))

try:
    spi_obj = SPI(port=0, mode=0, clk=6)
    ret = spi_obj.write_read(r_data, w_data, len(w_data))
    print("SPI_PORT: {}    FlashChipID: 0x{:02X}{:02X}{:02X}".format(0, r_data[1], r_data[2], r_data[3]))
except Exception as e:
    print("Because of the[{}] caught exception,restart now!!!!".format(e))
finally:
    # print("FlashChipID: 0{:02X}{:02X}{:02X}{:02X}".format(*r_data))
    try:
        spi_obj = SPI(port=1, mode=0, clk=6)
        ret = spi_obj.write_read(r_data, w_data, len(w_data))
        print("SPI_PORT: {}    FlashChipID: 0x{:02X}{:02X}{:02X}".format(1, r_data[1], r_data[2], r_data[3]))
    except Exception as e:
        print("Because of the[{}] caught exception,restart now!!!!".format(e))
    finally:
        # print("FlashChipID: 0{:02X}{:02X}{:02X}{:02X}".format(*r_data))
        try:
            spi_obj = SPI(port=2, mode=0, clk=6)
            ret = spi_obj.write_read(r_data, w_data, len(w_data))
            print("SPI_PORT: {}    FlashChipID: 0x{:02X}{:02X}{:02X}".format(2, r_data[1], r_data[2], r_data[3]))
        except Exception as e:
            int("Because of the[{}] caught exception,restart now!!!!".format(e))
        finally:
            # print("FlashChipID: 0{:02X}{:02X}{:02X}{:02X}".format(*r_data))
            pass  # 客户自己实现. 
        pass  # 客户自己实现. 
    pass  # 客户自己实现. 
