Obsah:
- Zásoby
- Krok 1: Připojení
- Krok 2: Vytvoření programu
- Krok 3: Přidání kódu
- Krok 4: Přidání USART
- Krok 5: Spuštění kódu
- Krok 6: Změňte citlivost
- Krok 7: Přepněte vše, co se vám líbí
Video: Přepínač klapky: 7 kroků (s obrázky)
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:19
Příbuzný se mě jednou zeptal, jestli bych mohl vytvořit přepínač, který reaguje na tleskání rukou. Takže jsem si objednal nějaké věci k vytvoření projektu a rozhodl jsem se udělat instruktáž, aby každý mohl mít takový úžasný přepínač.
Mikrokontrolér je mozkem tohoto projektu. K mikrokontroléru je připojen zvukový senzor, který při detekci zvuku odesílá analogová data. Mikrokontrolér je naprogramován tak, aby detekoval velké rozdíly ve zvuku. Když je detekován dostatečně vysoký rozdíl, což znamená tleskání, mikrokontrolér vyšle signál do relé. Relé sepne a rozsvítí se světlo. Při druhém tleskání světlo opět zhasne.
Zásoby
Fyzické věci:
- 1x ATmega328P Xplained Mini s kabelem pro programování
- 1x 5v reléový modul 1kanálový (KY-019 nebo podobný)
- 1x modul zvukového senzoru (KY-038 nebo podobný)
- 1x prkénko
- 6x propojovací kabel male-male
- 1x světelná zásuvka s kabelem (nebo jiným zařízením, které chcete zapnout)
- 1x žárovka
- 1x odpor* (používám 220 ohmů)
- 1x LED*
Software (stáhnout):
- AtmelStudio 7.0 (https://www.microchip.com/mplab/avr-support/atmel-studio-7)
- Tmel (www.putty.org)*
* Pro účely testování
Krok 1: Připojení
Připojte všechny vodiče podle obrázku.
Krok 2: Vytvoření programu
Rád kóduji v jazyce C, takže tento projekt je napsán v jazyce C.
Pokud jste si ještě nestáhli a nenainstalovali potřebný software, stáhněte si jej a nainstalujte hned.
Nyní postupujte podle následujících kroků:
- Otevřete AtmelStudio.
- Klikněte na „Soubor“-> „Nový“-> „Projekt“.
- Klikněte na „Spustitelný projekt GCC C“. Pojmenujte svůj projekt a uložte jej. Klikněte na „Ok“.
- Vyhledejte ATmega328P. Klikněte na „ATmega328P“-> „Ok“.
- Klepnutím v Průzkumníku řešení na „main.c“otevřete hlavní program.
Krok 3: Přidání kódu
Odstraňte kód, který je již v main.c
Zkopírujte a vložte následující kód do main.c
#define F_CPU 16000000
#include #include #include #include "usart.h" #define MINIMALVALUE 5 void InitADC (); uint16_t ReadADC (uint8_t ADCchannel); dvojitý val1, val2; int main (void) {// Inicializace USART USART_init (9600); USART_putstr ("#USART init / n"); // Inicializace ADC InitADC (); USART_putstr ("#ADC init / n"); // PC1 pin výstupu PORTC, zbytek vstup. DDRC = 0b00000010; // nastavte počáteční hodnoty na PORTC low. PORTC = 0b00000000; while (1) {// čtení hodnoty potenciometru // načtení hodnoty a uložení do val1 val1 = ReadADC (0); _delay_ms (1); // číst další hodnotu en uložit do val2 val2 = ReadADC (0); char str [10]; // ReadADC () vrací hodnotu zpět v celých číslech. Pokud chceme ladit nebo vidět hodnotu na tmelu, // hodnotu je třeba převést na znaky, aby ji USART mohl vytisknout. itoa (val1, str, 10); USART_putstr (str); USART_putstr ("\ n"); // pokud mají 2 hodnoty určitý rozdíl. Je detekován zvuk a přepne port. // MINIMÁLNÍ HODNOTU lze změnit, její zvýšení bude méně citlivé. Snížením bude citlivější, pokud (val1-val2> MINIMALVALUE || val2-val1> MINIMALVALUE) {PORTC ^= 0b00000010; // SVĚTLO NA UC _delay_ms (200); }}} neplatné InitADC () {// Vyberte Vref = AVcc ADMUX | = (1 << REFS0); // nastavit prescaller na 128 a povolit ADC ADCSRA | = (1 << ADPS2) | (1 << ADPS1) | (1 << ADPS0) | (1 << ADEN); } uint16_t ReadADC (uint8_t ADCchannel) {// vyberte kanál ADC s bezpečnostní maskou ADMUX = (ADMUX & 0xF0) | (ADCchannel & 0x0F); // režim jediné konverze ADCSRA | = (1 << ADSC); // počkejte, až bude převod ADC dokončen while (ADCSRA & (1 << ADSC)); vrátit ADC; }
Krok 4: Přidání USART
USART je sériový komunikační protokol, který lze použít na mikrokontroléru. Používám to na mikrokontroléru, abych viděl analogová data ze senzoru.
USART je již správně naprogramován a obsahuje soubor záhlaví (.h) a zdroj (.c). Stáhněte si 2 soubory a přidejte je do svého programu v AtmelStudio.
V Průzkumníkovi řešení klikněte pravým tlačítkem na název projektu. Klikněte na „Přidat“-> „Existující položka…“a vyberte 2 stažené soubory.
Krok 5: Spuštění kódu
Připojte mikrokontrolér k počítači. Vyhledejte na počítači „správce zařízení“a otevřete jej. Vyhledejte „Porty (COM a LPT)“a pamatujte na port COM, na kterém je mikrokontrolér zapnutý.
Otevřete PuTTY a klikněte na „Sériový“, zadejte COM port, který jste našli v mikrokontroléru, a klikněte na „Otevřít“. Vyskočí terminál, zatím ho nechte.
Vraťte se zpět na AtmelStudio a vyberte správný nástroj pro programování mikrokontroléru.
- Klikněte na nástroj kladivo.
- Vyberte ladicí program/programátor „mEDBG*ATML“.
- Vyberte rozhraní „debugWIRE“.
- Klikněte na „spustit bez ladění“.
Program bude stavět a psát.
Když program běží správně, uvidíte v puTTY celočíselné hodnoty. Pomocí šroubováku mohu změnit hodnotu viditelnou v puTTY otáčením šroubu na senzoru. Můj senzor udává hodnoty od 0 do 1000 při úplném otáčení šroubu. Otáčím šroubem na 100 (10%) z celkové hodnoty. Zjistil jsem, že to na mě funguje.
Krok 6: Změňte citlivost
K nastavení citlivosti při zapnutí světla můžete použít 2 možnosti, ale vyberte jednu, ne obě:
- Vyměňte šroub snímače;
- Změňte hodnotu kódu.
Používám možnost 2. Zvýšení MINIMALVALUE způsobí, že bude méně citlivá, snížením bude citlivější.
#define MINIMALVALUE 5
Krok 7: Přepněte vše, co se vám líbí
VAROVÁNÍ: Dávejte pozor při přepínání vyšších napětí
Když jste s citlivostí senzoru spokojeni, můžete změnit obvod. Změňte obvod jako na obrázku výše. Nyní můžete přepínat, co se vám líbí!
Doporučuje:
Přepínač pedálu Bluetooth pro kameru smartphonu: 13 kroků (s obrázky)
Přepínač pedálu Bluetooth pro fotoaparát smartphonu: V dnešní době se věnuji tvorbě instruktáží, videí na youtube a blogových příspěvků. Aby byl blogový příspěvek produktivní, je nezbytné pořídit mnoho obrázků co nejpodrobněji. Není to tak snadné, protože lidská bytost má jen dvě ruce. Potřebuji
Přepínač Como Usar Un WII Pro Con Una Přepínač: 4 kroky
Como Usar Un WII Pro Controller Con Una Switch -hackeada .: Como usar un WII Pro Controller con una switch -hackeada.Contexto: estoy en cuarentena, no tengo 8bitdo y no puedo hacer el gasto en este momento y queríamos jugar Mario kart con más jugadores.Antecedentes: sabía que había una opción para jugar con
Přepínač světel s dálkovým ovládáním Bluetooth - retrofit. Přepínač světla stále funguje, bez dalšího psaní: 9 kroků (s obrázky)
Přepínač světel s dálkovým ovládáním Bluetooth - retrofit. Přepínač světel stále funguje, bez dalšího zápisu: Aktualizace 25. listopadu 2017 - Verzi tohoto projektu s vysokým výkonem, která může řídit kilowatty zátěže, najdete v části Dodatečné vybavení řízení BLE na zátěže s vysokým výkonem - není vyžadováno žádné další zapojeníAktualizace 15. listopadu 2017 - Některé BLE desky / softwarové balíčky deli
Automatický přepínač klávesnice a myši - USB upstream přepínač: 5 kroků
Přepínač automatické klávesnice a myši - USB upstream switch: V tomto projektu sestavíme automatický přepínač klávesnice a myši, který umožňuje snadné sdílení mezi dvěma počítači. Myšlenka tohoto projektu vzešla z mé potřeby mít v daném okamžiku dva počítače můj laboratorní stůl. Většinou je to můj D
Přepínač klapky (40 zatlesknutí za 5 sekund): 4 kroky (s obrázky)
Klapkový spínač (40 zatlesknutí za 5 sekund): Klapkový spínač má schopnost zapnout/vypnout jakoukoli elektrickou součást připojením výstupu obvodu k reléovému spínači. Zde provedeme přepínač tleskání s několika součástmi s velmi dobře vysvětlenými. Ve srovnání se všemi ostatními přepínači tleskání