Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente |
documentation:microcontroleurs:arduino:modules:esp01_arduino:index [2018/08/11 13:46] – f1sls | documentation:microcontroleurs:arduino:modules:esp01_arduino:index [2018/12/13 13:38] (Version actuelle) – f1sls |
---|
{{:documentation:microcontroleurs:arduino:modules:esp01_arduino:esp01_adaptateur_01.jpg?direct&200 |}}{{:documentation:microcontroleurs:arduino:modules:esp01_arduino:esp01_adaptateur_03.jpg?direct&200 |}} | {{:documentation:microcontroleurs:arduino:modules:esp01_arduino:esp01_adaptateur_01.jpg?direct&200 |}}{{:documentation:microcontroleurs:arduino:modules:esp01_arduino:esp01_adaptateur_03.jpg?direct&200 |}} |
{{:documentation:microcontroleurs:arduino:modules:esp01_arduino:esp01_adaptateur_02.jpg?direct&200 |}} | {{:documentation:microcontroleurs:arduino:modules:esp01_arduino:esp01_adaptateur_02.jpg?direct&200 |}} |
{{:documentation:microcontroleurs:arduino:modules:esp01_arduino:esp01_adaptateur_04.jpg?direct&200 |}} | {{:documentation:microcontroleurs:arduino:modules:esp01_arduino:esp01_adaptateur_04.jpg?direct&200|}} |
| |
| ===== Interfaçage avec l'Arduino ===== |
| L'ESP01 (le 8266 en général) fonctionne en 3,3V et nécessite une adaptation de niveaux pour la liaison série TX/RX. |
| |
| C'est à ça que sert cette platine (en plus d'alimenter l'ESP01 en 3,3V) :\\ |
| {{:documentation:microcontroleurs:arduino:modules:esp01_arduino:esp-01_adaptera-web.jpg?direct&400|}} |
| \\ |
| |
| ===== Initialisation ESP-01 ===== |
| |
| Utiliser « SoftwareSerial » pour pouvoir utiliser les broches qu'on veut au lieu de TxD / RxD qui servent à la liaison Arduino <-> PC. |
| |
| <code c> |
| #include <SoftwareSerial.h> |
| |
| SoftwareSerial ESP8266(10, 11); |
| </code> |
| |
| <code c> |
| /****************************************************************/ |
| /* Fonction qui initialise l'ESP8266 */ |
| /****************************************************************/ |
| void initESP8266() |
| { |
| Serial.println("**********************************************************"); |
| Serial.println("**************** DEBUT DE L'INITIALISATION ***************"); |
| Serial.println("**********************************************************"); |
| envoieAuESP8266("AT+RST"); |
| recoitDuESP8266(2000); |
| Serial.println("**********************************************************"); |
| envoieAuESP8266("AT+CWMODE=3"); |
| recoitDuESP8266(5000); |
| Serial.println("**********************************************************"); |
| envoieAuESP8266("AT+CWJAP=\""+ NomduReseauWifi + "\",\"" + MotDePasse +"\""); |
| recoitDuESP8266(10000); |
| Serial.println("**********************************************************"); |
| envoieAuESP8266("AT+CIFSR"); |
| recoitDuESP8266(1000); |
| Serial.println("**********************************************************"); |
| envoieAuESP8266("AT+CIPMUX=1"); |
| recoitDuESP8266(1000); |
| Serial.println("**********************************************************"); |
| envoieAuESP8266("AT+CIPSERVER=1,80"); |
| recoitDuESP8266(1000); |
| Serial.println("**********************************************************"); |
| Serial.println("***************** INITIALISATION TERMINEE ****************"); |
| Serial.println("**********************************************************"); |
| Serial.println(""); |
| } |
| |
| /****************************************************************/ |
| /* Fonction qui envoie une commande à l'ESP8266 */ |
| /****************************************************************/ |
| void envoieAuESP8266(String commande) |
| { |
| ESP8266.println(commande); |
| } |
| /****************************************************************/ |
| /*Fonction qui lit et affiche les messages envoyés par l'ESP8266*/ |
| /****************************************************************/ |
| void recoitDuESP8266(const int timeout) |
| { |
| String reponse = ""; |
| long int time = millis(); |
| while( (time+timeout) > millis()) |
| { |
| while(ESP8266.available()) |
| { |
| char c = ESP8266.read(); |
| reponse+=c; |
| } |
| } |
| Serial.print(reponse); |
| } |
| </code> |