加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入
  • 正文
    • 一、前言
    • 二、硬件连接
    • 三、编写代码并运行
  • 推荐器件
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

树莓派从零开始快速入门第7讲——外部中断

07/07 15:25
1417
阅读需 4 分钟
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

一、前言

前面两节介绍了LED灯和按键输入,那么这一讲就基于按键学习一下外部中断,目标是通过按键控制LED开灯和关灯。

二、硬件连接

连接好按键和LED灯,不懂的同学可以先看下前两节的内容,硬件原理就不多做介绍了,树莓派单片机有所区别,对于树莓派编程来说,我们更多的是做上层的应用,下层驱动的实现不会花太多的时间去研究。

三、编写代码并运行

示例代码如下:

#!/usr/bin/python                             
#-*- coding:utf-8 -*-               
import RPi.GPIO as GPIO                #导入RPi.GPIO库
import time                            #导入time库   

LED = 26                               #LED引脚
KEY = 20                               #按键引脚号

GPIO.setwarnings(False)                #不加这句会有警告,因为该引脚已经被设置成了非默认值(也可以不加,不影响正常使用)
GPIO.setmode(GPIO.BCM)                 #使用BCM编码的引脚号
GPIO.setup(LED,GPIO.OUT)               #配置LED引脚模式
GPIO.setup(KEY,GPIO.IN,GPIO.PUD_UP)    #设置KEY引脚模式

global led_status                      #记录LED电平状态(全局变量)
led_status = 0                         

def KEYInterrupt(KEY):                 #外部中断服务函数
    global led_status
    if led_status :
        GPIO.output(LED,GPIO.LOW)      #关灯
        print("LED OFF")
        led_status = 0  
    else :
        GPIO.output(LED,GPIO.HIGH)     #开灯
        print("LED ON")
        led_status = 1 

GPIO.add_event_detect(KEY,GPIO.FALLING,KEYInterrupt,200) #KEY:按键引脚号,GPIO.FALLING:下降沿模式,KEYInterrupt:中断服务函数,200:消抖时间(ms)

while True:
    time.sleep(1)

运行结果:

按键按下,LED点亮,打印“LED ON”。再按一次,LED熄灭,打印“LED OFF”。

在这里插入图片描述

四、结束语

这一讲结合了LED和KEY介绍了树莓派外部中断的使用,功能比较简单,但是很实用。好了,这一讲的内容就这么多了,想了解更多树莓派的知识可以关注我,后续我会继续更新更多的教程。

推荐器件

更多器件
器件型号 数量 器件厂商 器件描述 数据手册 ECAD模型 风险等级 参考价格 更多信息
ABLS2-4.000MHZ-D4Y-T 1 Abracon Corporation CRYSTAL 4.0000MHZ 18PF SMD

ECAD模型

下载ECAD模型
$0.26 查看
IL420-X016 1 Vishay Intertechnologies Triac Output Optocoupler, 1-Element, 5300V Isolation, 0.400 INCH, ROHS COMPLIANT, PLASTIC, DIP-6
$2.85 查看
MX25L3233FM2I-08G 1 Macronix International Co Ltd Flash, 8MX4, PDSO8, SOP-8
$0.82 查看

相关推荐

电子产业图谱