Satura rādītājs:

3 vienkāršas ATTiny svētku dāvanas: 4 soļi
3 vienkāršas ATTiny svētku dāvanas: 4 soļi

Video: 3 vienkāršas ATTiny svētku dāvanas: 4 soļi

Video: 3 vienkāršas ATTiny svētku dāvanas: 4 soļi
Video: 3 vienkāršas svētku frizūras 2024, Novembris
Anonim
3 vienkāršas ATTiny svētku dāvanas
3 vienkāršas ATTiny svētku dāvanas

Katru gadu svētku laiks rit apkārt, un es iesprūdu, ko dāvināt saviem draugiem un ģimenei. Cilvēki vienmēr saka, ka dāvanu ir labāk izgatavot pašam, nekā nopirkt veikalā, tāpēc šogad es to darīju. Pirmais parāda nosaukumu vai pamata attēlu, kad viļņo gaisā, otrais vienmērīgi izgaist starp diviem baltiem gaismas diodēm (tam ir arī drošības tapa, lai to piestiprinātu pie drēbēm vai maka), bet trešais ir sava veida garastāvokļa gaisma, ritināšana nemanāmi starp krāsām. Visu cena ir mazāka par 15 USD, un tos ir viegli salikt mazāk nekā stundas laikā. Jūs varētu arī uzdāvināt šos norādījumus, kā arī detaļas kādam, kas ir ieinteresēts apgūt elektroniku.

Piezīme. Tiek pieņemts lodēšanas pamatlīmenis. Tomēr, atšķirībā no iepriekšējiem norādījumiem, es paskaidrošu, kā programmēt AVR. Es ļoti ceru, ka tas palīdz cilvēkiem, kuri cenšas sākt darbu elektronikā. Es atceros, kad biju tur, un labprāt atbildēšu uz visiem jautājumiem, kas jums varētu rasties. Atcerieties, ka nav stulbu jautājumu! Es atstāju jums atvērtu, lai noteiktu, kā jūs izkārtosit savu shēmas plati, cerot, ka jūs nāksiet klajā ar jaunu veidu, kā parādīt manis uzzīmētās vienkāršās shēmas. Lūdzu, ievietojiet attēlus, kad esat pabeidzis, es nevaru gaidīt, lai redzētu, ko jūs izdomājat! Daļas visiem projektiem N = projektu skaits x N ATTiny45 (www.digikey.com) x N 8 kontaktu DIP ligzda (RadioShack) x 1 liela perf dēlis (es saņēmu RadioShack) x N 3v monētu šūnu baterija un turētājs (RadioShack) x1 programmētājs (es izmantoju šo un komplektācijā iekļautā makefile tiks konfigurēta tā, lai to izmantotu) x2 N rezistori, viens 10 omi un viens 10k oms (RadioShack) Šeit ir trīs pabeigto projektu attēls:

1. darbība. Nosaukuma mirgošana

Nosaukuma mirgotājs
Nosaukuma mirgotājs
Nosaukuma mirgotājs
Nosaukuma mirgotājs
Nosaukuma mirgotājs
Nosaukuma mirgotājs

Citas detaļas x5 DIFFUSED 3mm LED (RadioShack) Šis projekts izmanto redzes noturību, lai ātri pārvietotu attēlu vai tekstu. Tas darbojas labāk, kad ir tumšs. Ar AVR mēs pārslēdzamies starp gaismas diodēm ātrāk, tad acs redz, ka mēs varam izveidot attēlu gaisā ar ļoti mazām sastāvdaļām. Kods: (Lejupielādējiet.zip failu lapas apakšā, lai meklētu kodu, makefile uc zip fails)) #define F_CPU 1000000 #include #include void dispClear () {PORTB = ~ 0b00000000; } int main () {DDRB = 0xFF; // Tiem no jums, kuri nekad nav lasījuši C, pirms dubultā slīpsvītra norāda komentāru. Tas nosaka avr tapas kā izejas char x = 10; // x tiek izmantots, lai iestatītu aizkavi. Vērtības palielināšana dod lēnāku pārslēgšanos starp pikseļiem, samazinot, zemāku kamēr (1) // Kamēr (nosacījums ir patiess); {Dariet šo} (Patiesība C ir 1) {PORTB = ~ 0b00010001; // Mana drauga vārds ir Zoja, tāpēc es uzzīmēju rakstzīmes uz grafika papīra un pēc tam pieskaitīju tās PORTB. Pirmajām trim nullēm nav nozīmes, jo ir savienotas tikai piecas gaismas diodes. Viens no atlikušajām piecām atstarpēm norāda, ka gaismas diode ir ieslēgta, nulle - izslēgta. _delay_ms (x); // aizture milisekundēs PORTB = ~ 0b00010011; _delay_ms (x); PORTB = ~ 0b00010101; _delay_ms (x); PORTB = ~ 0b00011001; _delay_ms (x); PORTB = ~ 0b00010001; _delay_ms (x); dispClear (); // Atvērta vieta starp rakstzīmēm _delay_ms (x); PORTB = ~ 0b00001110; _delay_ms (x); PORTB = ~ 0b00010001; _kavēšanās_ms (x*3); PORTB = ~ 0b00001110; _delay_ms (x); dispClear (); _delay_ms (x); PORTB = ~ 0b00011111; _delay_ms (x); PORTB = ~ 0b00010101; _delay_ms (x); PORTB = ~ 0b00010001; _delay_ms (x); dispClear (); _ kavēšanās_ms (x*5); // Vārds ir padarīts skaidrības labad man ir lielāka atstarpe starp vārdiem}} Tagad izpildiet 4. lappusē sniegtos norādījumus, lai apkopotu šo kodu un nosūtītu to savam AVR.

