โปรเจค Arduino เปิดปิดไฟด้วยเสียง (พร้อมโค้ดตัวอย่าง)
ประกอบด้วย- Arduino Uno R3 http://bit.ly/3bN1WWU
- 1 Channel Relay (10A) with Optocoupler Module http://bit.ly/3bMMwBI
- Sound sensor http://bit.ly/37D053i
- สายไฟmale to female 20cm http://bit.ly/37Eytec
- หลอดไฟ http://bit.ly/2HvpZM2
- ขั้วหลอดไฟ http://bit.ly/2HvpZM2
- ปลั๊กตัวผู้ http://bit.ly/2HvpZM2
- สายไฟ http://bit.ly/2HvpZM2
- Adapter 9V 1A http://bit.ly/2HzGsPb
Code ตัวอย่าง
| #define signalToRelayPin 8 #define sensorPin 7 | |
| int lastSoundValue; | |
| int soundValue; | |
| long lastNoiseTime = 0; | |
| long currentNoiseTime = 0; | |
| long lastLightChange = 0; | |
| int relayStatus = HIGH; | |
| void setup() { | |
| pinMode(sensorPin, INPUT); | |
| pinMode(signalToRelayPin, OUTPUT); | |
| digitalWrite(signalToRelayPin, HIGH); | |
| } | |
| void loop() { | |
| soundValue = digitalRead(sensorPin); | |
| currentNoiseTime = millis(); | |
| if (soundValue == 1) { | |
| if ( | |
| (currentNoiseTime > lastNoiseTime + 200)&& | |
| (lastSoundValue == 0)&& | |
| (currentNoiseTime < lastNoiseTime + 800)&& | |
| (currentNoiseTime > lastLightChange + 1000) | |
| ) { | |
| relayStatus = !relayStatus; | |
| digitalWrite(signalToRelayPin, relayStatus); | |
| lastLightChange = currentNoiseTime; | |
| } | |
| lastNoiseTime = currentNoiseTime; | |
| } | |
| lastSoundValue = soundValue; | |
| } |
บทความจาก arduinothai.com

ความคิดเห็นนี้ถูกผู้เขียนลบ
ตอบลบอันนี้คืออธิบายโค๊ดไม่ได้ใช่มั้ยคะ เห็นลบความคิดเห็นออก
ตอบลบ