C++でタクトスイッチ読み込み
タクトスイッチのプラス側を18番につないで押したときにLEDをつけます
また、押した回数を表示します
/*
* g++ taktCount.cpp -o taktCount -lwiringPi
* ./taktCount
*/
#include <iostream>
#include <wiringPi.h>
using namespace std;
int main() {
int PNO = 18;
int LED = 21;
int checkData = 0;
int inputData = 0;
int count = 0;
if(wiringPiSetupGpio()<0) {
cout << "wiring error\n";
return 1;
}
pinMode(PNO, INPUT);
pinMode(LED, OUTPUT);
pullUpDnControl(PNO,PUD_DOWN);
digitalWrite(LED,LOW);
while(true) {
inputData = digitalRead(PNO);
delay(120);
if(inputData==1 && checkData==0) {
inputData = 0;
count++;
cout << count << endl;
digitalWrite(LED,HIGH);
while(1) {
checkData = digitalRead(PNO);
delay(120);
if(checkData==0) break;
}
digitalWrite(LED,LOW);
}
}
return 0;
}
押されたら、ボタンを離すまでカウントをしません。