Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
| products:laboratory_iot_c:exp44 [2024/12/02 16:12] – [Эксперимент 44. Загрузка файлов в микроконтроллер] labuser30 | products:laboratory_iot_c:exp44 [2024/12/12 11:04] (текущий) – [Эксперимент 44. Загрузка файлов в микроконтроллер] labuser30 | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| ===== Эксперимент 44. Загрузка файлов в микроконтроллер ===== | ===== Эксперимент 44. Загрузка файлов в микроконтроллер ===== | ||
| - | Давайте научимся загружать файлы в микроконтроллер и читать их. Считанные данные выведем на LCD дисплей. Для этого нам потребуется специальный плагин (расширение для Arduino IDE.Файл плагина можно скачать с нашего с сайта или | + | Давайте научимся загружать файлы в микроконтроллер и читать их. Считанные данные выведем на LCD дисплей. Для этого нам потребуется специальный плагин (расширение для Arduino IDE). Файл плагина можно скачать с нашего с сайта или |
| <WRAP center round download 60%> | <WRAP center round download 60%> | ||
| {{ : | {{ : | ||
| </ | </ | ||
| - | Теперь нужно найти папку " | + | Теперь нужно найти папку " |
| Перезапусти Arduino IDE, создай новый скетч с кодом приведенным ниже и сохрани его. Попробуй загрузить на контроллер, | Перезапусти Arduino IDE, создай новый скетч с кодом приведенным ниже и сохрани его. Попробуй загрузить на контроллер, | ||
| + | |||
| + | Теперь создадим файл для загрузки на микроконтроллер. Для этого открой папку в которой расположен скетч, это можно сделать с помощь меню Arduino IDE: | ||
| + | |||
| + | <span menu> | ||
| + | <span menu-item> | ||
| + | <span menu-item> | ||
| + | </ | ||
| + | |||
| + | В открывшейся папке создай новую папку с именем " | ||
| + | <span menu> | ||
| + | <span menu-item> | ||
| + | <span menu-item> | ||
| + | </ | ||
| + | |||
| + | Назови новый файл " | ||
| + | |||
| + | // | ||
| + | |||
| + | Подготовительные операции закончены можно приступать к загрузки файла в микроконтроллер. Чтобы это сделать открой окно Arduino IDE и нажми на клавиатуре комбинацию клавиш **Ctrl + Shift + P**, в появившемся поле поиска набери " | ||
| + | |||
| + | // | ||
| + | |||
| + | Теперь нажми кнопку " | ||
| + | |||
| + | {{ : | ||
| + | |||
| ==== Схема эксперимента ==== | ==== Схема эксперимента ==== | ||
| {{ : | {{ : | ||
| Строка 13: | Строка 39: | ||
| ==== Программный код эксперимента ==== | ==== Программный код эксперимента ==== | ||
| - | < | + | < |
| - | from machine import Pin, I2C | + | #include < |
| - | from esp8266_i2c_lcd import I2cLcd | + | #include < |
| - | _init() | + | |
| + | #define DEFAULT_I2C_ADDR 0x3F // Или 0x27 в зависимости от твоей платы IoT | ||
| - | DEFAULT_I2C_ADDR | + | LCDI2C_Generic lcd(DEFAULT_I2C_ADDR, 16, 2); |
| - | i2c = I2C(scl=Pin(5), sda=Pin(4), freq=400000) | + | void setup() { |
| - | lcd = I2cLcd(i2c, DEFAULT_I2C_ADDR, | + | Serial.begin(9600); |
| - | lcd.backlight_on() | + | Serial.println(); |
| + | lcd.init(); | ||
| + | lcd.setBacklight(0); | ||
| + | lcd.clear(); | ||
| + | LittleFS.begin(); | ||
| - | # | + | File file = LittleFS.open("/ |
| - | file = open(" | + | // Проверяем удалось ли открыть |
| - | written = file.write("The text was read from a file.") | + | if(!file){ |
| - | file.close() | + | |
| + | lcd.print(" | ||
| + | return; | ||
| + | } | ||
| - | lcd.clear() | + | String text; |
| - | #Читаем | + | // Построчно читаем файл |
| - | file = open(' | + | while(file.available()) { |
| - | text = file.read() | + | |
| - | file.close() | + | text += line; |
| + | } | ||
| + | file.close(); | ||
| - | lcd.putstr(text) | + | |
| + | Serial.println(text); | ||
| + | } | ||
| + | |||
| + | void loop() {} | ||
| </ | </ | ||
| - | В этой программе мы сначала записали текст | + | |
| + | В этой программе мы прочитали текст из файла и вывели | ||