Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente |
microc:arduino:spiffs [2023/08/18 16:10] – [5.3 Interface Web dynamique (Mini Serre)] phil | microc:arduino:spiffs [2023/08/18 18:29] (Version actuelle) – phil |
---|
| |
| |
====== ESP - Le système de fichiers LittleFS ====== | ====== Microcontrôleurs - ESP - Le système de fichiers LittleFS ====== |
{{ :arduino:memoire:esp8266-spiffs-file-system.jpg?nolink&350|}} | {{ :arduino:memoire:esp8266-spiffs-file-system.jpg?nolink&350|}} |
[Mise à jour le 18/8/2023] | [Mise à jour le 18/8/2023] |
On pourra donc écrire : **/img/logo.png** comme nom de fichier pour simuler un fichier logo.png situé dans un répertoire img. | On pourra donc écrire : **/img/logo.png** comme nom de fichier pour simuler un fichier logo.png situé dans un répertoire img. |
| |
<callout type="warning" title="Chemin de fichier" icon="true">Le chemin de fichier doit toujours commencer par le caractère '**/**'.La **taille maximum** d'un nom de fichier est **31** (32 moins le caractère de fin de chaîne du C/C++ '\0'.</callout> | <callout type="warning" color="red" title="Chemin de fichier" icon="true">Le chemin de fichier doit toujours commencer par le caractère '**/**'.La **taille maximum** d'un nom de fichier est **31** (32 moins le caractère de fin de chaîne du C/C++ '\0'.</callout> |
| |
Le système de fichiers **LittleFS** (utilisé dans l'IDE PlatformIO) est une amélioration de **SPIFFS**. Les différences existantes entre SPIFFS et LittleFS sont décrites dans la rubrique <html><a href="https://arduino-esp8266.readthedocs.io/en/latest/filesystem.html" target="_blank">"Système de fichiers d'un ESP8266"</a></html>. | Le système de fichiers **LittleFS** (utilisé dans l'IDE PlatformIO) est une amélioration de **SPIFFS**. Les différences existantes entre SPIFFS et LittleFS sont décrites dans la rubrique <html><a href="https://arduino-esp8266.readthedocs.io/en/latest/filesystem.html" target="_blank">"Système de fichiers d'un ESP8266"</a></html>. \\ \\ |
| |
===1.2 La flash de l'ESP8266 === | ===1.2 La flash de l'ESP8266 === |
| |
=== 2.1 Arduino === | === 2.1 Arduino === |
<callout type="warning" title="Téléchargement" icon="true">Le **téléchargement de fichiers** à partir du PC dans la zone mémoire du système de fichiers des ESP8266 et ESP32 nécessite l'installation de plugins dans l'éditeur Arduino.</callout> | <callout type="warning" color="red" title="Téléchargement" icon="true">Le **téléchargement de fichiers** à partir du PC dans la zone mémoire du système de fichiers des ESP8266 et ESP32 nécessite l'installation de plugins dans l'éditeur Arduino.</callout> |
| |
* **Téléchargement** | * **Téléchargement** |
- Des fichiers du site (HTML, CSS, JavaScript) | - Des fichiers du site (HTML, CSS, JavaScript) |
- Du code C++ (croquis Arduino ou main.cpp dans platformIO) | - Du code C++ (croquis Arduino ou main.cpp dans platformIO) |
| \\ |
=== 4.1 Fichiers du site === | === 4.1 Fichiers du site === |
| |
<callout type="warning" icon="true">Pour être téléchargés dans la zone mémoire du système de fichiers, les fichiers doivent être placés dans un sous-répertoire **data** du répertoire du croquis Arduino ou du projet PlatformIO.</callout> | <callout type="warning" color="red" icon="true">Pour être téléchargés dans la zone mémoire du système de fichiers, les fichiers doivent être placés dans un sous-répertoire **data** du répertoire du croquis Arduino ou du projet PlatformIO.</callout> |
| |
* **Téléchargement à partir du croquis Arduino** {{ :arduino:memoire:exsiteweb.png?nolink|}} \\ Cliquer sur {{:arduino:memoire:pluginesp8266.png|}} dans le menu **Outils** de l'IDE Arduino pour que les fichiers situés dans //data// soient transférés dans la mémoire du système de fichiers. \\ // Exemple// {{ :arduino:memoire:fichsite.png?nolink|}} | * **Téléchargement à partir du croquis Arduino** {{ :arduino:memoire:exsiteweb.png?nolink|}} \\ Cliquer sur {{:arduino:memoire:pluginesp8266.png|}} dans le menu **Outils** de l'IDE Arduino pour que les fichiers situés dans //data// soient transférés dans la mémoire du système de fichiers. \\ // Exemple// {{ :arduino:memoire:fichsite.png?nolink|}} |
| |
{{ :arduino:uc:platformioico.png?nolink&50|}} | {{ :arduino:uc:platformioico.png?nolink&50|}} |
* **Téléchargement à partir du projet platformIO (VSCode)** \\ Cliquer sur **Upload Filesystem Image** pour que les fichiers situés dans //data// soient transférés dans la mémoire du système de fichiers. | * **Téléchargement à partir du projet platformIO (VSCode)** \\ Cliquer sur **Upload Filesystem Image** pour que les fichiers situés dans //data// soient transférés dans la mémoire du système de fichiers. \\ \\ |
| |
=== 4.2 Algorithme === | === 4.2 Algorithme === |
<strong>fin</strong> | <strong>fin</strong> |
</pre></html> | </pre></html> |
| \\ |
| |
=== 4.3 Code === | === 4.3 Code === |
} | } |
</code> | </code> |
| |
* **Projet PlatformIO** | |
| |
{{ :arduino:uc:platformioico.png?nolink&50|}} | {{ :arduino:uc:platformioico.png?nolink&50|}} |
| |
=== 5.1 Afficher le contenu d'un fichier === | === 5.1 Afficher le contenu d'un fichier === |
| A faire |
| \\ |
=== 5.2 Écrire dans un fichier === | === 5.2 Écrire dans un fichier === |
| A faire |
| \\ |
=== 5.3 Interface Web dynamique (Mini Serre) === | === 5.3 Interface Web dynamique (Mini Serre) === |
* **Exemple 1** | * **Exemple 1** |
<callout type="tip" title="PlatformIO" icon="true"><html><a href="https://webge.fr/doc/wikis/code/Arduino/ARD_PIO_ESP8266_DEMO_SERRE.zip" target="_blank">Télécharger</a></html> le projet PlatformIO pour VSCode. Le téléchargement des fichiers du site, situés dans data, se fait avec **Upload Filesystem Image**. Le SSID et le mot de passe du réseau doivent avoir été préalablement chargés dans l'eeprom émulée avec ce <html><a href="https://webge.fr/doc/wikis/code/Arduino/ARD_ESP_infosClientMQTT.zip" target="_blank">croquis</a></html>.</callout> | <callout type="tip" title="PlatformIO" icon="true"><html><a href="https://webge.fr/doc/wikis/code/Arduino/ARD_PIO_ESP8266_DEMO_SERRE.zip" target="_blank">Télécharger</a></html> le projet PlatformIO pour VSCode. Le téléchargement des fichiers du site, situés dans data, se fait avec **Upload Filesystem Image**. Le SSID et le mot de passe du réseau doivent avoir été préalablement chargés dans l'eeprom émulée avec ce <html><a href="https://webge.fr/doc/wikis/code/Arduino/ARD_ESP_infosClientMQTT.zip" target="_blank">croquis</a></html>.</callout> |
=== 5.4 Serveur FTP === | === 5.4 Serveur FTP === |
| A faire |