原理图:

接线图:

实体接线图:

代码:

#include <wiringPi.h>
#include <stdio.h>#define BtnPin      0
#define Gpin        1
#define Rpin        2void LED(char* color)
{pinMode(Gpin, OUTPUT);pinMode(Rpin, OUTPUT);if (color == "RED"){digitalWrite(Rpin, HIGH);digitalWrite(Gpin, LOW);}else if (color == "GREEN"){digitalWrite(Rpin, LOW);digitalWrite(Gpin, HIGH);}elseprintf("LED Error");
}int main(void)
{if(wiringPiSetup() == -1){ //when initialize wiring failed,print messageto screenprintf("setup wiringPi failed !");return 1; }pinMode(BtnPin, INPUT);LED("GREEN");while(1){if(0 == digitalRead(BtnPin)){delay(10);if(0 == digitalRead(BtnPin)){LED("RED"); printf("Button is pressed\n");  }}else if(1 == digitalRead(BtnPin)){delay(10);if(1 == digitalRead(BtnPin)){while(!digitalRead(BtnPin));LED("GREEN");}}}return 0;
}

编译运行:

gcc button.c -o button -lwiringPi -lpthread
./button

树梅派学习 8. 轻触按键试验相关推荐

  1. 树梅派学习 21. 串口连接

    树梅派学习 21. 串口连接 接线: 其中6.8.10 是串口的引脚. 1. 执行命令 sudo apt-get update sudo apt-get upgrade sudo reboot 2. ...

  2. 玩树梅派学linux-shell编程

    系列文章目录 玩树梅派学linux-shell编程 文章目录 系列文章目录 前言 一.shell是什么? 二.shell脚本有哪些作用 三.开始我们的shell之旅 1.hello shell 2.$ ...

  3. 树梅派配置ad-hoc网络

    树梅派配置ad-hoc网络 更新与安装 1.更改源/etc/apt/source.list: http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian ...

  4. 树梅派输入法黑块问题

    树梅派输入法黑块问题 三条命令解决: sudo apt remove fcitx-module-kimpanel sudo apt-get remove fcitx-ui-qimpanel reboo ...

  5. 树梅派搭建MPI集群

    现有20个树梅派安装了Ubuntu20.04系统(arm64),但是连上了实验室的网线后,在同一网段下只可以搜得到16个,并成功登录.问题来了:那4个该怎么找到? 可以把这20个逐个拆下,每拆一个,扫 ...

  6. 树梅派烧录Lineage OS

    树梅派烧录android系统 LineageOS 准备 软件下载 镜像烧录软件 rpi-imager 邮箱客户端 镜像下载 开始烧录 初始化 使用空间 网络链接 温馨提示 网站浏览 软件安装 VNC ...

  7. 开机上报树梅派2的IP地址到邮箱

    一.安装配置mutt和msmtp 1.安装 sudo apt-get install mutt msmtp 2.配置msmtp,在你用户的根目录下创建文件 .msmtprc,内容如下: account ...

  8. 树梅派DNS缓存服务器建设

    2019独角兽企业重金招聘Python工程师标准>>> 树梅派DNS缓存服务器建设 Hradware: 树梅派3B+ OS: Debian Gnu/Linux 9.4 安装软件: a ...

  9. 学习自由模态试验的有限元仿真计算方法

    作者 | 张老师,仿真秀专栏作者 模态试验包括约束模态试验和自由模态试验,而自由模态试验是模态测试中较为常见的一种工况.实际进行自由模态测试时,一般采用的是软支撑或吊带悬挂方式.这种测试方式,只能接近 ...

最新文章

  1. MyEclipse10整合Axis2插件
  2. 阿里飞猪搜索技术的应用与创新
  3. SAP BD87将IDoc状态修改为68 ?
  4. python pytest和allure环境_【转载】Python—Pytest+Allure定制报告
  5. 【Qt】QSharedMemory类详解
  6. 迅为I.MX6Q开发板配不同分辨率不同尺寸液晶屏幕
  7. [渝粤教育] 西南科技大学 建筑制图 在线考试复习资料(1)
  8. VC++的windows服务
  9. php 判断分辨率做判断,PHP判断是否是成人照片或者裸照:基于皮肤像素点来检测图片裸照的类文件...
  10. 由ContactsProvider的升级引发的OTA首次开机卡白米问题分析
  11. 攻防世界misc——flag_universe
  12. 在 WindowsXP运行UCDOS (天空之翔)
  13. 双光耦开关电源电路图_简单的开关电源电路图大全(六款简单的开关电源电路设计原理图详解)...
  14. 微信公众号登陆、模板发送、access_token获取 PHP代码
  15. 编程向未来---启程
  16. 6.MySQL列Cardinality(基数)
  17. Spring - 事件监听机制 源码解析
  18. python查找文字在图片中的位置_如何快速提取出图片中文字,强烈推荐这款免费软件!...
  19. 互联网舆情监测公司监测哪些内容,TOOM北京舆情监测公司
  20. 第三讲使用VPB切割和加载

热门文章

  1. 优秀开源平台,前后端分离快速开发平台,一站式多端开发(PC+APP)
  2. 程序员与年龄:四十岁普通开发、三十五岁首席架构、三十岁基层Leader
  3. 区块链赋能律所非诉业务研究报告 | TokenInsight金杜律师事务所
  4. latex文章投稿小tips
  5. linux怎么用ping通测试连接,如何使用ping命令进行连通性测试
  6. 苹果手机电视投屏怎么设置_OPPO电视投屏怎么设置 OPPO电视投屏教程
  7. Angular 数据绑定
  8. 在Carla中创建车辆及传感器
  9. 获取a标签的src属性
  10. 集中注意力的方法(转)