Вывод в файл

Тема в разделе "Arduino & Shields", создана пользователем Druids91, 21 окт 2014.

  1. sd55

    sd55 Нерд

    Это я видел. Особых надежд не питал. Но и плодить лишние темы не хотелось.
     
  2. b707

    b707 Гуру

    не подскажу, потому что под Линукс сохранение данных с порта проще самому написать, чем искать готовое Всего-то пара десятков строчек...
     
  3. sd55

    sd55 Нерд

    Вот и я ж про то. Под Линукс все работает.
    Но мне хотелось под Windows.
    А те терминалы, что видел лог не писали.
    Это среди бесплатных.
     
  4. Igor68

    Igor68 Гуру

    Код (Text):

    //фиксация времени наработки насосов в файл если определено имя файла
    int wrfiletimework(void)
    {
      FILE * file;
      //
      //проверяем заданный путь к файлу
      if(strcmp(&ftimework[0], "") != 0)
      {
      //открываем файл
      file = fopen(&ftimework[0],"wt");
      if(file < 0)
      {
       //не смогли открыть файл
      printf("Open %s  error!\n", &ftimework[0]);
      pthread_mutex_unlock(&MainMutex);
      return -1;
      }
      //пишем по списку - у на сданные long long время в секундах от 1970 года
      fprintf(file,"tw_m1_1 : %lli\n", (long long)(fromserver.tw_m1_1));
      fprintf(file,"tw_m1_2 : %lli\n", (long long)(fromserver.tw_m1_2));
      fprintf(file,"tw_m2_1 : %lli\n", (long long)(fromserver.tw_m2_1));
      fprintf(file,"tw_m2_2 : %lli\n", (long long)(fromserver.tw_m2_2));
      fprintf(file,"tw_m3_1 : %lli\n", (long long)(fromserver.tw_m3_1));
      fprintf(file,"tw_m3_2 : %lli\n", (long long)(fromserver.tw_m3_2));
      fprintf(file,"tw_m4_1 : %lli\n", (long long)(fromserver.tw_m4_1));
      fprintf(file,"tw_m4_2 : %lli\n", (long long)(fromserver.tw_m4_2));
      //ну счётчики расхода то же большие
      fprintf(file,"Qn : %lli\n", (long long)(fromserver.Qn));
      fprintf(file,"QCabk : %lli\n", (long long)(fromserver.QCabk));
      fprintf(file,"QCpbk : %lli\n", (long long)(fromserver.QCpbk));
      fprintf(file,"Qhto : %lli\n", (long long)(fromserver.Qhto));
      fprintf(file,"Qhfrom : %lli\n", (long long)(fromserver.Qhfrom));
      //закрываем файл
      fclose(file);
      }
     return 0;
    }
     
    И причём виндовс или linux. Вроде как там и там работает. Напишите сами ну хотя бы в Visual studio. Или не знаете как открыть COM порт из программы? Примеров ведь туча и GOOGLE в придачу!
     
  5. sd55

    sd55 Нерд

    Думаю Вы согласитесь, что есть большая разница между универсальными и специализированными решениями.

    Так вот GoBetwino как раз хороший пример, не слишком громоздкого и достаточно удобного универсального решения для связи внешнего устройства через COM -порт с компиком на Windows
     
  6. Igor68

    Igor68 Гуру

    Дело хозяйское... ищите универсальное решение. Удачи!
     
  7. sd55

    sd55 Нерд

    Нашел, прикрутил, работает :)
     
  8. b707

    b707 Гуру

    ага, соглашусь. Специализированное, разработанное под конкретный пример - всегда лучше :)
     
  9. sd55

    sd55 Нерд

    Несомненно.
    Но есть маленькая загвоздка. Пока разрабатывал, отлаживал, настраивал, время ушло и твой великолепный прибор уже никому и не нужен.

    Но это еще и не так обидно. А вот когда промучишься, наладишь, а окажется что вводные неверны и все нужно переделывать заново.

    Поэтому всегда полезно прогнав на универсальном устройстве, быстро получить приемлемый результат. И уж потом при необходимости "вылизывать"
     
    Daniil нравится это.