Arduino代码同时写入和发送

时间:2012-01-25 01:09:49

标签: serial-port arduino

我正在为Scilab(类似于MATLAB的软件)模拟环境工作一个图形块。应该有称为AI(模拟输入),AO,DO的块。此外,将有两个程序:1)在Scilab一侧,一个发送和接收数据; 2)在Arduino一侧,发送和接收数据。

现在我正在研究Arduino端代码。代码应该从6个输入读取电压值,并通过串行将它们发送到Scilab,并在从Scilab获取数据时同时将1/0写入其输出。根据我的理解,发送/接收的数据应该包含有关引脚号的信息(知道它应该影响什么引脚)和值本身。此外,它应该同时读取和接收。

我有什么想法可以做到吗?非常感谢帮助。谢谢。

1 个答案:

答案 0 :(得分:1)

您可以使用timer interrupt读取值并通过串行发送它们并照常处理来自loop()中Scilab的命令。

我不能100%确定在Serial.read()期间是否可能出现问题。在这种情况下,您可能必须在读取请求时禁用中断(在Serial.available()之前检查是否有要阅读的内容)。