Урок №19. Сохранение данных во внутренней памяти микроконтроллера ESP8266 с помощью языка microPython.
В данном уроке мы рассмотрим возможность сохранять в памяти переменные, и при необходимости доставать их от туда. Так как EEPROM в микроконтроллере ESP8266 отсутствует, но есть FLASH память — в ней и будем сохранять свои значения.
По сути мы будем создавать обычные *.txt файлы и в них будем записывать наши значения, при этом если не сохранять отдельно предыдущие, они будут перезаписываться новыми.
Для работы с файлами подключим библиотеку:
import os
Далее нам необходимо создать новый файл, в котором мы будем хранить наши данные:
file = open («File.txt», «w»)
import os import time from machine import Pin led = Pin(5, Pin.OUT) #GPIO1 button= Pin(14,Pin.IN) #GPIO5 led.off() k=0
try: file = open ("File.txt") t = int(file.read()) print(t) file.close() except OSError as e: file = open ("File.txt", "w") print(type(file)) file.write("0") print(file.write("0")) file.close()
while True: if button.value() == 0: k = 1 if k == 1 and button.value() == 1: k = 0 file = open ("File.txt", "w") if t == 1: t=0 file.write("0") else: t = 1 file.write("1") file.close()
if t == 1 : led.on() else: led.off() time.sleep_ms(100)