WiFi-ESP8266入门开发(十二)-使用GPIO中断
2018-02-03 20:11
2421 查看
介绍
中断是在连续性流程中随机发生的事件。这就像你忙于某些工作时的一个电话一样,根据电话的优先顺序决定是否参加或忽略它。基于NodeMCU的ESP8266在其GPIO引脚上具有中断功能。该功能在NodeMCU Dev Kit的D0-D8引脚上可用。
GPIO引脚中断通过Arduino中断函数支持,例如attachInterrupt,detachInterrupt。
中断可以连接到除D0 / GPIO16引脚外的任何GPIO引脚。支持标准的Arduino中断类型,即CHANGE,RISING,FALLING。
针对NodeMCU的Arduino中断功能
我们来看看Arduino IDE中用于为NodeMCU套件设置中断的函数。attachInterrupt()
该功能用于在指定的引脚上附加中断。
函数:
attachInterrupt(pin, ISR(callback function), interrupt type/mode);
参数:
pin:要设置中断的引脚号。
ISR (callback function):中断发生时要调用的ISR; 这个函数不带任何参数,不返回任何内容。
Interrupt type/mode:它定义当中断应该被触发。
CHANGE:用于在引脚值改变时触发中断。
RISING:用于在引脚从低电平变为高电平时触发中断。
FALLING:用于在引脚从高电平变为低电平时触发中断。
返回: null
detachInterrupt()
该功能用于禁止指定GPIO引脚上的中断。
函数:
detachInterrupt(pin)
参数:
pin:要禁用的中断的GPIO引脚。
返回: null
例
我们来写一个Arduino程序,在NodeMCU的第2个GPIO引脚上设置上升沿中断。这里我们在第二个GPIO引脚上连接一个开关来产生上升沿中断。另外,我们将打印在串行监视器窗口上发生中断的时间(以毫秒为单位)。
Arduino程序-GPIO中断
uint8_t GPIO_Pin = D2; void setup() { Serial.begin(9600); attachInterrupt(digitalPinToInterrupt(GPIO_Pin), IntCallback, RISING); } void loop() { } void IntCallback(){ Serial.print("Stamp(ms): "); Serial.println(millis()); }
输出窗口
支持文件
源代码
Arduino草图NodeMCU GPIO中断 下载
232
附件
ESP8266数据手册Datasheet 下载
196
相关文章推荐
- WiFi-ESP8266入门开发(九)-使用GPIO
- WiFi-ESP8266入门开发(十三)-使用SPI
- WiFi-ESP8266入门开发(八)-开始使用NodeMCU
- WiFi-ESP8266入门开发(十)-使用ADC
- WiFi-ESP8266入门开发(十一)-使用PWM
- 【SDK驱动开发3】使用PS侧gpio作为中断输入
- 【Cocos2d游戏开发之十二】浅析使用C++/C/OC进行iOS游戏混编出现“failed with exit”问题与小结;
- 【Cocos2d游戏开发之十二】浅析使用C++/C/OC进行iOS游戏混编出现“failed with exit”问题与小结;
- Android开发之--(WIFI,蓝牙,电池,背光,SD卡,摄像头,按键,MIC,重力感应等)功能的简单使用
- 【iOS-Cocos2d游戏开发之十二】浅析使用C++/C/OC进行iOS游戏混编出现“failed with exit”问题与小结;
- 【iphone应用开发】iPhone应用开发之十二:使用ShareKit一键分享到Facebook,Twitter等平台
- 【iOS-Cocos2d游戏开发之十二】浅析使用C++/C/OC进行iOS游戏混编出现“failed with exit”问题与小结;
- STM32之中断与事件---一个使用GPIO作为外部中断的示例
- 图解使用Win8Api进行Metro风格的程序开发十二----上下文菜单
- Android开发之--(WIFI,蓝牙,电池,背光,SD卡,摄像头,按键,MIC,重力感应等)功能的简单使用
- FS_NXPM4的GPIO中断开发及分析
- android游戏开发框架libgdx的使用(十二)—TiledMap地图的使用
- 【转载】WINCE驱动开发之中断的使用
- 使用delphi 开发多层应用(十二)使用kbmMW webserver 返回JSON
- 使用 C# 开发智能手机软件:推箱子(十二)