arduino与801s振动传感器读取振动频率

    xiaoxiao2025-05-02  11

    801s振动传感器 引脚定义如下图: 传感器特点: 1、具有信号输出指示灯; 2、双路信号输出,TTL 检测电平输出和模拟信号输出; 3、TTL 电平信号输出有效信号为高电平,可接单片机 IO 口; 4、灵敏度可调; 5、振动检测输出; 6、电路板输出 Dout 标识为开关量,可直接接单片机 IO 口, 当有振动时则指示灯灭,输出为高电平,无振动状态输出为 低电平,指示灯亮;电路板标识为 Aout 为模拟输出,可以直 接 AD 输入口,输出低电压范围为 0-5V; 7、可用于振动检测场合。 程序一 实验目的:只要有振动就点亮小灯泡

    int LED =13; int SensorINPUT =3 ; //引脚3与传感器DO口连 int state = 0; void setup() { pinMode(LED, OUTPUT); pinMode(SensorINPUT, INPUT); attachInterrupt(1, blink, CHANGE);// 1:数字引脚3,blink:中断程序,CHANGE:引脚3电平变化触发中断 void loop() { if(state!=0) { state = 0; digitalWrite(LED,HIGH); delay(100); } else digitalWrite(LED,LOW); } void blink() //中断程序 { state++; } 程序二 实验目的:读取振动频率 int sensorPin = A0;//引脚A0与振动传感器AO口连 int sensorValue = 0; void setup() { Serial.begin(115200); } void loop() { sensorValue = analogRead(sensorPin); Serial.println(sensorValue); } 程序三 每碰一次传感器产生的振动数,接DO口 int sensorPin = 3; int sensorValue = 0; unsigned char state=0; long a=0; void setup() { pinMode(sensorPin, INPUT); attachInterrupt(1,blink,FALLING); Serial.begin(115200); }

    void loop() { if(state!=0) { state=0; a++; } } void blink()//Interrupts function { state++; Serial.println(a); }

    最新回复(0)