Получение файла с SD карты

Тема в разделе "Arduino & Shields", создана пользователем Денчик_45, 30 сен 2016.

  1. Максимус-Бог

    Максимус-Бог Убийца матрёшек

  2. Limoney

    Limoney Гик

    Самое простое - сбрасывать данные в терминальную программу, а потом сохранять файл
     
  3. а как это сделать?
     
  4. Limoney

    Limoney Гик

    Например, программа получает определенную команду “GetDataX” по uart (com-порт) от той же терминалки, в ответ программа начинает передавать считанный байт за байтом с sd карты. По завершении передачи всего файла Вы сохраняете принятые данные как файл на диск.
     
  5. Максимус-Бог

    Максимус-Бог Убийца матрёшек



     
  6. Limoney

    Limoney Гик

    И чего изволите? Все варианты имеют право на существование.
     
    Последнее редактирование: 7 окт 2016
  7. Этот вариант мне подходит исключительно. Я не знаю как это реализовать программно...
     
    Последнее редактирование: 7 окт 2016
  8. Vad33

    Vad33 Капитан-оригинал

    ...и желания самому разбираться нет?! :)
     
  9. не то что бы желания, нет понимая как это реализовать в виде кода
     
  10. Максимус-Бог

    Максимус-Бог Убийца матрёшек

    В виде кода на компе или на arduino?
     
  11. Limoney

    Limoney Гик

    Программа arduino получает по серийному порту команду чтения. В программе arduino если файл на sd до этого был открыт на запись, то закрываем его. Снова открываем этот файл на чтение, и в цикле отправляем текущий прочитанный байт в серийный порт до тех пор, пока не будут прочитаны все байты файла. После закрываем файл на sd.
     
  12. Как я понимаю, если в ардуину код не залить, то сделать это не получится, поправьте если не так.
    Я бы назвал это "ход действий". Это я представляю и со своими знаниями, вопрос в том как мне это сделать в ide, и что бы работало в жизни.
     
  13. Limoney

    Limoney Гик

    Чтение и отправка файла
    Код (C++):
      myFile = SD.open("xxxxx.xxx");
      if (myFile) {
        Serial.println("xxxxx.xxx:"); // сообщение для отладки
     
        while (myFile.available()) {
            Serial.write(myFile.read());
        }
     
        myFile.close();
      } else {
       
        Serial.println("error opening xxxxx.xxx"); // сообщение для отладки
      }
     
  14. чтение вижу, а где отправка?
     
  15. Limoney

    Limoney Гик

    Serial.write(myFile.read());
     
  16. попробую в деле, о результатах отпишусь. Спасибо.