Основное удобство — это отсутствие возни с драйверами( памятую свои приключения с программаторами для AVR: поставь драйвера для прямого доступа к портам, позже с версиями libusb мучался...)
Проект базируется на примере «esp-httpd: webserver on an ESP8266» из UDK.
Наполеоновские планы по реализации верхнего уровня на HTTP / JS разбились о невозможность подключиться к TCP сокету из JS.
ESP выполняет функции шлюза TCP [ SPI / I2C / 1W / SPI_AVR], а вся остальная логика ложится на верхний уровень( питоновские скрипты)
SPI FLASH( 25x)
Используется аппаратный SPI для ускорения обмена. Есть одна оптимизирующая команда:
MAGIC_CMD_PAGE_WRITE — запись страницы с проверкой.
1W
Подключение:
1W — DIP8.3
GND+VCC — DIP8.4
Реализовано сканирование адресов на шине. Для обнаруженных DS18x20 выведется текущая температура.
I2C( EEPROM 24x)
Чем больше приходится им пользовать - тем больше негативных эмоций. День потерял на ACK: оказывается при чтении мастер( который и так рулит шиной!!!) ACK`ами почему то должен уведомлять ведомое что будет еще получать данные, а вот «в сознании» ли при этом ведомое не ясно!!!
Ладно поплевался и забыл до следующего эпизода.
AVR( ATtiny 8pin) - ПОКА НЕ ПОЛНЫЙ ФУНКЦИОНАЛ
Тут все просто: софтовый 32 битный SPI + управление пином GPIO4 / RST
Схему/плату не рисовал — не вижу смысла( модуль ESP + панелька DIP8), все должно быть понятно из таблички подключения:
Тестировал на:
GitHub - pt200/8266PROG: ESP8266 programmer SPI_FLASH \ I2C_EEPROM \ ATTINY \ 1W
P.S. Собираю esp-open-sdk. Можно и UDK, но придется править makefile'ы. Скрипты под Python3
Проект базируется на примере «esp-httpd: webserver on an ESP8266» из UDK.
Наполеоновские планы по реализации верхнего уровня на HTTP / JS разбились о невозможность подключиться к TCP сокету из JS.
ESP выполняет функции шлюза TCP [ SPI / I2C / 1W / SPI_AVR], а вся остальная логика ложится на верхний уровень( питоновские скрипты)
SPI FLASH( 25x)
Используется аппаратный SPI для ускорения обмена. Есть одна оптимизирующая команда:
MAGIC_CMD_PAGE_WRITE — запись страницы с проверкой.
1W
Подключение:
1W — DIP8.3
GND+VCC — DIP8.4
Реализовано сканирование адресов на шине. Для обнаруженных DS18x20 выведется текущая температура.
I2C( EEPROM 24x)
Чем больше приходится им пользовать - тем больше негативных эмоций. День потерял на ACK: оказывается при чтении мастер( который и так рулит шиной!!!) ACK`ами почему то должен уведомлять ведомое что будет еще получать данные, а вот «в сознании» ли при этом ведомое не ясно!!!
Ладно поплевался и забыл до следующего эпизода.
AVR( ATtiny 8pin) - ПОКА НЕ ПОЛНЫЙ ФУНКЦИОНАЛ
Тут все просто: софтовый 32 битный SPI + управление пином GPIO4 / RST
Схему/плату не рисовал — не вижу смысла( модуль ESP + панелька DIP8), все должно быть понятно из таблички подключения:
Тестировал на:
- 25Q32FVSIG, 25Q64FVSIG
- 24с02, 24с512
- 18B20( несколько в параллель)
GitHub - pt200/8266PROG: ESP8266 programmer SPI_FLASH \ I2C_EEPROM \ ATTINY \ 1W
P.S. Собираю esp-open-sdk. Можно и UDK, но придется править makefile'ы. Скрипты под Python3
Последнее редактирование: