from eskin_ffi import EskinDevice def main(): dev = EskinDevice() # SDK 版本 ver = dev.version() print(f"ESkin SDK version: {ver[0]}.{ver[1]}.{ver[2]}") # 打开设备 dev.open("/dev/ttyUSB0") print("Device opened") try: # 读取硬件版本 hdw_ver = dev.read_hdw_version() print(f"Hardware version: {hdw_ver}") # 读取矩阵尺寸 row = dev.read_matrix_row() col = dev.read_matrix_col() print(f"Matrix size: {row} x {col}") # 读取设备配置 cfg1 = dev.read_device_config1() # cfg2 = dev.read_device_config2() print(f"Device config1: 0x{cfg1:02X}") # print(f"Device config2: 0x{cfg2:02X}") # 写入矩阵尺寸示例 # ret = dev.write_matrix_row(16) # print(f"Write matrix row: returned {ret} bytes") # ret = dev.write_matrix_col(16) # print(f"Write matrix col: returned {ret} bytes") # 写入设备配置示例 # ret = dev.write_device_config1(True) # print(f"Write device config1: returned {ret} bytes") # ret = dev.write_device_config2(False) # print(f"Write device config2: returned {ret} bytes") # 原始寄存器读写 data = dev.read_register(0x1C00, 168) print(f"Serial number: {data.hex().upper()}") finally: dev.close() print("Device closed") if __name__ == "__main__": main()