Satura rādītājs:
- Piegādes
- 1. darbība. Savienojumi
- 2. darbība. Programmas izveide
- 3. darbība: koda pievienošana
- 4. darbība. USART pievienošana
- 5. darbība: koda palaišana
- 6. darbība: mainiet jutību
- 7. solis: pārslēdziet visu, kas jums patīk
Video: Aploksnes slēdzis: 7 soļi (ar attēliem)
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:51
Kāds radinieks man vienu reizi jautāja, vai es varu izveidot slēdzi, kas reaģē uz plaukstu plaukstām. Tāpēc es esmu pasūtījis dažas lietas, lai izveidotu projektu, un nolēmu izveidot pamācību, lai ikvienam varētu būt lielisks slēdzis.
Mikrokontrolleris ir šī projekta smadzenes. Mikrokontrolleram ir pievienots skaņas sensors, un, nosakot skaņu, sensors sūta analogus datus. Mikrokontrolleris ir ieprogrammēts, lai noteiktu lielas skaņas atšķirības. Ja tiek konstatēta pietiekami liela atšķirība, kas nozīmē aplausi, mikrokontrolleris nosūta signālu relejam. Relejs ieslēdzas un gaisma iedegas. Otrreiz klapējot, gaisma atkal izslēgsies.
Piegādes
Fiziskās lietas:
- 1x ATmega328P Xplained Mini ar kabeli programmēšanai
- 1x 5V releja modulis 1 kanāls (KY-019 vai līdzīgs)
- 1x skaņas sensora modulis (KY-038 vai līdzīgs)
- 1x maizes dēlis
- 6x vīriešu un vīriešu džemperis
- 1x gaismas ligzda ar vadu (vai jebkura cita ierīce, kuru vēlaties ieslēgt)
- 1x spuldze
- 1x rezistors* (es izmantoju 220 omus)
- 1x LED*
Programmatūra (lejupielādēt):
- AtmelStudio 7.0 (https://www.microchip.com/mplab/avr-support/atmel-studio-7)
- Putty (www.putty.org)*
* Pārbaudes nolūkos
1. darbība. Savienojumi
Pievienojiet visus vadus, kā parādīts attēlā.
2. darbība. Programmas izveide
Man patīk kodēt C, tāpēc šis projekts ir rakstīts C.
Ja vēl neesat lejupielādējis un instalējis nepieciešamo programmatūru, lejupielādējiet un instalējiet to tūlīt.
Tagad veiciet tālāk norādītās darbības.
- Atveriet AtmelStudio.
- Noklikšķiniet uz "Fails" -> "Jauns" -> "Projekts".
- Noklikšķiniet uz "GCC C izpildāms projekts". Piešķiriet savam projektam nosaukumu un atrašanās vietu, kur to uzglabāt. Noklikšķiniet uz "Labi".
- Meklēt ATmega328P. Noklikšķiniet uz "ATmega328P" -> "Labi".
- Lai atvērtu galveno programmu, noklikšķiniet uz risinājumu pārlūka "main.c".
3. darbība: koda pievienošana
Izdzēsiet kodu, kas jau ir main.c
Kopējiet un ielīmējiet šādu kodu galvenajā.c
#define F_CPU 16000000
#include #include #include #include "usart.h" #define MINIMALVALUE 5 void InitADC (); uint16_t ReadADC (uint8_t ADCchannel); dubultā val1, val2; int main (void) {// Inicializēt USART USART_init (9600); USART_putstr ("#USART init / n"); // Inicializēt ADC InitADC (); USART_putstr ("#ADC init / n"); // PC1 izeja no PORTC izejas, pārējā ievade. DDRC = 0b00000010; // iestatiet sākotnējās vērtības uz zemu PORTC. PORTC = 0b00000000; while (1) {// potenciometra vērtības nolasīšana // nolasīšanas vērtība un uzglabāšana val1 val1 = ReadADC (0); _kavēšanās_ms (1); // lasīt nākamo vērtību en store in val2 val2 = ReadADC (0); char str [10]; // ReadADC () atgriež vērtību veselos skaitļos. Ja mēs vēlamies atkļūdot vai redzēt špakteles vērtību, // vērtība ir jāpārvērš rakstzīmēs, lai USART varētu to izdrukāt. itoa (val1, str, 10); USART_putstr (str); USART_putstr ("\ n"); // ja 2 vērtībām ir noteikta atšķirība. Tiek konstatēta skaņa un tiek pārslēgts ports. // MINIMĀLĀVĒRTĪBU var mainīt, palielinot to, tas kļūs mazāk jutīgs. Samazinot, tas kļūs jutīgāks, ja (val1-val2> MINIMALVALUE || val2-val1> MINIMALVALUE) {PORTC ^= 0b00000010; // LIGHT ON UC _delay_ms (200); }}} void InitADC () {// Izvēlieties Vref = AVcc ADMUX | = (1 << REFS0); // iestatiet prescaller uz 128 un iespējojiet ADC ADCSRA | = (1 << ADPS2) | (1 << ADPS1) | (1 << ADPS0) | (1 << ADEN); } uint16_t ReadADC (uint8_t ADCchannel) {// izvēlieties ADC kanālu ar drošības masku ADMUX = (ADMUX & 0xF0) | (ADCchannel & 0x0F); // viena konversijas režīms ADCSRA | = (1 << ADSC); // pagaidiet, līdz ADC konvertēšana ir pabeigta, kamēr (ADCSRA & (1 << ADSC)); atgriezt ADC; }
4. darbība. USART pievienošana
USART ir sērijas sakaru protokols, ko var izmantot mikrokontrollerī. Es to izmantoju mikrokontrollerī, lai redzētu sensora analogos datus.
USART jau ir ieprogrammēts pareizi, tajā ir galvenes (.h) un avota (.c) fails. Lejupielādējiet 2 failus un pievienojiet tos savai programmai programmā AtmelStudio.
Solution Explorer ar peles labo pogu noklikšķiniet uz projekta nosaukuma. Noklikšķiniet uz "Pievienot" -> "Esošais vienums …" un atlasiet 2 lejupielādētos failus.
5. darbība: koda palaišana
Pievienojiet mikrokontrolleru datoram. Datorā meklējiet “ierīces pārvaldnieks” un atveriet to. Atrodiet "Porti (COM un LPT)" un atcerieties COM portu, kurā ir ieslēgts mikrokontrolleris.
Atveriet PuTTY un noklikšķiniet uz "Serial", ierakstiet mikrokontrollera COM portu un noklikšķiniet uz "Open". Parādās terminālis, pagaidām atstājiet to.
Atgriezieties AtmelStudio, lai izvēlētos pareizo mikrokontrollera programmēšanas rīku.
- Noklikšķiniet uz āmura rīka.
- Atlasiet atkļūdotāju/programmētāju "mEDBG*ATML".
- Atlasiet interfeisu "debugWIRE".
- Noklikšķiniet uz "sākt bez atkļūdošanas".
Programma tiks veidota un rakstīta.
Kad programma darbojas pareizi, puTTY redzēsiet veselu skaitļu vērtības. Izmantojot skrūvgriezi, es varu mainīt puTTY redzamo vērtību, pagriežot sensora skrūvi. Mans sensors dod vērtības no 0 līdz 1000, pagriežot skrūvi līdz galam. Es pagriežu skrūvi līdz 100 (10%) no kopējās vērtības. Esmu uzzinājis, ka tas man der.
6. darbība: mainiet jutību
Lai pielāgotu jutību, kad gaisma ieslēdzas, varat izmantot divas iespējas, bet izvēlēties vienu, nevis abas:
- Mainīt sensora skrūvi;
- Mainiet koda vērtību.
Es izmantoju 2. opciju. Palielinot MINIMALVALUE, tas kļūst mazāk jutīgs, samazinājums padara to jutīgāku.
#define MINIMĀLVĒRTĪBA 5
7. solis: pārslēdziet visu, kas jums patīk
BRĪDINĀJUMS: Esiet piesardzīgs, pārslēdzot augstāku spriegumu
Kad esat apmierināts ar sensora jutīgumu, varat mainīt ķēdi. Mainiet ķēdi, kā parādīts iepriekš. Tagad jūs varat mainīt visu, kas jums patīk!
Ieteicams:
Bluetooth tālvadības gaismas slēdzis - modernizēts. Gaismas slēdzis joprojām darbojas, bez papildu rakstīšanas: 9 soļi (ar attēliem)
Bluetooth tālvadības gaismas slēdzis - modernizēts. Gaismas slēdzis joprojām darbojas, bez papildu rakstīšanas: 2017. gada 25. novembra atjauninājums - šī projekta lieljaudas versiju, kas var kontrolēt kilovatu slodzi, skatiet, modernizējot BLE vadību lieljaudas slodzēm - nav nepieciešama papildu vadu atjaunināšana. 2017. gada 15. novembris - Dažas BLE plates / programmatūras kaudzes tiek gatavotas
Automātisks tastatūras un peles slēdzis - USB augšupielādes slēdzis: 5 soļi
Automātiskais tastatūras un peles slēdzis - USB augšupielādes slēdzis: Šajā projektā mēs apkoposim automātisku tastatūras un peles slēdzi, kas ļauj ērti koplietot divus datorus. Šī projekta ideja radās no manas vajadzības jebkurā laikā, ja man ir divi datori mans laboratorijas galds. Lielākoties tas ir mans D
Pārslēgšanas slēdzis: vienkāršs, bez lodēšanas skārienjutīgs slēdzis: 7 soļi
Slap slēdzis: vienkāršs, bez lodēšanas pieskāriena slēdzis: Slap slēdzis ir vienkāršs pretestības pieskāriena slēdzis, kas paredzēts manam projektam Explode the Controller, lai iekļautu fizisku spēli datorspēlēs ar Makey Makey and Scratch. Projektam bija nepieciešams skārienjutīgs slēdzis, kas bija: izturīgs, lai to iepļaukātu
Klēpjdatora apvalks no FedEx aploksnes: 11 soļi (ar attēliem)
Klēpjdatora apvalks no FedEx aploksnes: Šeit ir pamata instrukcijas, kā no FedEx aploksnēm izgatavot klēpjdatora uzmavu. Es meklēju spēcīgu un ūdensnecaurlaidīgu materiālu, lai izgatavotu savu piedurkni, un atcerējos, ka FedEx un ASV pasta dienests izmanto Tyvek (vai līdzīgu) materiālu
DIY Macbook gaisa polsterēta vinila aploksnes uzmava mazāk nekā 10,00 ASV dolāri: 9 soļi
DIY MacBook Air polsterēta vinila aploksnes uzmava par mazāk nekā 10,00 USD: Lai gan jūs, iespējams, esat samazinājies no 1800 USD līdz 3200 USD par MacBook Air, jūs joprojām varat atteikties no 30–100 USD piedurknes. Es nolēmu izmantot burtisku pieeju un mēģināt izmantot parastu mazumtirdzniecības aploksni, lai MacBook Air būtu drošībā, kamēr es vēl