实验说明:调用开发板DigitalReadSerial的程式码(用按钮实现计数功能,Debounce实现按一次按钮只计数一次)
实验材料:Arduino开发板、USB数据线、arduino软件、面包板、杜邦线、低电阻、按钮传感器
电路连接: 按钮传感器: +接开发板5v,S接开发板7脚位,—接GND。
代码部分:
int pushButton = 7;//定义整型变量并赋值7
int beforeState=0; //定义整型变量并赋值0
int presstime=0; //定义整型变量并赋值0
void setup() { //初始化函数
Serial.begin(9600); //开始与电脑的连线窗口,定传输速率为9600pbs
pinMode(pushButton, INPUT);//将7脚位定为输入(即侦测器) }
void loop() {//循环函数
int buttonState = digitalRead(pushButton);//从7脚位侦测按钮状况(1 or 0 有按 或没按 ),把结果给buttonState
if(buttonState==1 and beforeState==0){ //如果按下按钮且beforeState=0时 presstime=presstime+1;//实现计数
Serial.println(“hello world!”); //打印出hello world!
Serial.println(buttonState);//让序列部输出状况 }
if(buttonState!=beforeState){ //实现按一次只计数一次 delay(20);//延时20ms } beforeState=buttonState; //把buttonState赋值给beforeState,获取按钮状态
delay(1000); // 延时 1s }