我在 Arduino 中制作了这个小型实验程序,以查看函数lowByte()和highByte()是如何工作的。当传递一个值时,它们究竟应该返回什么?在串行监视器中输入字符“9”时,它会打印以下内容:
9
0
218
255
这是怎么来的?此外,正在为所有输入的值打印最后两行。为什么会这样?
int i=12;
void setup()
{
Serial.begin(9600);
}
void loop()
{
if(Serial.available())
{
i = Serial.read() - '0'; // conversion of character to number. eg, '9' becomes 9.
Serial.print(lowByte(i)); // send the low byte
Serial.print(highByte(i)); // send the high byte
}
}