Страница 1 из 1

Организация записи данных в файл

Добавлено: 09 окт 2017, 20:16
Елизавета
Всем привет! Получаю с двух каналов АЦП платы NI USB-6211 две осциллограммы. Мне нужно записать их в файл (на данном этапе достаточно просто в текстовый документ, в идеале - в эксель). Возникает ошибка, звучит примерно так: error 3 incofrect memory zone accessed. Как избавиться? С чем она может быть связана? Завтра скину код обязательно))

Re: Организация записи данных в файл

Добавлено: 09 окт 2017, 21:55
IvanLis
Елизавета писал(а):Возникает ошибка, звучит примерно так: error 3 incofrect memory zone accessed. Как избавиться? С чем она может быть связана? Завтра скину код обязательно))
Посмотрите: http://digital.ni.com/public.nsf/allkb/ ... 7C0028A183

Re: Организация записи данных в файл

Добавлено: 17 окт 2017, 18:06
Елизавета
То, что написано на сайте по ссылке, мне не помогло

Re: Организация записи данных в файл

Добавлено: 17 окт 2017, 22:27
IvanLis
Елизавета писал(а):То, что написано на сайте по ссылке, мне не помогло
1. Зачем перезаписывать данные в файле на каждой итерации цикла? У Вас данные в файле будут только с последнего шага.
2. Ошибка возникает скорее всего из-за того, что до начала следующей итерации цикла (начала записи новой партии данных), еще не была окончена запись предыдущей.

Разберитесь, что Вам надо. Если записать данные с последней итерации цикла, то запись в файл можно вынести за цикл. Тогда данные будут записаны после остановки цикла, один раз.
Если писать нужно на каждой итерации, то необходимо продумать структуру программы и как минимум разнести чтение данных и запись в файл по разным циклам, при этом использовать функции более низкого уровня. Что бы файл открывался один раз на всю сессию, а по окончании записи закрывался. Связь между циклами - FIFO.

В процессе работы необходимо контролировать размер буфера, если запись не будет успевать за чтением, то буфер будет накапливаться. Тогда придется выдумать еще что-нибудь.