Есть необходимость запустить аппаратный (желательно) SPI в режиме slave на ESP12f (ESP8266).
SPI0 используется для доступа к флешке - его не трогаем.
HSPI - желаемый SPI.
HSPI pinout:
GPIO12 - MISO
GPIO13 - MOSI
GPIO14 - CLCK
GPIO15 - CS
Задача: используя arduino ide (так как там уже много, что написано) при получении ноля на CS вызывать прерывание и получать команды/данные по SPI. Производить разбор команд и отвечать опять-таки по SPI. Получить прерывание по падению на CS - не проблема:
pinMode(SS, INPUT);
attachInterrupt(digitalPinToInterrupt(SS), handleInterrupt, FALLING);
void handleInterrupt() {...}
Обработать полученные команды - тоже не проблема. Слепить данные из 8-битных тоже не проблема.
Проблема: настройка и инициализация SPI1 в режиме slave.
Нужно указать режим работы CPHA и CPOL, режим slave, проверять флаг BSY и/или RXE (занята ли линия и есть ли ещё данные).
Использование монструозных библиотек - проблема, место не резиновое в ЕСПешке. Библиотеки с "синтетическими" задержками - проблема, код должен быть вменяемым и правильным.
Может ли кто-нибудь поделиться кодом для реализации такого? Заранее благодарен!
Виртуальный выделенный сервер (VDS) становится отличным выбором
Как узнать имя интернет сети к которой подключен компПодключен ли интернет проверяю так:
Создал сервер под Tomcat, задача которого помещать определенные xml в очередь сообщенийВыбор xml'я реализовал в соответствующем классе в зависимости...
Как отрендерить картинку используя LWJGL, STB Image?