因此,我制备草图采用一个两位数字从USB端口,检查该号码匹配引脚的状态,然后切换在销/关。

采取偷看在源

出于某种原因,当我通过Arduino的串行监控发送13,我得到这个消息发回: Pin number is greater than 14, details: 490 51 541

含义IDE正在发送奇异数,或Arduino的正在处理他们错了。做任何你看到一个问题,为什么这是不工作的权利?

有帮助吗?

解决方案

如果您输入的 ASCII 字符 “1”,然后 “3”,那么Serial.read()将返回49和51这是因为在 ASCII 字符表的 “1” 和“3”用数字49和51分别表示。如果你想找到用户键入了你必须把它从转换为数字的 ASCII

我不是很熟悉Arduino语言,但假设它类似于C,你可以找到需要修改的此处

我重写以另一种方式的程序,其更清晰来阅读

在源所使用的“0”仅仅是另一种说法“用于表示字符的数字‘0’”,所以是48.在类似C语言'0' == 48'1' == 49,等等等等。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top