Считывание с SD обработка и перезапись переменных
- Войдите на сайт для отправки комментариев
Втр, 12/07/2016 - 16:00
Привет помогите с работой с SD картой, нужно считать переменную из файла, изменить переменную и перезаписать изменённую, таких переменных будет 2. У меня ничего не получается.
#include <SD.h> #include <SimpleTimer.h> File myFile; int timewalkcurrent=0; long int globalruntime; SimpleTimer timer2; void setup(){ timer2.setInterval(1000, timerrunglobal ); { Serial.begin(9600); Serial.println(SD_CHIP_SELECT_PIN); //53 Serial.println(SPI_MOSI_PIN); //51 Serial.println(SPI_MISO_PIN); //50 Serial.println(SPI_SCK_PIN); //52 while (!Serial) { ; } void timerrunglobal(){ timerrunglobal++; } void refreshsd(){ pinMode(53, OUTPUT); myFile = SD.open("time.txt"); if (myFile) { while (myFile.available()) { globalruntime=myFile.read(); } myFile.close(); } long int prof=globalruntime; globalruntime=prof+timerrunglobal; timerrunglobal==zero; SD.remove("time.txt"); pinMode(53, OUTPUT); myFile = SD.open("time.txt", FILE_WRITE); if (myFile) { myFile.write(globalruntime); myFile.close(); }} void loop(void) { unsigned long currentMillis = millis(); if (currentMillis - previousMillis >= interval) { previousMillis = currentMillis; refreshsd(); } const long interval = 0; } Serial.println(""); Serial.println(globalruntime); Serial.println(""); }
Вот упростил до максимума код, переделал, выводит значение меньше 254 только, как обойти ето?
Вот упростил до максимума код, переделал, выводит значение меньше 254 коректно только, как обойти ето?
Люди которіе работали со строками дайте подсказку)
попробівал таким образом считывать, уже 5тизначные числа коректно только считывает.