SHIELD-Malb41k1/protocol.md

211 lines
6.0 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Передача команды и параметров по шине SPI
При передаче пакета
1) Byte команды.
2) Byte[] массив параметров.
3) Byte контрольной суммы.
# Команды:
Условные обозначения:
|Обозначение|Описание|
|:-:|-|
|\||ИЛИ (значение слева или значение справа)|
|a<sub>1</sub>, a<sub>2</sub> , ..., a<sub>n</sub>|Диапазон (одно значение из диапазона)|
|\[...]|Несколько подобных значений|
|СxRC|Байт контрольной суммы|
***
## Заполнение экрана белым или черным цветом
**Команда:**
0x01
**Параметры и данные:**
|Color|
|-|
|0x00\|0x01|
**Пример:**
|Color|Описание|Полная команда|
|-|-|-|
|0x00|Заполнить экран черными пикселями|0x01 0x00 CxRC|
|0x01|Заполнить экран белыми пикселями|0x01 0x01 CxRC|
***
## Выбор строки на экране
**Команда:**
0x02
**Параметры и данные:**
|Page|
|-|
|0x00,0x01,...,0x07|
**Пример:**
|Page|Описание|Полная команда|
|-|-|-|
|0x03|Выбрать 3 строку|0x02 0x03 CxRC|
***
## Добавление нового символа
**Команда:**
0x03
**Параметры и данные:**
|Symbols|
|-|
|[0x01,0x02,...,0x16]|
**Пример:**
|Symbols|Описание|Полная команда|
|-|-|-|
|0x0e 0x10|Добавить символы 5 и 7|0x03 0x0e 0x10 CxRC|
**Описание:**
" " - 0x00
"(" - 0x01
")" - 0x02
"*" - 0x03
"+" - 0x04
"," - 0x05
"-" - 0x06
"." - 0x07
"/" - 0x08
"0" - 0x09
"1" - 0x0a
"2" - 0x0b
"3" - 0x0c
"4" - 0x0d
"5" - 0x0e
"6" - 0x0f
"7" - 0x10
"8" - 0x11
"9" - 0x12
":" - 0x13
"<" - 0x14
"=" - 0x15
">" - 0x16
***
## Удаление символов
**Команда:**
0x04
**Параметры и данные:**
|Amount|
|-|
|0x01,0x02,...,0xFF|
**Пример:**
|Amount|Описание|Полная команда|
|-|-|-|
|0x40|Удалить 64 символа|0x04 0x40 CxRC|
***
## Поставить пиксель белого или черного цвета по координатах
**Команда:**
0x05
**Параметры и данные:**
|X|Y|Color|
|-|-|-|
|0x00,0x01, … ,0x7F|0x00,0x01, … ,0x3F|0x00 \| 0x01|
**Пример:**
|X|Y|Color|Описание|Полная команда|
|-|-|-|-|-|
|0x24|0x04|0x01|Поставить белый пиксель в координатах x-36; y-4|0x05 0x24 0x04 0x01 CxRC|
|0x0B|0x16|0x00|Поставить черный пиксель в координатах x-11; y-22|0x05 0x0B 0x16 0x00 CxRC|
***
## Нарисовать линию по координатам, белого или черного цвета
**Команда:**
0x06
**Параметры и данные:**
|X|Y|X2|Y2|Color|
|-|-|-|-|-|
|0x00,0x01, … ,0x7F|0x00,0x01, … ,0x3F|0x00,0x01, … ,0x7F|0x00,0x01, … ,0x3F|0x00 \| 0x01|
**Пример:**
|X|Y|X2|Y2|Color|Описание|Полная команда|
|-|-|-|-|-|-|-|
|0x02|0x02|0x05|0x05|0x01|Нарисовать линию белого цвета в координатах: начало x-2 , y-2; конец x-5, y-5 |0x06 0x02 0x02 0x05 0x05 0x01 CxRC|
***
## Нарисовать круг белого или черного цвета по координатам и радиусу
**Команда:**
0x07
**Параметры и данные:**
|X|Y|R|Color|Fill|
|-|-|-|-|-|
|0x00,0x01, … ,0x7F|0x00,0x01, … ,0x3F|0x01,0x02,...,0xFF| 0x00 \| 0x01| 0x00 \| 0x01|
**Пример:**
|X|Y|R|Color|Fill|Описание|Полная команда|
|-|-|-|-|-|-|-|
|0x03|0x09|0x05|0x01|0x01|Нарисовать заполненный белый круг c координатами центра x-3, y-9 и радиусом 5|0x07 0x03 0x09 0x05 0x01 0x01 CxRC
|0x03|0x09|0x05|0x01|0x00|Нарисовать не заполненный белый круг c координатами центра x-3, y-9 и радиусом 5|0x07 0x03 0x09 0x05 0x01 0x00 CxRC|
|0x03|0x09|0x05|0x00|0x01|Нарисовать заполненный черный круг c координатами центра x-3, y-9 и радиусом 5|0x07 0x03 0x09 0x05 0x00 0x01 CxRC|
***
## Нарисовать прямоугольник белого или черного цвета по координатам
**Команда:**
0x08
**Параметры и данные:**
|X|Y|Widht|Height|Color|Fill|
|-|-|-|-|-|-|
|0x00,0x01, … ,0x7F|0x00,0x01, … ,0x3F|0x00,0x01, … ,0x10| 0x00 \| 0x01| 0x00 \| 0x01|
**Пример:**
|X|Y|Widht|Height|Color|Fill|Описание|Полная команда|
|-|-|-|-|-|-|-|-|
|0x05|0x0A|0x0A|0x0F|0x01|0x01|Нарисовать белый заполненный прямоугольник c координатами x-5, y-10 и размерами по ширине 10, по высоте 15 |0x05 0x0A 0x0A 0x07 0x01 0x01 CxRC|
|0x05|0x0A|0x0A|0x0F|0x01|0x00|Нарисовать белый не заполненный прямоугольник c координатами x-5, y-10 и размерами по ширине 10, по высоте 15 |0x05 0x0A 0x0A 0x07 0x01 0x00 CxRC|
***
## Нарисовать символ по координатам
**Команда:**
0x09
**Параметры и данные:**
|X|Y|Charlndex|Color|
|-|-|-|-|
|0x00,0x01, … ,0x7F|0x00,0x01, … ,0x3F|0x00,0x01, … ,0x16| 0x00 \| 0x01|
**Пример:**
|X|Y|Charlndex|Color|Описание|Полная команда|
|-|-|-|-|-|-|
|0x05|0x0A|0x09|0x01|Нарисовать "0" белого цвета c координатами верхнего левого угла символа x-5, y-10|0x09 0x05 0x0A 0x09 0x01 CxRC|
***