![中职扩展资源包资料:树莓派系列教程9:按键_第1页](http://file3.renrendoc.com/fileroot_temp3/2022-2/25/72986a82-17be-4a39-abaf-ac29e91ccd7d/72986a82-17be-4a39-abaf-ac29e91ccd7d1.gif)
![中职扩展资源包资料:树莓派系列教程9:按键_第2页](http://file3.renrendoc.com/fileroot_temp3/2022-2/25/72986a82-17be-4a39-abaf-ac29e91ccd7d/72986a82-17be-4a39-abaf-ac29e91ccd7d2.gif)
![中职扩展资源包资料:树莓派系列教程9:按键_第3页](http://file3.renrendoc.com/fileroot_temp3/2022-2/25/72986a82-17be-4a39-abaf-ac29e91ccd7d/72986a82-17be-4a39-abaf-ac29e91ccd7d3.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、上两章我们讲解了在树莓派上如何点亮一个LED灯,这一章我们讲解一下按键以及事件中断。一、bcm283501 #in elude <bcm2835.h>02 #i nclude <stdio.h>0304 #defi ne KEY 2005 int main (i nt argc, char *argv)06 07if (!bcm2835_i nit()return 1;08 bcm2835_gpio_fsel(KEY, BCM2835_GPIO_FSEL_INPT);09 bcm2835_gpio_set_pud(KEY, BCM2835_GPIO_PUD_UP);10
2、 prin tf("Key Test Program!n");11 while (1)12 13 if(bcm2835_gpio_lev(KEY) = 0)14 15 printf ("KEY PRESS'n");16 while(bcm2835_gpio_lev(KEY) = 0)17 bcm2835_delay(100);18 19 bcm2835_delay(100);20 21 bcm2835_close();22 return 0;23 </stdio.h>v/bcm2835.h>编译并执行,按下按键会看到窗口显示”K
3、EY PRSStS+C,结陳程序。1 gcc -Wall key.c key Tbcm28353 sudo ./key注:(1 ) bcm2835_gpio_fsel(KEY, BCM2835_GPIO_FSEL_INPT);(2) bcm2835_gpio_set_pud(KEY, BCM2835_GPIO_PUD_UP);设置管脚为输入模式设置为上拉模式(3) bcm2835_gpio_lev(KEY);读取管脚状态二、wiringPi01 #in clude <stdio.h>02 #in clude<wiri ngpi.h>0304 char KEY = 29;
4、0506 int mai n()if (wiri ngPiSetup() < O)return 1 ; pinM ode (KEY,INPUT); pullUpD nCon trol(KEY, PUD_UP); prin tf("Key Test Program!n"); while(1)08091011121314151617181920if (digitalRead(KEY) = 0)printf ("KEY PRESS'n");while(digitalRead(KEY) = 0) delay(100); delay(100);21
5、22 </wiri ngpi.h></stdio.h>编译并执行,按下按键会看到窗口显示”KEY PRESS+C,纟按束程序。1 gcc -Wall key.c key -viringPi3 sudo ./key注:(1)pinMode (KEY,INPUT); 设置管脚为输入模式(2) pullUpDnControl(KEY, PUD_UP);设置为上拉模式(3) digitalRead(KEY);读取管脚状态通过中断的方式编程01 #i nclude <stdio.h>02 #in elude <wiri ngpi.h>0304 #defi
6、ne button 2905 char flag = 0;06 void myl nterrupt()07 08 flag +;09 1011 int mai n()12 13 if(wiri ngPiSetup() < 0)return 1;14 if(wiri ngPilSR(butt on ,INT_EDGE_FALLING,&myln terrupt) < 0)15 16 prin tf("U nable to setup ISR n");17 18 prin tf(" In terrupt test program' n&qu
7、ot;);19 while20 21 if(flag)22 0);23 while(digitalRead(butto n)=24 prin tf("button pressn");25 flag = 0;26 27 28 29 </wiri ngpi.h></stdio.h>编译并执行1 gcc -Wall Interrupt.c Interrupt -IwirngPi3 sudo ./In terrupt;设置中断下降沿触发,myInterrupt注: ( 1 ) wiringPilSR(button,INT_EDGE_FALLING,&
8、mylnterrupt)为中断处理函数。三、python01 #!/usr/bi n/pyth on02 # -*- codi ng:utf-8 -*-03 import RPi.GPIO as GPIO04 import time0506 KEY = 260708 GPIO.setmode(GPIO.BCM)09 GPIO.setup(KEY,GPION,GPIO.PUD_UP)10 while True:11 time.sleep(0.05)12 if GPIO.i nput(KEY) = 0:13 prin t("KEY PRESS")14 while GPIO.i
9、nput(KEY) = 0:15 time.sleep(0.01)执行程序,按下按键会看到窗口显示”KEY PRECSI+” ,按束程序。1 sudo pytho n key.py注:(1 ) GPIO.setup(KEY,GPIO.IN,GPIO.PUD_UP)设置管脚为上拉输入模式(2)GPIO.input(KEY )读取管脚值通过中断模式编程01 #!/usr/bi n/pyth on02 # -*- codi ng:utf-8 -*-03 import RPi.GPIO as GPIO04 import time0506 KEY = 260708 def MyI nterrupt(KE
10、Y):<spa n style="fo nt-size: 9pt; li ne-height:0925.2000007629395px;"></spa n>pri nt("KEY PRESS")1011 GPIO.setmode(GPIO.BCM)12 GPIO.setup(KEY,GPION,GPIO.PUD_UP)13 GPIO.add_eve nt_detect(KEY,GPIO.FALLING,Myl nterrupt,200)15 while True:<spa n style="fo nt-size: 9pt; li ne-height:1625.2000007629395px;"> </spa n>t
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 无锡江苏无锡市惠山区人民法院招聘编外人员3人笔试历年参考题库附带答案详解
- 2025至2031年中国铝制滑轮行业投资前景及策略咨询研究报告
- 2025至2031年中国蜂胶粉行业投资前景及策略咨询研究报告
- 2025至2031年中国移动通讯运维分析集中管理平台行业投资前景及策略咨询研究报告
- 2025至2031年中国巧克力涂层糖行业投资前景及策略咨询研究报告
- 2025至2031年中国多功能联合训练器行业投资前景及策略咨询研究报告
- 2025年发泡专用酚醛树脂项目可行性研究报告
- 2025至2031年中国2U电子节能灯行业投资前景及策略咨询研究报告
- 2025至2030年高效去污粉项目投资价值分析报告
- 2025至2030年中国锥密封焊接式管接头数据监测研究报告
- GB/T 16475-1996变形铝及铝合金状态代号
- GB 4706.20-2004家用和类似用途电器的安全滚筒式干衣机的特殊要求
- 无纸化会议系统解决方案
- 佛教空性与缘起课件
- 上海铁路局劳动安全“八防”考试题库(含答案)
- 《愿望的实现》教学设计
- 效率提升和品质改善方案
- 中山大学抬头信纸中山大学横式便笺纸推荐信模板a
- 义务教育学科作业设计与管理指南
- 《汽车发展史》PPT课件(PPT 75页)
- 常暗之厢(7规则-简体修正)
评论
0/150
提交评论