Witam,
Potrzebuję w jakiś sposób przekazać dane z rs232 do programu Octave. Niestety pakiety w pewien sposób trzeba przefiltrować i zdekodować.
Aktualnie robię to w Octave poprzez otwarcie i czytanie np. /dev/ttyUSB0. Problem z pobieraniem w danym czasie odpowiednich pakietów i sama obróbka. Przy większej ilości danych(są też w tym niepotrzebne pakiety) program Octave się nie wyrabia.
Pomyślałem o takim motywie:
Program w C odbiera dane i odpowiednie pomiary "zapisuje" do danych plików. Skrypt w Octave otwiera odpowiednie pliki i pobiera pomiar.
Można to zrobić korzystając z kolejki FIFO (mkfifo), lecz dane pomiary mają różną częstotliwość próbkowania i nie chciałbym przez Octave pobierać wszystkiego - wiązałoby się to też ze zrobieniem wielowątkowości skryptu.
Z napisaniem programu w C nie ma problemu, tylko jak to ugryźć?
Najlepiej byłoby, aby wykonała się funkcja w programie przy próbie odczytu wartości z pliku przez inny program zewnętrzny.
Kiedyś robiłem coś takiego, tylko program musiał być modułem systemowym. Da się taki plik utworzyć poprzez "zwykły" program(oczywiście bez ingerencji dysku)?
System operacyjny: Linux
Środowisko do symulacji: Octave