Bonjour à tous,
Je crée ce sujet car je rencontre une difficulté que je n'arrive pas à résoudre, et je ne trouve pas de sujets en parlant déjà.
Voila, j'essaie de créer une librairie ayant pour but de gérer l'échange d'information entre une carte SD et une sortie série bluetooth. Pour cela, j'ai besoin de faire appel aux bibliothèques SdFat, SPI, et RTClib. J'ai fais ceci de la manière suivante :
#include <Arduino.h>
#include "RecupBT.h"
#include "RTClib.h"
#include "SdFat.h"
#include <SPI.h>
//Modifie le String pris en argument pour lui attribuer la commande reçue
void ReceptionBT(String commande){
if(Serial1.available()){
int i = 0;
char commande_[50];
while (Serial1.available()!=0 && i<=49)
{
commande_[i] = Serial1.read();
delay(10);
i++;
}
commande_[i] = '\0';
commande = commande_;
}
}
//Test envoi de donnees :
boolean donneesDemandeesBT(String commande){
return commande.equals("envoi donnees");}
//Televersement de SD vers Serial1
void envoiDonneesBT(SdFat sd, SdFile myFile){
if (sd.exists("classeur1.csv")){
myFile.open("classeur1.csv",O_READ);
while (myFile.available()){
Serial1.write(myFile.read());
}
myFile.close();
}
}
//Test envoi de Date & Ref :
boolean refsDemandeesBT(String commande){
return commande.equals("envoi Refs");}
//Concatenation et envoi de DateRef :
void envoiRefsBT(RTC_DS1307 rtc, char RefNano){
DateTime now = rtc.now();
Serial1.print("/");
Serial1.print(now.year(), DEC);
Serial1.print("_");
Serial1.print(now.month(), DEC);
Serial1.print("_");
Serial1.print(now.day(), DEC);
Serial1.print("_");
Serial1.print("Nano");
Serial1.print(RefNano);
Serial1.print("_Donnees.txt");
Serial1.print("\n");
}
Mais je ne suis vraiment pas sur de la manière dont il faut utiliser les objets associés aux bibliothèques (SdFile, SdFat, RTC_DS1307). Lorsque je comile ce code, je reçois l'erreur
In file included from C:\Users\Utilisateur\Documents\Arduino\Nanoé\Programme_modulaire\Programme_modulaire.ino:9:0:
sketch\SdFat.h:27:33: fatal error: SdSpiCard/SdSpiCard.h: No such file or directory
#include "SdSpiCard/SdSpiCard.h"
^
compilation terminated.
exit status 1
Erreur de compilation pour la carte Arduino/Genuino Mega or Mega 2560
Sauriez-vous m'aider à comprendre ce qui ne va pas ?
Dans un premier temps je ne mettais pas en argument les objets type "rtc" ou "myFile". Je recevais alors un message d'erreur selon lequel ces objets n'étaient pas déclarés. Je les ai alors déclaré au-dessus du setup, mais j'avais alors un problème de double déclaration avec le programme dans lequel j'insère cette bibliothèque. J'ai donc essayé de cette manière, mais je ne suis pas sur que ce soit très propre ?
Merci pour vos conseils !
Henri
RecupBT.cpp (1.26 KB)
RecupBT.h (228 Bytes)