我有一个arduino nano。我想连接MX Cherry开关并检测是否按下了串行端口。我应该在arduino上使用哪些引脚,应该将哪些代码上传到板上?
我知道我必须给开关供电,所以必须有5v引脚和输入引脚。但是我是电子行业的新手,所以我没办法弄清楚。
//that's just basic code for sending a number every second via 13 pin
int i=0;
void setup() {
Serial.begin(57600);
pinMode(13, OUTPUT);
}
void loop() {
i = i + 1;
Serial.println(i);
delay(1000);
}
基本上,我需要一种方法,如果按下按钮,则发送“ 1”,如果没有,则发送“ 0”。
答案 0 :(得分:1)
也许我误解了你的问题。为什么不只读取按钮,如果按下则发送“ 1”,如果没有则发送“ 0”?
void loop(){
int buttonState = digitalRead(buttonPin);
// Assumes active low button
if (buttonState == LOW){
Serial.print('1');
}
else {
Serial.print('0');
}
delay(500);
}
当然,您可能希望为此添加某种定时,以使其不会每秒发送数千个0和1。我添加了一个延迟,但这可能不是您拥有的应用程序的最佳答案(并选择不共享)。我还假定您的按钮在上拉状态下处于活动低电平状态,因为您也没有共享该按钮。