|
#include <SPI.h>
int ppmin=2;
unsigned time=0;
unsigned bfb=0;
unsigned data=0;
void setup()
{
Serial.begin(115200);
pinMode(2,INPUT);
attachInterrupt(ppmin, jiema, RISING);
}
void loop()
{
interrupts();
detachInterrupt(1);
}
void jiema()
{
unsigned char val=0;
time=pulseIn(2,HIGH);
bfb=time/1000*1024;
data=bfb/4;//256 8weijingdu
Serial.println(data,DEC);
val=val++;
time=0;
bfb=0;
data=0;
if(val>8)
{
detachInterrupt(0);
delay(400);
detachInterrupt(1);
}
}
我这个是利用上升沿来触发外部中断来解码PPM信号的并由串口发送的程序,有问题能帮忙看看嘛 |
|