wiringpi_btn_led.c 747 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. #include <wiringPi.h>
  2. #include <stdio.h>
  3. #define LED_PIN 26
  4. #define BTN_PIN 27
  5. #define DELY_MS 100
  6. int main(void)
  7. {
  8. wiringPiSetup();
  9. pinMode(LED_PIN, OUTPUT);
  10. pinMode(BTN_PIN, INPUT);
  11. digitalWrite(LED_PIN, HIGH);
  12. pullUpDnControl(BTN_PIN, PUD_UP);
  13. while(1)
  14. {
  15. //检测按钮是否被按下
  16. if(digitalRead(BTN_PIN) == 0)
  17. {
  18. //led GPIO引脚置低电平,灯亮
  19. digitalWrite(LED_PIN, LOW);
  20. printf("O\n");
  21. }
  22. else
  23. {
  24. //led GPIO引脚置高电平,灯灭
  25. digitalWrite(LED_PIN, HIGH);
  26. printf("X\n");
  27. }
  28. //增加延时函数,减少cpu消耗
  29. delay(DELY_MS);
  30. }
  31. return 0;
  32. }