![Clap-on kapcsoló: 7 lépés (képekkel) Clap-on kapcsoló: 7 lépés (képekkel)](https://i.howwhatproduce.com/images/001/image-2858-18-j.webp)
Tartalomjegyzék:
2025 Szerző: John Day | [email protected]. Utoljára módosítva: 2025-01-23 14:47
![Image Image](https://i.howwhatproduce.com/images/001/image-2858-20-j.webp)
![](https://i.ytimg.com/vi/x4kvyEj_pTQ/hqdefault.jpg)
Egy rokonom egyszer megkérdezte, hogy tudok -e létrehozni egy kapcsolót, amely reagál a kezed tapsolására. Tehát megrendeltem néhány dolgot egy projekt létrehozásához, és úgy döntöttem, hogy készítek egy oktathatót, hogy mindenkinek legyen egy ilyen fantasztikus váltója.
A mikrovezérlő ennek a projektnek az agya. Egy hangérzékelő csatlakozik a mikrokontrollerhez, az érzékelő analóg adatokat küld, amikor hangot észlel. A mikrokontroller nagy hangkülönbségek észlelésére van programozva. Ha elég nagy különbséget észlel, ami tapsolást jelent, a mikrokontroller jelet küld a relének. A relé bekapcsol és a lámpa bekapcsol. Második tapsoláskor a fény ismét kialszik.
Kellékek
Fizikai dolgok:
- 1x ATmega328P Xplained Mini programozókábellel
- 1x 5V relé modul 1 csatornás (KY-019 vagy hasonló)
- 1x hangérzékelő modul (KY-038 vagy hasonló)
- 1x kenyeretábla
- 6x férfi-férfi áthidaló vezeték
- 1x fénycsatlakozó kábellel (vagy bármely más, bekapcsolni kívánt eszközzel)
- 1x villanykörte
- 1x ellenállás* (220 Ohm -ot használok)
- 1x LED*
Szoftver (letöltés):
- AtmelStudio 7.0 (https://www.microchip.com/mplab/avr-support/atmel-studio-7)
- Putty (www.putty.org)*
* Tesztelés céljából
1. lépés: Kapcsolatok
![A Program létrehozása A Program létrehozása](https://i.howwhatproduce.com/images/001/image-2858-21-j.webp)
Csatlakoztassa az összes vezetéket a képen látható módon.
2. lépés: A program létrehozása
![A Program létrehozása A Program létrehozása](https://i.howwhatproduce.com/images/001/image-2858-22-j.webp)
![A Program létrehozása A Program létrehozása](https://i.howwhatproduce.com/images/001/image-2858-23-j.webp)
Szeretek C -ben kódolni, így ez a projekt C -ben van írva.
Ha még nem töltötte le és nem telepítette a szükséges szoftvert, töltse le és telepítse most.
Most kövesse az alábbi lépéseket:
- Nyissa meg az AtmelStudio alkalmazást.
- Kattintson a "Fájl" -> "Új" -> "Projekt" elemre.
- Kattintson a "GCC C végrehajtható projekt" elemre. Adjon nevet és helyet a projektnek a tároláshoz. Kattintson az "OK" gombra.
- Keresse meg az ATmega328P -t. Kattintson az "ATmega328P" -> "OK" gombra.
- A főprogram megnyitásához kattintson a Solution Explorer -re a "main.c" mappában.
3. lépés: Kód hozzáadása
Törölje a main.c -ben már meglévő kódot. C
Másolja ki és illessze be a következő kódot a main.c -be
#define F_CPU 16000000
#include #include #include #include "usart.h" #define MINIMALVALUE 5 void InitADC (); uint16_t ReadADC (uint8_t ADCchannel); kettős val1, val2; int main (void) {// Inicializálja a USART USART_init (9600); USART_putstr ("#USART init / n"); // Az ADC inicializálása InitADC (); USART_putstr ("#ADC init / n"); // PC1 PORTC kimenet, a többi bemenet. DDRC = 0b00000010; // állítsa a kezdeti értékeket alacsony PORTC értékre. PORTC = 0b00000000; while (1) {// potenciométer értékének olvasása // érték olvasása és tárolása val1 -ben val1 = ReadADC (0); _ késleltetés_ms (1); // olvassa el a következő értéket en tárolja a val2 -ben val2 = ReadADC (0); char str [10]; // a ReadADC () visszaadja az értéket egész számokban. Ha hibakeresést szeretnénk végezni, vagy látni szeretnénk a gitt értékét, // az értéket karakterré kell alakítani, hogy az USART ki tudja nyomtatni. itoa (val1, str, 10); USART_putstr (str); USART_putstr ("\ n"); // ha a 2 értéknek van bizonyos különbsége. Hangot észlel, és portot vált. // A MINIMÁLIS ÉRTÉK megváltoztatható, növelésével kevésbé lesz érzékeny. A csökkentés érzékenyebbé teszi, ha (val1-val2> MINIMALVALUE || val2-val1> MINIMALVALUE) {PORTC ^= 0b00000010; // LIGHT ON UC _delay_ms (200); }}} void InitADC () {// Vref = AVcc ADMUX | = (1 << REFS0) kiválasztása; // állítsa az előhívót 128 -ra és engedélyezze az ADC ADCSRA | = (1 << ADPS2) | (1 << ADPS1) | (1 << ADPS0) | (1 << ADEN); } uint16_t ReadADC (uint8_t ADCchannel) {// ADC -csatorna kiválasztása biztonsági maszkkal ADMUX = (ADMUX & 0xF0) | (ADCchannel & 0x0F); // egyetlen konverziós mód ADCSRA | = (1 << ADSC); // várjon, amíg az ADC konverzió befejeződik, miközben (ADCSRA & (1 << ADSC)); vissza ADC; }
4. lépés: USART hozzáadása
![USART hozzáadása USART hozzáadása](https://i.howwhatproduce.com/images/001/image-2858-24-j.webp)
Az USART egy soros kommunikációs protokoll, amely használható a mikrovezérlőn. A mikrokontrolleren használom az érzékelő analóg adatainak megtekintéséhez.
A USART már helyesen van programozva, fejléc (.h) és forrás (.c) fájlt tartalmaz. Töltse le a 2 fájlt, és adja hozzá a programjához az AtmelStúdióban.
Kattintson a jobb gombbal a projekt nevére a Solution Explorerben. Kattintson a "Hozzáadás" -> "Meglévő elem …" elemre, és válassza ki a 2 letöltött fájlt.
5. lépés: A kód futtatása
![A kód futtatása A kód futtatása](https://i.howwhatproduce.com/images/001/image-2858-25-j.webp)
![A kód futtatása A kód futtatása](https://i.howwhatproduce.com/images/001/image-2858-26-j.webp)
Csatlakoztassa a mikrokontrollert a számítógéphez. Keresse meg számítógépén az "Eszközkezelő" elemet, és nyissa meg. Keresse meg a "Portok (COM és LPT)" lehetőséget, és ne feledje, hogy a mikrovezérlő COM-portja be van kapcsolva.
Nyissa meg a PuTTY-t, és kattintson a "Soros" -ra, írja be a mikrovezérlő COM-portját, és kattintson a "Megnyitás" gombra. Megjelenik egy terminál, hagyja most.
Menjen vissza az AtmelStúdióba, és válassza ki a megfelelő eszközt a mikrokontroller programozásához.
- Kattintson a kalapács eszközre.
- Válassza ki az "mEDBG*ATML" hibakeresőt/programozót.
- Válassza a "debugWIRE" felületet.
- Kattintson az "indítás hibakeresés nélkül" gombra.
A program építeni és írni fog.
Ha a program megfelelően fut, a puTTY -ban egész értékeket láthat. Egy csavarhúzó segítségével megváltoztathatom a puTTY -ban látható értéket az érzékelő csavarjának elforgatásával. Az érzékelőm 0 és 1000 között adja meg az értékeket, amikor teljesen elforgatja a csavart. Elforgatom a csavart a teljes érték 100%-ára (10%). Rájöttem, hogy ez nekem működik.
6. lépés: Módosítsa az érzékenységet
A fény bekapcsolásakor az érzékenység beállításához két opciót használhat, de ne egyet, hanem mindkettőt:
- Cserélje ki az érzékelő csavarját;
- Módosítsa a kód értékét.
A 2. opciót használom. A MINIMALVALUE növelésével kevésbé lesz érzékeny, a csökkenéssel pedig érzékenyebb.
#define MINIMALVALUE 5
7. lépés: Válts bármit, ami tetszik
![Válts bármit, ami tetszik! Válts bármit, ami tetszik!](https://i.howwhatproduce.com/images/001/image-2858-27-j.webp)
![Válts bármit, ami tetszik! Válts bármit, ami tetszik!](https://i.howwhatproduce.com/images/001/image-2858-28-j.webp)
FIGYELEM: Vigyázzon, ha nagyobb feszültséget kapcsol
Ha elégedett az érzékelő érzékenységével, megváltoztathatja az áramkört. Változtassa meg az áramkört a fenti képhez hasonlóan. Most bármit megváltoztathatsz, ami tetszik!
Ajánlott:
Karton késes kapcsoló: 4 lépés (képekkel)
![Karton késes kapcsoló: 4 lépés (képekkel) Karton késes kapcsoló: 4 lépés (képekkel)](https://i.howwhatproduce.com/images/001/image-1382-j.webp)
Cardboard Knife Switch: Nagy rajongói vagyunk a késkapcsolóknak. Amellett, hogy nagyon sci-fi / horror film stílusúak, pedagógusként úgy találjuk, hogy tökéletes módja annak, hogy megmagyarázzák a különbséget a " nyílt " és " zárt " áramkör és hogyan fejezi be a kapcsoló a c
WiFi LED kapcsoló IoT: 4 lépés (képekkel)
![WiFi LED kapcsoló IoT: 4 lépés (képekkel) WiFi LED kapcsoló IoT: 4 lépés (képekkel)](https://i.howwhatproduce.com/images/001/image-636-18-j.webp)
WiFi LED kapcsoló IoT: Ennek a projektnek a fő célja egy funkcionális WiFi kapcsoló kidolgozása, amely segít a "Blynk" " alkalmazást a Mobile App Store -ból. Ezt az Instructable -t sikeresen tesztelték az elektronika alapvető ismereteivel, és én
Tuchless kapcsoló háztartási gépekhez -- Irányítsa háztartási készülékeit minden kapcsoló nélkül: 4 lépés
![Tuchless kapcsoló háztartási gépekhez -- Irányítsa háztartási készülékeit minden kapcsoló nélkül: 4 lépés Tuchless kapcsoló háztartási gépekhez -- Irányítsa háztartási készülékeit minden kapcsoló nélkül: 4 lépés](https://i.howwhatproduce.com/images/001/image-1756-14-j.webp)
Tuchless kapcsoló háztartási gépekhez || Irányítsa otthoni készülékeit mindenféle kapcsoló nélkül: Ez egy tuchless kapcsoló az otthoni készülékekhez. Ezt bármely nyilvános helyre használhatja, hogy segítsen leküzdeni a vírusokat. Az áramkör opcionális erősítő és LDR által készített sötét érzékelő áramkörön alapul. Ennek az áramkörnek a második fontos része az SR Flip-Flop Sequencell-el
Két Clap ON - Clap OFF áramkör - 555 IC - 4017 IC: 3 lépés
![Két Clap ON - Clap OFF áramkör - 555 IC - 4017 IC: 3 lépés Két Clap ON - Clap OFF áramkör - 555 IC - 4017 IC: 3 lépés](https://i.howwhatproduce.com/images/004/image-9416-j.webp)
Két Clap ON - Clap OFF áramkör - 555 IC | 4017 IC: Clap ON - Clap OFF áramkör, amely számos elektronikus berendezés vezérlésére használható egy CLAP segítségével. Az egyik taps bekapcsolja a terhelést, a másik pedig kikapcsolja. Nagyon gyakori és egyszerű elkészíteni ezt az áramkört az IC 4017 használatával, de itt
Automatikus billentyűzet és egér kapcsoló - USB Upstream kapcsoló: 5 lépés
![Automatikus billentyűzet és egér kapcsoló - USB Upstream kapcsoló: 5 lépés Automatikus billentyűzet és egér kapcsoló - USB Upstream kapcsoló: 5 lépés](https://i.howwhatproduce.com/images/002/image-3284-28-j.webp)
Automatikus billentyűzet és egér kapcsoló - USB Upstream kapcsoló: Ebben a projektben összeállítunk egy automatikus billentyűzet és egér kapcsolót, amely lehetővé teszi a két számítógép közötti egyszerű megosztást. A projekt ötlete abból adódott, hogy bármikor két számítógépre van szükségem a laborasztalom. Legtöbbször az én D