当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Processing GPIO.noInterrupts()用法及代码示例

Processing, 类GPIO中的noInterrupts()用法介绍。

用法

  • .noInterrupts()

返回

  • void

说明

防止发生中断



您可以同时使用 noInterrupts()interrupts() 以确保在您的草图执行特定任务时不会发生中断。


br/> 在执行与引脚中断相关的方法时,会自动阻止来自同一引脚的中断发生。但是,来自其他引脚的中断仍然可能发生。如果您还想阻止这些,请将 noInterrupts() 放在回调函数的开头,将 interrupts() 放在其末尾。

例子

import processing.io.*;
color bgcolor = 0;

void setup() {
  GPIO.pinMode(4, GPIO.INPUT);
  GPIO.pinMode(5, GPIO.INPUT);
  GPIO.attachInterrupt(4, this, "pinEvent", GPIO.RISING);
  GPIO.attachInterrupt(5, this, "pinEvent", GPIO.RISING);
}

void draw() {
  background(bgcolor);
}

void pinEvent(int pin) {
  GPIO.noInterrupts();
  // no other interrupt will disturb us
  println("Received interrupt on pin" + pin);
  if (bgcolor == 0) {
    bgcolor = color(255);
  } else {
    bgcolor = color(0);
  }
  GPIO.interrupts();
}

相关用法


注:本文由纯净天空筛选整理自processing.org大神的英文原创作品 GPIO.noInterrupts()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。