使Arduino成为计算器
我试图弄明白如何让arduino接受用户的方程式,并用给定的输入给出答案。例如,我希望arduino接受用户输入的“2*x”。然后,我会问你想要什么“x”。对于x=2,我会说“2”,而arduino应该说出“4”作为答案。这些函数可以有多种形式,包括sin、cos和指数函数 这是到目前为止我的代码。我在设置如何读取整个字符串时遇到问题。然后,我的下一个问题是将该字符串转换为arduino可以识别的函数 谢谢你能提供的任何帮助使Arduino成为计算器,arduino,Arduino,我试图弄明白如何让arduino接受用户的方程式,并用给定的输入给出答案。例如,我希望arduino接受用户输入的“2*x”。然后,我会问你想要什么“x”。对于x=2,我会说“2”,而arduino应该说出“4”作为答案。这些函数可以有多种形式,包括sin、cos和指数函数 这是到目前为止我的代码。我在设置如何读取整个字符串时遇到问题。然后,我的下一个问题是将该字符串转换为arduino可以识别的函数 谢谢你能提供的任何帮助 void setup() { Serial.begin(9
void setup() {
Serial.begin(9600);
}
char p = ' ';
int junk = 0;
void loop() {
int junk = 0;
Serial.println(F("Gimme a function"));
while (Serial.available() == 0); { // Wait here until input buffer has a character
p = Serial.read();
while (Serial.available() > 0) { // .parseFloat() can leave non-numeric characters
junk = Serial.read() ; // clear the keyboard buffer
}
}
Serial.println(p);
}
您需要编写一些字符串拆分代码、一些字符数组解析或类似的代码。你发布的内容只会填满一个缓冲区;实际上什么都不做。查看右侧“相关”栏中存在的问题;具体检查有关字符串拆分、字符串比较等问题。有很多示例代码可用。感谢您的指导!不客气。下面是一个简单的字符串读取例程:下面是一些关于匹配字符串的内容:祝您的项目好运:)我了解如何读取字符串。我似乎不知道如何实际实现字符串,以便Arduino可以将其转换为函数。它与匹配字符串有什么关系?我不知道你到底在做什么,但我想你必须在用户输入中查找某些字符;e、 g.您如何确定用户是否需要
-
或+
操作员?如何找到括号?这就是我考虑字符串匹配的原因。顺便说一句,arduino land中有两种类型的字符串:1-古典C风格的char
数组和2-一种称为String
的“现代”类型,它在内部使用char数组,但附带附加功能(和开销)