mirror of
https://github.com/tinygo-org/drivers.git
synced 2026-08-15 04:13:40 +00:00
initial support for UC8151 driver, used in Pimoroni's badger2040 e-paper (#416)
This commit is contained in:
@@ -0,0 +1,153 @@
|
||||
package uc8151
|
||||
|
||||
// Registers
|
||||
const (
|
||||
// Display resolution
|
||||
EPD_WIDTH = 128
|
||||
EPD_HEIGHT = 296
|
||||
|
||||
PSR = 0x00
|
||||
PWR = 0x01
|
||||
POF = 0x02
|
||||
PFS = 0x03
|
||||
PON = 0x04
|
||||
PMES = 0x05
|
||||
BTST = 0x06
|
||||
DSLP = 0x07
|
||||
DTM1 = 0x10
|
||||
DSP = 0x11
|
||||
DRF = 0x12
|
||||
DTM2 = 0x13
|
||||
LUT_VCOM = 0x20
|
||||
LUT_WW = 0x21
|
||||
LUT_BW = 0x22
|
||||
LUT_WB = 0x23
|
||||
LUT_BB = 0x24
|
||||
PLL = 0x30
|
||||
TSC = 0x40
|
||||
TSE = 0x41
|
||||
TSR = 0x43
|
||||
TSW = 0x42
|
||||
CDI = 0x50
|
||||
LPD = 0x51
|
||||
TCON = 0x60
|
||||
TRES = 0x61
|
||||
REV = 0x70
|
||||
FLG = 0x71
|
||||
AMV = 0x80
|
||||
VV = 0x81
|
||||
VDCS = 0x82
|
||||
PTL = 0x90
|
||||
PTIN = 0x91
|
||||
PTOU = 0x92
|
||||
PGM = 0xa0
|
||||
APG = 0xa1
|
||||
ROTP = 0xa2
|
||||
CCSET = 0xe0
|
||||
PWS = 0xe3
|
||||
TSSET = 0xe5
|
||||
|
||||
RES_96x230 = 0b00000000
|
||||
RES_96x252 = 0b01000000
|
||||
RES_128x296 = 0b10000000
|
||||
RES_160x296 = 0b11000000
|
||||
|
||||
LUT_OTP = 0b00000000
|
||||
LUT_REG = 0b00100000
|
||||
|
||||
FORMAT_BWR = 0b00000000
|
||||
FORMAT_BW = 0b00010000
|
||||
|
||||
SCAN_DOWN = 0b00000000
|
||||
SCAN_UP = 0b00001000
|
||||
|
||||
SHIFT_LEFT = 0b00000000
|
||||
SHIFT_RIGHT = 0b00000100
|
||||
|
||||
BOOSTER_OFF = 0b00000000
|
||||
BOOSTER_ON = 0b00000010
|
||||
|
||||
RESET_SOFT = 0b00000000
|
||||
RESET_NONE = 0b00000001
|
||||
|
||||
VDS_EXTERNAL = 0b00000000
|
||||
VDS_INTERNAL = 0b00000010
|
||||
|
||||
VDG_EXTERNAL = 0b00000000
|
||||
VDG_INTERNAL = 0b00000001
|
||||
|
||||
VCOM_VD = 0b00000000
|
||||
VCOM_VG = 0b00000100
|
||||
|
||||
VGHL_16V = 0b00000000
|
||||
VGHL_15V = 0b00000001
|
||||
VGHL_14V = 0b00000010
|
||||
VGHL_13V = 0b00000011
|
||||
|
||||
START_10MS = 0b00000000
|
||||
START_20MS = 0b01000000
|
||||
START_30MS = 0b10000000
|
||||
START_40MS = 0b11000000
|
||||
|
||||
STRENGTH_1 = 0b00000000
|
||||
STRENGTH_2 = 0b00001000
|
||||
STRENGTH_3 = 0b00010000
|
||||
STRENGTH_4 = 0b00011000
|
||||
STRENGTH_5 = 0b00100000
|
||||
STRENGTH_6 = 0b00101000
|
||||
STRENGTH_7 = 0b00110000
|
||||
STRENGTH_8 = 0b00111000
|
||||
|
||||
OFF_0_27US = 0b00000000
|
||||
OFF_0_34US = 0b00000001
|
||||
OFF_0_40US = 0b00000010
|
||||
OFF_0_54US = 0b00000011
|
||||
OFF_0_80US = 0b00000100
|
||||
OFF_1_54US = 0b00000101
|
||||
OFF_3_34US = 0b00000110
|
||||
OFF_6_58US = 0b00000111
|
||||
|
||||
FRAMES_1 = 0b00000000
|
||||
FRAMES_2 = 0b00010000
|
||||
FRAMES_3 = 0b00100000
|
||||
FRAMES_4 = 0b00110000
|
||||
|
||||
TEMP_INTERNAL = 0b00000000
|
||||
TEMP_EXTERNAL = 0b10000000
|
||||
|
||||
OFFSET_0 = 0b00000000
|
||||
OFFSET_1 = 0b00000001
|
||||
OFFSET_2 = 0b00000010
|
||||
OFFSET_3 = 0b00000011
|
||||
OFFSET_4 = 0b00000100
|
||||
OFFSET_5 = 0b00000101
|
||||
OFFSET_6 = 0b00000110
|
||||
OFFSET_7 = 0b00000111
|
||||
|
||||
OFFSET_MIN_8 = 0b00001000
|
||||
OFFSET_MIN_7 = 0b00001001
|
||||
OFFSET_MIN_6 = 0b00001010
|
||||
OFFSET_MIN_5 = 0b00001011
|
||||
OFFSET_MIN_4 = 0b00001100
|
||||
OFFSET_MIN_3 = 0b00001101
|
||||
OFFSET_MIN_2 = 0b00001110
|
||||
OFFSET_MIN_1 = 0b00001111
|
||||
|
||||
HZ_29 = 0b00111111
|
||||
HZ_33 = 0b00111110
|
||||
HZ_40 = 0b00111101
|
||||
HZ_50 = 0b00111100
|
||||
HZ_67 = 0b00111011
|
||||
HZ_100 = 0b00111010
|
||||
HZ_200 = 0b00111001
|
||||
|
||||
NO_ROTATION Rotation = 0
|
||||
ROTATION_90 Rotation = 1 // 90 degrees clock-wise rotation
|
||||
ROTATION_180 Rotation = 2
|
||||
ROTATION_270 Rotation = 3
|
||||
|
||||
DEFAULT Speed = 0
|
||||
MEDIUM Speed = 1
|
||||
FAST Speed = 2
|
||||
TURBO Speed = 3
|
||||
)
|
||||
Reference in New Issue
Block a user