reed switch 簧片开关,适用于检测磁场的传感器。在透明管内,有两个弹性的电镀簧片,填充惰性气体。两个簧片在没有强磁的环境下是分开的,当感应到强磁场时,两个簧片会连接在一起,从而导通相关电路。移除磁场,断开电路。文章内容包括模块原理图,设备接线图,相关代码。
模块和前面的倾斜,震动模块一样,只是开关部分换成簧片开关。
模块接线也是一样的。用磁场控制变色灯。
短视频看看效果:
代码同样和倾斜,震动开关一样。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
| #include <wiringPi.h> #include <stdio.h>
#define ReedPin0 #define Gpin1 #define Rpin2
void LED(char* color) { pinMode(Gpin, OUTPUT); pinMode(Rpin, OUTPUT); if (color == "RED") { digitalWrite(Rpin, HIGH); digitalWrite(Gpin, LOW); } else if (color == "GREEN") { digitalWrite(Rpin, LOW); digitalWrite(Gpin, HIGH); } else printf("LED Error"); }
int main(void) { if(wiringPiSetup() == -1){ printf("setup wiringPi failed !"); return 1; }
pinMode(ReedPin, INPUT); LED("GREEN");
while(1){ if(0 == digitalRead(ReedPin)){ delay(10); if(0 == digitalRead(ReedPin)){ LED("RED"); printf("Detected Magnetic Material!\n"); } } else if(1 == digitalRead(ReedPin)){ delay(10); if(1 == digitalRead(ReedPin)){ while(!digitalRead(ReedPin)); LED("GREEN"); } } } return 0; }
|
树莓派3更多模块请点击链接:
从入门到放弃的学习RASPBERRYPI