summaryrefslogtreecommitdiff
path: root/commandline/examples/ssd1306-show
blob: bac18da4ad954eb3fc0ec8f72a22a8be0e97a388 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#!/bin/sh

WR_CMD=0x80
WR_DATA=0x40

WIDTH=128
HEIGHT=64

SET_CONTRAST=0x81
SET_ENTIRE_ON=0xa4
SET_NORM_INV=0xa6
SET_DISP_OFF=0xae
SET_DISP_ON=0xaf
SET_MEM_ADDR=0x20
SET_COL_ADDR=0x21
SET_PAGE_ADDR=0x22
SET_DISP_START_LINE=0x40
SET_SEG_REMAP_ON=0xa1
SET_MUX_RATIO=0xa8
SET_COM_OUT_DIR_08=0xc8
SET_DISP_OFFSET=0xd3
SET_COM_PIN_CFG=0xda
SET_DISP_CLK_DIV=0xd5
SET_PRECHARGE=0xd9
SET_VCOM_DESEL=0xdb
SET_CHARGE_PUMP=0x8d

BASE="$(dirname "$0")"

for cmd in $SET_COL_ADDR 0 $(( WIDTH - 1 )) \
		$SET_PAGE_ADDR 0 $(( (HEIGHT / 8) - 1 )); do
	vusb-i2cset 0x3c $WR_CMD $cmd
done

for offset in $(seq 0 7); do
	vusb-i2cset 0x3c $WR_DATA $("${BASE}/ssd1306-getpixels" "$1" $(( offset * 128 )))
done