| **银杏科技有限公司旗下技术文档发布平台** |||| |技术支持电话|**0379-69926675-801**||| |技术支持邮件|Gingko@vip.163.com||| ^ 版本 ^ 日期 ^ 作者 ^ 修改内容 ^ | V1.0 | 2020-06-15 | gingko | 初次建立 | ===== 例程四:【micropython】EXTI外部中断 ===== ==== 一、实验目的 ==== 使用micropython设置iCore3的GPIO外部中断。 ==== 二、实验设备及平台 ==== - iCore3双核心板[[https://item.taobao.com/item.htm?id=524229438677|点击购买]] - Micro USB线 - 电脑 ==== 三、实验原理 ==== 本次设置GPIO(PH15)为外部中断IO口,按键的一端与STM32的GPIO(PH15)相连,另一端接地,当按键按下时,PH15被短接到GND,呈低电平。示意图如下图所示: {{ :icore3:icore3_micropython_3_1.png?direct&600 |}} ==== 四、实验步骤 ==== - 用数据线将iCore3的USB-OTG口与电脑相连; - 打开PYBFLASH磁盘,将代码包中的main.py文件替换到PYBFLASH的main.py; - 弹出磁盘,将iCore3重新上电,代码运行; ==== 五、实验现象 ==== iCore3双核心板上ARM-KEY按下一次,蓝灯状态翻转一次(亮灭状态变化)。 ==== 六、实验程序 ==== # -*- coding: utf-8-*- # main.py -- put your code here! from pyb import Pin #导入引脚 from pyb import ExtInt #导入中断 #外部中断服务函数 def ExtCallback(): pyb.LED(3).toggle() #蓝色LED灯状态翻转 #创建引脚PH15外部中断 ext = ExtInt(Pin('H15'), ExtInt.IRQ_FALLING, Pin.PULL_UP, lambda e:ExtCallback() ) #定义按键回调