I'm using a ESPio32 under Ubuntu 16.04 with Arduino IDE.
I installed it like that :
Code: Select all
sudo usermod -a -G dialout $USER && \
sudo apt-get install git && \
wget https://bootstrap.pypa.io/get-pip.py && \
sudo python get-pip.py && \
sudo pip install pyserial
mkdir -p ~/Arduino/hardware/espressif
cd ~/Arduino/hardware/espressif
git clone https://github.com/espressif/arduino-esp32.git esp32 && \
cd esp32/tools/ && \
python get.py
I want to connect a SD card reader but I have compilation troubleshooting :
According to: http://dubstylee.net/v/wp-content/uploa ... iagram.pdfArchiving built core (caching) in: /tmp/arduino_cache_863645/core/core_espressif_esp32_espio32_FlashFreq_80,UploadSpeed_921600,DebugLevel_none_f721e91b3ea16adfd2352daa3f083a70.a
usage: gen_esp32part.py [-h] [--verify] [--quiet] input [output]
gen_esp32part.py: error: argument input: can't open '/home/yonnel/arduino-1.8.4/hardware/espressif/esp32/tools/partitions/{build.partitions}.csv': [Errno 2] No such file or directory: '/home/yonnel/arduino-1.8.4/hardware/espressif/esp32/tools/partitions/{build.partitions}.csv'
Plusieurs bibliothèque trouvées pour "SD.h"
Utilisé : /home/yonnel/arduino-1.8.4/hardware/espressif/esp32/libraries/SD
Non utilisé : /home/yonnel/Dropbox/00- DIY/02- Arduino/00- Sketch Arduino/libraries/SD
Non utilisé : /home/yonnel/arduino-1.8.4/libraries/SD
exit status 2
Erreur de compilation pour la carte ESPio32
I did this connexion :
SD I ESPio32
MISO --> 19
MOSI --> 23
SCK --> 18
CS --> 5
VCC --> 5V
GND --> GND
Can you help me to fixe this troubleshooing ?
Here is the program that I use to test an SD Reader (Works on a on an Arduino Uno) :
Code: Select all
/** Programme pour écrire sur une carte SD.
Il est inspiré de ce tutoriel :
https://www.youtube.com/watch?v=M9VvsFL-vZI&t=15s
J'essaye d'écrire seulement, pour le moment, les informations données par un compteur "compt".
J'y mettrai prochainement des informations utiles. ;-) --> station météo
**/
// Inclusion de la bibliothèque de lecture/écriture sur une carte SD
#include <SD.h>
// Inclusion de la bibliothèque de contrôle du bus SPI
#include <SPI.h>
// Affectation de broche CS du module SD à la PIN 10
#define CS_PIN 5 // Ne fonctionnait pas depuis la PIN 6 sur un Arduino Nano !!!
// Pourrait être omis si la pin est indiquée lors de l'initialisation --> if (SD.begin(10))
// Création d'un objet (instance de "SD.h") qui s'appellera "monStylo" (Dans le programme d'origine, c'était "monFichier")
// C'est le processus qui sera capable d'écrire dans la mémoire de la SD. En fait, c'est comme créer un stylo !
File monStylo;
int compt = 0; // Création d'une variable pour faire un compteur d'essai.
const int ledTemoin = 15; // Définir la pin où je mettrai la LED qui témoignera de l'écriture sur la SD
void setup()
{
Serial.begin(9600); // Initialise le moniteur série.
Serial.println("Initialisation de la carte SD en cours..."); // Affiche ce texte dans le moniteur série.
pinMode(ledTemoin, OUTPUT); // Pour activer la PIN "ledTemoin" en sortie et faire allumer une diode témoinn lors de l'écriture
// histoire de vérifier, même sans moniteur, qu'il écrit quelque-chose.
if (SD.begin()) // Si l'initialisation de la SD réussit
{
Serial.println("Initialisation réussie !"); // Affiche le texte.
}
else // Si l'initialisation de la SD a échoué
{
Serial.println("L'initialisation a échoué."); // Affiche le texte
return; // Revérifie le "if" ??? / Mais je ne le vois pas faire une boucle... ???
}
}
void loop() {
compt++ ; // Incrémenter le compteur de 1 (= "compt = compt + 1")
monStylo = SD.open("test.txt", FILE_WRITE); // Ouverture (ou création, s'il n'existe pas déjà), en mode écriture, d'un fichier texte.
if (monStylo) // --> Si "monStylo" a bien réussi à ouvrir/créer le fichier .txt
{
monStylo.print("Boucle n° : "); // Écrire le texte dans le fichier
monStylo.println(compt); // Écrire la valeur de la variable compt
digitalWrite(ledTemoin, HIGH); // Allumer la diode "ledTemoin" pour montrer qu'il écrit
monStylo.close(); // Fermer le fichier (Rebouche le stylo :-) )
Serial.print("Écriture terminée ! C'était la boucle : "); // Prévient dans le moniteur série que l'écriture est terminée
Serial.println(compt); // Prévient dans le moniteur série que l'écriture est terminée
}
else // --> Si "monStylo" n'a pas réussi à ouvrir le fichier .txt
{
Serial.println("N'arrive pas à écrire..."); // Prévient dans le moniteur série que l'écriture a échoué
}
digitalWrite(ledTemoin, LOW); // Éteindre la diode "ledTemoin"
delay (1000);
}