start:raspberry:uart:uarttoesp32
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| start:raspberry:uart:uarttoesp32 [2025/02/24 11:20] – [Code pour l"ESPM qui recoit sur l'UART1 le RPI et l'UART2 l'ESPE] admin | start:raspberry:uart:uarttoesp32 [2025/03/02 17:51] (Version actuelle) – [Connexion physique :] admin | ||
|---|---|---|---|
| Ligne 47: | Ligne 47: | ||
| </ | </ | ||
| - Allez dans **" | - Allez dans **" | ||
| - | - Redémarrez le Raspberry Pi. | + | - Redémarrez le Raspberry Pi. ( sudo reboot ) |
| + | - Desactiver le Bluetooth sur le Raspberry Pi | ||
| + | - Installer [[https:// | ||
| + | - Installer PySerial ( sudo apt-get install python3-serial ) | ||
| + | - sudo reboot | ||
| 2. **Vérifiez que le port série fonctionne** : | 2. **Vérifiez que le port série fonctionne** : | ||
| - Une fois le port série activé, vous pouvez vérifier si le périphérique série est détecté. Tapez la commande suivante pour vérifier : | - Une fois le port série activé, vous pouvez vérifier si le périphérique série est détecté. Tapez la commande suivante pour vérifier : | ||
| Ligne 155: | Ligne 158: | ||
| Ce code permet à l' | Ce code permet à l' | ||
| - | == Code pour l"ESPM qui recoit sur l' | + | == Code pour l"ESP32M |
| {{ : | {{ : | ||
| Ligne 162: | Ligne 165: | ||
| * Raspberry Pi 4 : | * Raspberry Pi 4 : | ||
| *GPIO 14 (TX) → **ESP32M GPIO 25 (RX)** (Transmission du Raspberry Pi vers l' | *GPIO 14 (TX) → **ESP32M GPIO 25 (RX)** (Transmission du Raspberry Pi vers l' | ||
| - | *GPIO 15 (RX) → **ESP32M GPIO 26 (TX)** (Réception du Raspberry Pi depuis l' | + | *GPIO 15 (RX) < |
| * ESP32M | * ESP32M | ||
| *GPIO 16 (RX) --> **ESP32E GPIO 17 (TX) ** (Transmission de l' | *GPIO 16 (RX) --> **ESP32E GPIO 17 (TX) ** (Transmission de l' | ||
| - | *GPIO 17 (TX) --> **ESP32E GPIO 16 (RX) ** (Réception de l' | + | *GPIO 17 (TX) <-- **ESP32E GPIO 16 (RX) ** (Réception de l' |
| * Alimentation : | * Alimentation : | ||
| Ligne 249: | Ligne 252: | ||
| 1. **Code Python pour envoyer/ | 1. **Code Python pour envoyer/ | ||
| - | Voici un exemple de code Python pour communiquer avec l'ESP32 en utilisant le port série | + | Voici un exemple de code Python pour communiquer avec l'ESP32M |
| Installer le module pyserial sur raspbery : | Installer le module pyserial sur raspbery : | ||
| Ligne 273: | Ligne 276: | ||
| while True: | while True: | ||
| if ser.in_waiting > 0: # Si des données sont reçues | if ser.in_waiting > 0: # Si des données sont reçues | ||
| - | received = ser.readline().decode(' | + | |
| + | received = ser.readline().decode(' | ||
| print(" | print(" | ||
| time.sleep(1) | time.sleep(1) | ||
| Ligne 302: | Ligne 306: | ||
| Cela devrait vous permettre d' | Cela devrait vous permettre d' | ||
| + | |||
| + | |||
| + | ====== Test la vitesse entre RPI4 et ESP32 sur UART à 115200Bds ====== | ||
| + | |||
| + | ====Programme python sur le RPI4==== | ||
| + | |||
| + | <code python exemple001.py> | ||
| + | import serial | ||
| + | import time | ||
| + | |||
| + | # Configurer le port série pour le Raspberry Pi | ||
| + | ser = serial.Serial('/ | ||
| + | time.sleep(2) | ||
| + | |||
| + | # Envoyer un message à l' | ||
| + | ser.write(b" | ||
| + | print(" | ||
| + | while True: | ||
| + | if ser.in_waiting > 0: # Si des données sont reçues | ||
| + | received = ser.readline().decode(' | ||
| + | print(" | ||
| + | time.sleep(0.008) | ||
| + | ser.write(b" | ||
| + | # | ||
| + | </ | ||
| + | |||
| + | |||
| + | ==== Code C-Arduino sur ESP32 ==== | ||
| + | |||
| + | <code c exemple002.ino> | ||
| + | #define RXD2 16 | ||
| + | #define TXD2 17 | ||
| + | |||
| + | #define GPS_BAUDS 115200 | ||
| + | |||
| + | // | ||
| + | HardwareSerial mySerial(2); | ||
| + | |||
| + | int counter = 0; | ||
| + | |||
| + | void setup() { | ||
| + | Serial.begin(115200); | ||
| + | mySerial.begin(GPS_BAUDS, | ||
| + | Serial.println(" | ||
| + | } | ||
| + | |||
| + | void loop() { | ||
| + | while (mySerial.available() > 0) { | ||
| + | char gpsData = mySerial.read(); | ||
| + | Serial.println(gpsData); | ||
| + | } | ||
| + | delay(3); | ||
| + | // | ||
| + | mySerial.println(String(counter)); | ||
| + | if (counter == 1000){ | ||
| + | counter = 0; | ||
| + | } | ||
| + | // | ||
| + | counter++; | ||
| + | delay(0.005); | ||
| + | } | ||
| + | </ | ||
/home/chanteri/www/fablab37110/data/attic/start/raspberry/uart/uarttoesp32.1740392459.txt.gz · Dernière modification : de admin
