Код Arduino для записи и отправки одновременно - PullRequest
1 голос
/ 25 января 2012

Я работаю над графическими блоками для среды моделирования Scilab (программное обеспечение, похожее на MATLAB). Там должны быть блоки, называемые AI (аналоговый вход), AO, DO. Также будет две программы: 1) на стороне Scilab, одна из которых отправляет и получает данные; 2) на стороне Arduino, которая отправляет и получает данные.

Сейчас я работаю над сторонним кодом Arduino. Он, код, должен считывать значения напряжения с 6 входов и отправлять их в Scilab через последовательный порт и одновременно записывать 1/0 на свои выходы, когда получает данные от Scilab. В моем понимании, отправленные / полученные данные должны иметь информацию о номере (чтобы узнать, на какой контакт он должен повлиять) и само значение. Кроме того, он должен читать и получать одновременно.

Есть идеи, как я мог это сделать? Помощь будет высоко ценится. Спасибо.

1 Ответ

1 голос
/ 25 января 2012

Вы можете использовать прерывание по таймеру для чтения значений и отправки их через последовательный порт и обработки команд из Scilab в loop() как обычно.

Я не уверен на 100%, могут ли быть проблемы из-за возможного прерывания в Serial.read(). В этом случае вам может потребоваться отключить прерывания при чтении запроса (проверьте с помощью Serial.available(), есть ли что-то для чтения).

...