Étape 3: Firmware Options
Quelques progiciels différentes options sont disponibles pour le ESP8266. Ceux-ci permettent d’accéder au module de différentes manières, comme vous pouvez le voir ci-dessous.
À l’interpréteur de commandes (par défaut)
Le moyen le plus rapide pour démarrer avec ESP8266 consiste à utiliser son firmware d’origine, qui lui permet de traiter les commandes qu’il reçoit sur son interface UART Serial AT. Le plus grand avantage de cette option est que nous ne devons pas être familiers avec une langue spécifique ou un cadre d’utilisation du module. Nous pouvons simplement envoyer une série de commandes pour atteindre notre objectif. L’inconvénient de ceci est que nous avons besoin d’un microcontrôleur supplémentaire impliqué ou un USB to Serial adapter pour envoyer les commandes nécessaires.
Pour la liste complète, veuillez consulter la documentation (https://acrobotic.com/downloads/ESP8266_at_commands.pdf).
Considérant que l’AT commandsare la façon de communiquer avec ICs compatible sans fil (Bluetooth, Wi-Fi, GSM, par exemple), ils posent la limitation d’avoir besoin d’un autre module pour exécuter l’application qui spécifie ces commandes en conséquence. Cependant, si nous pouvions courir l’application au sein de ESP8266 elle-même alors nous aurions tout autonome par un seul IC. Heureusement, Espressif fait un Software Development Kit (SDK) disponible qui permettait aux utilisateurs de flash options firmware différent.
NodeMCU
NodeMCU est, à l’heure actuelle, l’alternative plus populaire pour le firmware en cours d’exécution sur ESP8266. Basé sur le projet eLua, il fonctionne un interpréteur Lua à bord du ESP8266, qui est capable d’exécuter des commandes écrites dans le langage de script Lua. Les commandes sont envoyées à ESP8266 via l’interface série UART.
NodeMCU est un excellent point de départ pour les décideurs, car il fournit un environnement interactif qui permet de lancer des commandes non seulement pour le contrôle de l' ESP8266interface sans fil, mais aussi ses fonctionnalités GPIO et matériels tels qu’i2c et PWM. En outre, nous avons accès à toute l’étendue de la Lua langage de programmation pour écrire nos applications. Dans le cas du firmware par défaut (À interpréteur de commandes), le code d’application devra être développé en utilisant un langage de programmation adapté au microcontrôleur ou SoC nous permet de développer l’interface pour envoyer les commandes au cours de la série (par exemple, C/C++ pour les microcontrôleurs dans les conseils d’Arduino).
Enfin, non seulement fait le firmware NodeMCU nous permet d’exécuter des commandes de manière interactive, mais nous pouvons sauver nos applications sous forme de script dans ESP8266de mémoire flash et lui demander d’exécuter le code d’application chaque fois il redémarre ! Même s’il s’agit d’une option pratique, notre méthode privilégiée de travailler avec ESP8266 consiste à écrire notre propre firmware en utilisant le cadre de l’Arduino (détails ci-dessous).
Custom Firmware (à l’aide de l’IDE Arduino)
Considérant que le Conseil de développement de NodeMCU est livré avec la dernière version du firmware NodeMCU , nous pouvons remplacer très facilement à l’aide de l' IDE Arduino. Cela nous permet d’exécuter notre propre firmware sur ESP8266, qui s’exécute chaque fois que le module est alimenté. Même si cette méthode efface le firmware de NodeMCU de ESP8266de mémoire flash, c’est un processus simple de revenir à l’utiliser!
Autres
Pour les utilisateurs avancés, il y a les outils de compilation esp-ouvert-sdk qui nous permet à progam ESP8266 directement (plus d’infos sur le wiki esp8266.com) sans avoir à utiliser l’IDE Arduino pour charger le code sur elle.
Ce système sur puce peu soignée a également reçu l’attention de la touchant Espruino et MicroPython . Les MicroPython et les Espruino sont des interprètes fantastiques (Python pour le premier et JavaScript pour ce dernier) qui peut fonctionner sur des plateformes embarquées. Cependant, ces deux options sont encore dans les tout premiers stades de développement pour ESP8266 et pas toutes les fonctionnalités sont availab