• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Zapis danych na karcie SD
#1
Witam, mam problem z zapisem danych na karcie SD projekt zaczynam od belki z której wartości chcę zapisywać na karcie SD w celu późniejszej obróbki na komputerze. I tu teoretycznie stworzyłem program który zapisuje dane na karcie lecz zapisywane są dane w mniejszej częstotliwości. I mam pytanie czy w ogóle da radę programowo to rozwiązać aby zapisywać przez standardowy czytnik SD czy może zakupić moduł do zapisu open log. Dzięki za pomoc Smile
Kod:
#include <HX711.h>
#include <SD.h>
#include <SPI.h>
HX711 cell(3,2);
File plik;
void setup(){
  Serial.begin(9600);
  Serial.print("Initalizing SD car...");
  if(!SD.begin(10)){
    Serial.println("Card failed, or not present");
    return;
  }
  Serial.println("Card intialized");
 
}
void loop(){
  long val=0;
  val=cell.read();
   SD.begin(SS);
  File plik=SD.open("Badanie.txt", FILE_WRITE) ; //Zapis pliku o nazwie badanie
  plik.println(val);
  
  digitalWrite(13,HIGH);
  plik.flush(); // zabezpieczenie karty przed uszkodzeniem
  digitalWrite(13,LOW);
}
 
Odpowiedź
#2
Niska częstotliwość pomiarów może wynikać z tego, że po każdym zapisie zamykasz kartę. Może warto, żeby algorytm wyglądał mniej więcej tak:

Kod:
void loop(){
long val = -1;
SD.begin(SS);
while(val!=0) {
val=cell.read();
File plik=SD.open("Badanie.txt", FILE_WRITE) ; //Zapis pliku o nazwie badanie  
plik.println(val);
}
 digitalWrite(13,HIGH);
 plik.flush(); // zabezpieczenie karty przed uszkodzeniem
 digitalWrite(13,LOW);
}

Oczywiście nie wiem, co chcesz mierzyć, nie wiem, jakie wartości będziesz osiągał (oraz kiedy program ma wyjść z pętli while), ale to powinno przyspieszyć częstotliwość zapisu.
 
Odpowiedź
#3
Dzięki za podpowiedź, dopiero zaczynam zabawę . Belka będzie wykorzystywana do mierzenia siły podczas szlifowania dalej program będzie rozbudowany o możliwość wyboru próbkowania 10 lub 80
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości