Давайте научимся загружать файлы в микроконтроллер и читать их. Считанные данные выведем на LCD дисплей. Для этого нам потребуется специальный плагин (расширение для Arduino IDE). Файл плагина можно скачать с нашего с сайта или сайта разработчика.
Теперь нужно найти папку «.arduinoIDE» по следующему пути C:\Users\<user>\.arduinoIDE (<user> это имя твоей учетной записи на компьютере). В папке создай «.arduinoIDE» новую папку с именем «plugins» и помести в нее ранее скачанный файл плагина «arduino-littlefs-upload-1.5.0.vsix».
Перезапусти Arduino IDE, создай новый скетч с кодом приведенным ниже и сохрани его. Попробуй загрузить на контроллер, на дисплее появится надпись «Failed to open file for reading» означающая, что не удалось открыть файл. Все правильно ведь мы его еще не загрузили.
Теперь создадим файл для загрузки на микроконтроллер. Для этого открой папку в которой расположен скетч, это можно сделать с помощь меню Arduino IDE:
В открывшейся папке создай новую папку с именем «data» и открой ее. Нажми правую кнопку мыши внутри папки и в открывшемся меню выбери
Назови новый файл «for_lcd.txt», открой его с помощью «Блокнота», добавь текст «This text was read from file.», сохрани файл и закрой «Блокнот».
Примечание. Рекомендуется текст в файле набрать в ручную, иначе могут возникнуть проблемы с его чтением. Кроме того можно использовать только английский алфавит.
Подготовительные операции закончены можно приступать к загрузки файла в микроконтроллер. Чтобы это сделать открой окно Arduino IDE и нажми на клавиатуре комбинацию клавиш Ctrl + Shift + P, в появившемся поле поиска набери «LittleFS». Под полем поиска появится плашка «Upload LittleFS to Pico/ESP8266/ESP32, нажми на нее. На контроллер должны загрузиться все файлы из папки «data». После загрузки в правом нижнем углу должно появится уведомление «LittleFS upload completed!».
Примечание. В момент загрузки вкладка «Монитор порта» должна быть закрыта. Если выдается ошибка о недоступности COM-порта, попробуй перезапустить Arduino IDE.
Теперь нажми кнопку «Reset» на твоей лаборатории, на дисплее должен появится введенный тобой в файл «for_lcd.txt» текст.
#include <LCDI2C_Multilingual.h> #include <LittleFS.h> #define DEFAULT_I2C_ADDR 0x3F // Или 0x27 в зависимости от твоей платы IoT LCDI2C_Generic lcd(DEFAULT_I2C_ADDR, 16, 2); void setup() { lcd.init(); lcd.setBacklight(0); lcd.clear(); LittleFS.begin(); File file = LittleFS.open("/for_lcd.txt", "r"); // Проверяем удалось ли открыть файл, если нет выводим сообщение if(!file){ lcd.print("Failed to open file for reading"); return; } String text; // Построчно читаем файл и добавлям строки в переменную text while(file.available()) { String line = file.readStringUntil('\n'); text += line; } file.close(); lcd.print(text); } void loop() {}
В этой программе мы прочитали текст из файла и вывели его на дисплей.