ПОМОГИТЕ С SD. Чтение и запись
- Войдите на сайт для отправки комментариев
Задача в фаиле считать первую строку (число), вывести его на ФТФ экран, сделать над ним математическое действие (в десятичной системе), и записать его назат, голову уже второй день ломаю ,#include <OneWire.h>
OneWire ds(10); // на digital pin 10
/* na klych*/
#include <SPI.h>
#include <SD.h>
Sd2Card card;
SdVolume volume;
SdFile root;
const int sd = 53;
File myFile;
/*na sd karty*/
void setup() {
Serial.begin(9600);
pinMode(sd, OUTPUT);
while (!Serial) {
; // wait for serial port to connect. Needed for Leonardo only
}
if ( !SD.begin(sd))
{
Serial.println("initialization failed!");
return;
}
}
void loop() {
byte i;// nado dlia klycha
byte present = 0 ;//
byte addr[8];
if ( !ds.search(addr)) // do syda
{
delay(500);
return;
}
String str1;
for (int i = 4 ; i < 8 ; i++) {
str1 += addr[i], HEX ;
}
str1 += ".txt";
Serial.println(str1);
myFile = SD.open(str1.c_str(), FILE_WRITE);
if (myFile) {
Serial.println("Writing to test.txt...");
вот от сюда не знаю что делать (((( по этому там дальше брет, попытки что то сделать
myFile.seek(0);
int c ;
unsigned long ch;
char tx[3];
for (int i = 0 ; i < 3; i++)
{
myFile.read( tx[i] , i );
}
unsigned int Num = 0;
for (int i = 0; i < 3; i++)
{
Num = Num * 10 + tx[i] - 0x30;
}
Serial.println(Num, DEC);
Num= Num - 10;
Serial. println(Num);
Serial.println(ch, DEC);
ch = ch - 60 ;
Serial.println(ch, DEC);
myFile.close();
}
ds.reset();
}
код корявый , пытаюсь с ним работать кто поможет?
толька очень большая прозба обясните по строчно чтобы понять логику