NodeMCU ESP8266 Maroc Vs Arduino Maroc
On entend de plus en plus parler de cette carte esp8266 qui permet facilement de se connecter et d’échanger sur un réseau WIFI. Des cartes tels que NodeMCU sont de plus en plus populaires et permettent d’utiliser NodeMCU ESP8266 Maroc plus facilement, presque comme un Arduino.
Il est possible de la programmer en Lua, de créer des firmwares avec l’IDE d’Arduino et de nouveaux projets fleurissent tous les jours. Seulement, toutes ces possibilités amènent de la confusion lorsque l’on commence à s’intéresser à NodeMCU ESP8266 Maroc et c’est pour éclaircir les choses que j’ai eu envie de créer cette dépêche.
Comparaison technique entre NodeMCU et Arduino
La carte qui se rapproche le plus d’un Arduino est la NodeMCU ESP8266 Maroc. Elle a été créée pour pouvoir utiliser l’ESP8266 avec le firmware du même nom, NodeMCU, qui permet d’interpréter des scripts Lua. Aujourd’hui cette carte peut être programmée comme un Arduino avec l’IDE d’Arduino.
NodeMCU est à l’ESP8266 ce que l’Arduino est à l’ATmega 328. Il existe aujourd’hui 14 versions de l’ESP8266. NodeMCU ESP8266 Maroc utilise la version 12 (ESP12E) de l’esp8266.
+---------------------+----------------+------------------------+
| | Arduino UNO R3 | NodeMCU |
+---------------------+----------------+------------------------+
| Power | 5V | 3,3V |
| Fréquence | 16MHz | 80MHz |
| Microcontroller | ATmega328 | ESP8266 |
| Flash Memory | 32KB | 4MB |
| SRAM | KB | 64 KB SRAM / 96KB DRAM |
| EEPROM | 1 KB | Non, utiliser Flash |
| USB | Oui | Oui |
| External Power Port | Oui | Non |
| Pins | 32 | 22 |
| GPIO | 14 | 16 (11 Digital I/O) |
| Analog I/O | 6 | 1 |
| WiFi | Non | Oui ! |
| PWM | 6 | 9 |
| SPI / I2C | Oui | Oui |
+---------------------+----------------+------------------------+
Historique
L’ESP8266 a été créé en 2014 par une société chinoise (Espressif). Elle a été surtout utilisée au début pour ajouter des fonctionnalités WIFI à des projets Arduino via des commandes AT. Très vite, devant la puissance de la puce et avec la publication d’un SDK par Espressif, une belle communauté a développé des outils et firmware pour pouvoir la programmer.
En deux ans, un grand nombre de modèles différents ont été commercialisés.
Firmwares
Si beaucoup de projets ont débuté pour programmer la puce, deux semblent principalement utilisés :
NodeMCU
NodeMCU est donc le nom d’une carte, mais également d’un firmware qui permet de programmer l’ESP8266 via le langage de script Lua. Cela simplifie grandement les choses, voici par exemple le code nécessaire pour se connecter à un réseau WIFI :
print(wifi.sta.getip())
--nil
wifi.setmode(wifi.STATION)
wifi.sta.config("SSID","password")
print(wifi.sta.getip())
--192.168.18.110
Voici d’autres exemples sur la page du projet. Malheureusement, la quantité de mémoire disponible pour les scripts après installation du firmware est faible pour les scripts un peu longs. Il a été tenté de « minifier » le code Lua (les commentaires, nom de variables, etc étant envoyés en mémoire) mais on perd du coup de la simplicité de programmation.
Création de firmware via l’IDE Arduino
Un nouveau projet est donc né pour programmer directement NodeMCU avec l’IDE Arduino, comme un Arduino. Ce projet est aujourd’hui très actif et utilisé.
Il ne s’agit plus ici de scripts mais bien de créer un firmware à télécharger sur la puce. Cela évite donc les problème de mémoire rencontrés avec NodeMCU. Un grand nombre de bibliothèques sont déjà disponibles pour créer vos firmware.
There are no reviews yet.