2. darbība: maku gaisma

Maka gaisma
Maka gaisma
Maka gaisma
Maka gaisma

Citas daļas x2 LED NEDIFFUSED (RadioShack) Šis projekts vienmērīgi izgaist starp divām gaismas diodēm. Mana mamma vēlējās, lai kaut kas tiktu līdzi viņas somiņai, lai palīdzētu bitei redzēt naktī. Man šķita, ka mirgojoša velosipēda gaisma pievērsīs pārāk lielu uzmanību, tāpēc es to izdarīju. Tas izmanto PWM (impulsa platuma modulāciju), lai radītu aptumšošanas un spilgtuma efektu. Patiesībā notiek tas, ka gaismas diode mirgo ātrāk, nekā acs var redzēt dažādos intervālos, lai simulētu izmaiņas. Jūs to varat redzēt skaidrāk, ja pamājat to sejā, tāpat kā ar vārda mirgotāju. Kodu var lejupielādēt šīs lapas beigās. Skatiet 4. lappusi, kā kompilēt AVR. Tā vietā, lai šeit komentētu kodu, es īsi izskaidrošu jēdzienu. PWM ģenerē taimeris. Katrs pulksteņa cikls taimeris saskaita vienu. Kad tas sasniedz noteiktu vērtību (šajā gadījumā OCR1B), tas maina tapas stāvokli (šajā gadījumā OC1B). Lai gaismas diodes "izslēgtos", es pieslēdzu otru [OPPOSITE] OC1B (tas ir tas, ko nozīmē josla pāri augšai). Tad mēs izmantojam x, lai palielinātu un samazinātu gaismas diodes ieslēgšanās laiku.

3. darbība: krāsu ritinātājs

Krāsu ritinātājs
Krāsu ritinātājs
Krāsu ritinātājs
Krāsu ritinātājs

Citas Partsx1 RGB gaismas diodes (izkliedēta ir labāka) (RadioShack) Man šī ir klasika. Mani vienmēr ir fascinējuši šādi lukturi, un es uzskatu, ka tie ir ļoti nomierinoši, tāpēc dabiski es gribēju to uztaisīt. Arī viņu redzamība sabiedrībā dod viņiem īstu WOW faktoru. "Tu to esi radījis ?!" Kods ir gandrīz tāds pats un, manuprāt, vieglāk lasāms. Apakšā varat lejupielādēt. Šoreiz mēs piedāvājam PWM'd tapu katrai RGB gaismas diodes zemējuma tapai. Tādā veidā mēs sasmalcinām caur mikroshēmu. Voltus var izmērīt kā starpību starp diviem punktiem. 3v-0v = 3v 5v-2v = 3v *** 3v-3v = 0v *** Šis pēdējais gadījums ir tas, ko mēs darām, kad izzemējam caur mikroshēmu. Ja abās pusēs ir trīs volti, teiksim, nav pietiekami daudz voltu, lai darbinātu gaismas diodi. Tātad, lai izbalētu starp krāsām, mēs izvēlējāmies krāsu un citu krāsu. Iestatiet vienu vienādu ar x un otru vienādu ar 255-x vai x INVERSE. Tāpat kā mēs to darījām iepriekšējā projektā. Tagad pārejiet uz 4. darbību, lai programmētu.

4. solis: programmēšana

Programmēšana
Programmēšana

Vispirms lejupielādējiet un instalējiet Emacs, avr-gcc un Avrdude un visas iespējamās atkarības. Arch linux es to darīju ar: sudo pacman -Sy emacs avrdude

Tagad ir pienācis laiks savienot programmētāju ar savu avr. Pievienojiet 6 kontaktu ISP programmētāja tapas (attēls zemāk) ar AVR atbilstošajām tapām (datu lapa, 2. lapa) (es to darīju uz maizes dēļa). Tagad pievienojiet programmētāju datoram un ĻOTI ĀTRI pieskarieties AVR augšdaļai. Ja ir karsts, REIZĒJIET NO DATORA PROGRAMMATORU, pārbaudiet savienojumus un mēģiniet vēlreiz (Barošana un Gnd atpakaļ?). Ja tas nav karsts, atveriet emacs un nospiediet Ctl-x Ctl-f, lai atrastu.c failu. Atveriet to un pēc tam nospiediet Meta (parasti Alt) -x un ierakstiet compile. Divreiz nospiediet taustiņu Enter, un, ja jums ir paveicies, jūsu AVR tagad vajadzētu palaist jūsu kodu! Paldies, ka izlasījāt! Es ceru, ka jums patika un kaut ko iemācījāties. Lūdzu, nevilcinieties uzdot jautājumus un neaizmirstiet ievietot attēlus, ko esat izdomājis. Priecīgus svētkus un neaizmirstiet nobalsot!

Ieteicams: