Я работаю над проектом, который должен получить данные из АЦП (аналого-цифровой преобразователь) и отобразить их как осциллограф.
Моя среда разработки:
Язык: C ++
GUI: Qt (с Qwt для печати)
IDE: создатель Qt
ОС: Windows 7
С помощью API, предоставленного производителем ADC, потоковые данные, считанные с ADC, будут временно сохранены в двойном буфере, и мне разрешено взять половину двойного буфера и отобразить его. Таким образом, показанные данные будут «буфером за раз», другими словами, минимальная единица, обновленная в моем осциллографе, это размер половины двойного буфера.
Это немного другая форма, чем я ожидал, потому что я видел несколько связанных примеров, предлагаемых Qwt (осциллограф, refreshtest, cpuplot) и, как мне кажется, осциллограф более «реального времени».
Один из вариантов — минимизировать размер буфера, рискуя потерять данные (учитывая, что в циклах слишком много задач, поэтому компьютер не может отобразить / сохранить весь буфер до его обновления). Второй — использовать опрос, но я не очень знаком с этим.
Моя цель очень похожа на эту тему:
Отображение данных в реальном времени с Qt, QWT и C ++, но я должен использовать предоставленный API, и кажется, что я могу работать только на буферах.
Есть ли варианты (или подсказки) для меня, чтобы создать осциллограф в реальном времени? Я совсем новичок в разработке программного обеспечения для сбора данных, подобного этому, и я боюсь, что могу упустить некоторые важные концепции. Любые предложения приветствуются. Спасибо.
Задача ещё не решена.
Других решений пока нет …