0

我正在使用JavaScriptpigpio模块开发我的 Raspberry pi-4,我发现中断有问题,

  1. 如果你开始中断(通过按钮 exp )它将启动一个代码 ,但是如果新的中断出现,直到第一个中断的代码结束之前什么都不会发生(为什么中断对他自己的调用代码没有优先级!?
  2. 如果主代码中存在while循环(无限一个:如while(1))中断将不再起作用!

据我所知,IRQ中断优先于代码中的每一件事。但这不会发生!

const Gpio = require('pigpio').Gpio;
var i =0 ;

const button = new Gpio(15, {
  mode: Gpio.INPUT,
  pullUpDown: Gpio.PUD_DOWN,
  edge: Gpio.FALLING_EDGE});

button.on('interrupt', (level) => {
  console.log(i+=1)
  rpio.sleep(5)});

// while(1){}

4

0 回答 0