使用arduino语言的Printf和Scanf

时间:2013-08-16 15:37:40

标签: arduino printf scanf

我想在arduino语言中使用printf和scanf。

我以这种方式正确运行printf: http://playground.arduino.cc/Main/Printf

但我不能使用scanf。我该如何使用它?

1 个答案:

答案 0 :(得分:1)

你需要采取两步的方法。

首先,既然您正在为Arduino编码,而scanf处理的数据将通过串口进行,那么首先编写例程以读取您的数据的串行端口需要。你会发现这不是一个简单的任务,你将最终得到例程来读取整数,字母等的ASCII字符。

在您拥有读取数据的串行端口的代码之后,将其概括为可以使用可变参数列表调用的方法,这些参数列表将被分析,并且您在第一步中编写的例程将被适当调用。

简而言之,Arduino没有scanf等价物,因为它必须处理串行I / O.

但是,您可以通过将串行数据读入缓冲区然后使用sscanf(扫描字符串上的字符串)来缩短上述工作量,但是您还需要编写执行该操作的包装器。 serial i / o并使用您自己的包装器中的变量参数调用sscanf,类似于您的链接正在执行的操作。

相关问题