MicroPython:Библиотеки/esp: различия между версиями

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
(Новая страница: «{{MicroPython/Панель перехода}} {{Перевод от Сubewriter}} {{Myagkij-редактор}} =Модуль esp – функции, связан...»)
 
Нет описания правки
 
Строка 3: Строка 3:
{{Myagkij-редактор}}
{{Myagkij-редактор}}


=Модуль esp – функции, связанные с ESP8266 и ESP32[http://docs.micropython.org/en/latest/library/esp.html docs.micropython.org - ]=
=Модуль esp – функции, связанные с ESP8266 и ESP32<ref>[http://docs.micropython.org/en/latest/library/esp.html docs.micropython.org - esp — functions related to the ESP8266 and ESP32]</ref>=


Модуль ''esp'' содержит программный инструментарий для работы с микроконтроллерами [[ESP8266]] и [[ESP32]]. Некоторые из функций будут доступны только на одном из этих [[микроконтроллер]]ов.
Модуль ''esp'' содержит программный инструментарий для работы с микроконтроллерами [[ESP8266]] и [[ESP32]]. Некоторые из функций будут доступны только на одном из этих [[микроконтроллер]]ов.
Строка 18: Строка 18:
* [[MicroPython:Библиотеки/esp/esp.flash_erase()|esp.flash_erase(sector_no)]]
* [[MicroPython:Библиотеки/esp/esp.flash_erase()|esp.flash_erase(sector_no)]]
* [[MicroPython:Библиотеки/esp/esp.set_native_code_location()|esp.set_native_code_location(start, length)]]
* [[MicroPython:Библиотеки/esp/esp.set_native_code_location()|esp.set_native_code_location(start, length)]]
* [[MicroPython:Библиотеки/esp/
* [[MicroPython:Библиотеки/esp/
* [[MicroPython:Библиотеки/esp/
* [[MicroPython:Библиотеки/esp/
* [[MicroPython:Библиотеки/esp/
• esp.sleep_type([sleep_type])
Примечание: Это функция только для ESP8266.
Задает или считывает то, в каком режиме сна находится микроконтроллер.
Если задать в этой функции аргумент sleep_type, у ESP8266 будет активирован режим сна, заданный в этом аргументе. Если эта функция будет вызвана без аргументов, то вернет текущий режим сна.
Режимы сна задаются при помощи следующих констант:
o SLEEP_NONE – все функции включены.
o SLEEP_MODEM – режим «сна» модема. Это выключит цепь WiFi-модема.
o SLEEP_LIGHT – режим легкого сна. Это выключит цепь WiFi-модема и будет периодически останавливать работу процессора.
Система входит в режим сна автоматически, когда это возможно.
• esp.deepsleep(time_us=0, /)
Примечание: Это функция исключительно для ESP8266. На ESP32 используйте [http://docs.micropython.org/en/latest/library/machine.html#machine.deepsleep machine.deepsleep()].
Вводит микроконтроллер в режим глубокого сна.
Это выключает все системы микроконтроллера, кроме цепи RTC-часов, которые можно использовать для перезапуска микроконтроллера через заданное количество времени, если контакт 16 подключен к контакту сброса. В противном случае микроконтроллер будет находиться в режиме сна, пока его не сбросят вручную.
• esp.flash_id()
Примечание: Это функция только для ESP8266.
Считывает ID устройства с flash-памятью.
• esp.flash_size() – считывает общий размер flash-памяти.
• esp.flash_user_start() – считывает смещение памяти, где начинается пространство, которое может использовать пользователь.
• esp.flash_read(byte_offset, length_or_buffer),
• esp.flash_write(byte_offset, bytes),
• esp.flash_erase(sector_no),
• esp.set_native_code_location(start, length)
Примечание: Это функции только для ESP8266.
Задает место, где будет размещаться и выполняться нативный код после его компиляции. Нативный код генерируется, когда в функции применяются декораторы @micropython.native, @micropython.viper и @micropython.asm_xtensa. ESP8266 должна выполнять код либо из iRAM, либо из flash-памяти размером менее 1 Мб (которая отображена в память), и эта функция как раз управляет тем, где будет находиться этот код.
Если в аргументах start и length будет None, нативный код будет расположен в неиспользуемой области памяти в конце участка iRAM1. Размер этой неиспользуемой области зависит от прошивки и обычно невелик (около 500 байт), но его достаточно для хранения нескольких очень маленьких функций. Преимущество использования этого участка iRAM1 в том, что он не изнашивается из-за записи на него.
Если в start или length будет не None, то это должны быть целые числа. В start задается байтовое смещение с начала flash-памяти, куда будет сохраняться нативный код. В length задается, сколько байтов flash-памяти, начиная со start, можно использовать для хранения нативного кода. Значения в start и length должны быть кратны размеру сектора (4096 байт). Перед записью flash-память будет автоматически стерта, так что убедитесь, что используете участок, который больше никак не используется (например, прошивкой файловой системы).
При использовании flash-памяти для хранения нативного кода сумма значений в start и length должна быть меньше или равна 1 мегабайту. Помните, что после многократных стираний (и записей) flash-память может износиться, так что пользуйтесь этой функцией по минимуму. В частности, нативный код должен быть перекомпилирован и перезаписан на flash-память при каждом запуске (включая выход из режима глубокого сна).
В обоих сценариях выше (будь то iRAM1 или flash-память), если в заданной области не будет свободного места, то использование нативного декоратора в функции приведет к тому, что во время ее компиляции будет возбуждено исключение MemoryError.


=См.также=
=См.также=

Текущая версия от 17:07, 22 октября 2020

Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.


Модуль esp – функции, связанные с ESP8266 и ESP32[1]

Модуль esp содержит программный инструментарий для работы с микроконтроллерами ESP8266 и ESP32. Некоторые из функций будут доступны только на одном из этих микроконтроллеров.

Функции

См.также

Внешние ссылки