StreamDock 基类
所有具体型号设备的控制类都需要继承StreamDock基类,StreamDock基类提供了以下方法:
打开设备
def open(self):
self.transport.open(bytes(self.path,'utf-8'))
关闭设备
def close(self):
self.disconnected()
## self.transport.close()
断开连清除所有显示
def disconnected(self):
self.transport.disconnected()
清除某个按键的图标
def cleaerIcon(self,index):
self.transport.keyClear(index)
清除所有按键的图标
def clearAllIcon(self):
self.transport.keyAllClear()
唤醒屏幕
def wakeScreen(self):
self.transport.wakeScreen()
刷新设备显示
def refresh(self):
self.transport.refresh()
获取设备路径
def getPath(self):
return self.path
获取设备反馈的信息
def read(self):
"""
:argtypes:存放信息的字节数组,字节数组的长度建议512
"""
arr=self.transport.read()
return arr
一直检测设备有无信息反馈,建议另起一个线程使用
def whileread(self):
while 1:
arr=self.read()
if len(arr)>=10:
if arr[9]==0xFF:
print("写入成功")
else:
print("按键{}".format(arr[9]))
if arr[10]==0x01:
print("被按下")
else:
print("抬起")
else:
print(arr)
del arr
获取设备序列号
@abstractmethod
def get_serial_number(self):
pass
设置按键图标
@abstractmethod
def set_key_image(self, key, image):
pass
设置亮度
@abstractmethod
def set_brightness(self, percent):
pass
设置触摸屏图像
@abstractmethod
def set_touchscreen_image(self, image):
pass
设置按键图标通过imagedata
@abstractmethod
def set_key_imagedata(self, key, image,width=126,height=126):
pass