Esp8266 + Atmega328p в качестве прошивки

Уточним, я не говорю о прошивке ESP8266 с помощью Arduino. Я хочу спросить, как я могу использовать atmega328p в качестве флэш-памяти с esp8266 (вместо этого 8-контактного маленького чипа на ESP-01), чтобы я мог записать код веб-сервера на Atmega328p, и он просто работал с esp8266?

Заранее спасибо.

, 👍0

Обсуждение

Нет. Нет, ты не можешь., @Majenko

Могу ли я спросить, почему? И если мне нужен веб-сервер, я должен загрузить код на Esp8266 отдельно и заставить atmega328p и esp8266 общаться через TX RX?, @Prabhjeet Singh

Для этого вам понадобится 1) высокоскоростной (40 МГц или лучше) интерфейс spi slave, 2) сотни килобайт или даже несколько мегабайт флэш-памяти, 3) прошивка для эмуляции флэш-чипа. У Arduino нет ни 1, ни 2, а написать 3 было бы муторно., @Majenko

Чтобы создать веб-сервер, либо установите прошивку at на esp и следуйте примерам, либо запрограммируйте esp напрямую и используйте любой метод связи, который вы считаете подходящим для общения с Arduino, если вы действительно чувствуете, что вам вообще нужна Arduino., @Majenko

зачем эмулировать флеш, если у каждого модуля esp8266 есть флеш, на который можно загрузить через esp8266?, @Juraj


1 ответ


2

Это невозможно (кстати, почему вы думаете, что это вообще хорошая идея?!)

8-контактный чип на ESP-01 представляет собой флэш-память SPI емкостью 512 КБ, работающую на частоте (как минимум) 40 МГц. Итак, чтобы подражать этому, вам понадобится:

  • Более 512 КБ флэш-памяти,
  • Подчиненный интерфейс SPI, который может работать на частоте не менее 40 МГц, и
  • Знания, время и энергия для написания микропрограммы для эмуляции флэш-чипа SPI

Первые два, безусловно, выходят за рамки ATMega328P с флэш-памятью 32 КБ и интерфейсом SPI с максимальной скоростью 8 МГц. Третий, вероятно, вам не по силам, так как вы должны задать вопрос в первую очередь (что свидетельствует об определенном недостатке знаний о том, что вы предлагаете).

Есть множество примеров создания веб-сервера с использованием ESP8266 либо со стандартной прошивкой AT, либо путем прямого программирования флэш-чипа ESP8266 через встроенный в ESP8266 загрузчик UART. Лично я нахожу использование прошивки AT в лучшем случае неуклюжим и предпочитаю всегда программировать свои ESP8266 напрямую. Если вы по какой-то причине чувствуете необходимость добавить в смесь ATMega328P, то протокол связи, который вы используете между ними, полностью зависит от вас.

,