Sadržaj:

3 laka blagdanska poklona ATTiny: 4 koraka
3 laka blagdanska poklona ATTiny: 4 koraka

Video: 3 laka blagdanska poklona ATTiny: 4 koraka

Video: 3 laka blagdanska poklona ATTiny: 4 koraka
Video: Вечерний намаз (магриб) | 3 ракат фард 2024, Studeni
Anonim
3 laka blagdanska poklona ATTiny
3 laka blagdanska poklona ATTiny

Svake godine blagdansko vrijeme se vrti i zaglavim u tome što pokloniti prijateljima i obitelji. Ljudi uvijek kažu da je bolje sami napraviti dar nego ga kupiti u trgovini, pa sam ove godine učinila upravo to. Prvi prikazuje ime ili osnovnu sliku kada se maše zrakom, drugi glatko blijedi između dva bijela LED -a (Također ima sigurnosnu iglu za pričvršćivanje na odjeću ili torbicu), a treći je svojevrsno svjetlo raspoloženja, pomicanje neprimjetno između boja. Svi su ispod 15 USD i lako se sastavljaju za manje od sat vremena. Ove upute, kao i dijelove, također možete pokloniti nekome tko je zainteresiran za učenje elektronike.

Napomena: Pretpostavlja se osnovna razina lemljenja. Međutim, za razliku od mojih prethodnih instrukcija, preispitat ću kako programirati AVR. Zaista se nadam da će ovo pomoći ljudima koji pokušavaju započeti s elektronikom. Sjećam se kad sam bio tamo i rado ću odgovoriti na sva vaša pitanja. Zapamtite da nema glupih pitanja! Ostavio sam vam da odlučite kako ćete postaviti svoju pločicu u nadi da ćete smisliti novi način prikazivanja jednostavnih sklopova koje sam nacrtao. Pošaljite slike kad završite, jedva čekam vidjeti što ćete smisliti! Dijelovi za sve projekte N = broj projekata x N ATTiny45 (www.digikey.com) x N 8-pinska DIP utičnica (RadioShack) x 1 velika Perf ploča (nabavio sam je na RadioShacku) x N 3v novčasta baterija i držač (RadioShack) x1 programator (ja koristim ovo, a isporučena make -datoteka bit će konfigurirana za korištenje ove) x2 N otpornici, jedan 10 ohm i jedan 10k ohm (RadioShack) Evo slike tri završena projekta:

Korak 1: Flasher imena

Bljeskalica imena
Bljeskalica imena
Bljeskalica imena
Bljeskalica imena
Bljeskalica imena
Bljeskalica imena

Ostali dijelovi x5 DIFUZIRANE LED diode od 3 mm (RadioShack) Ovaj projekt koristi postojanost vida za prikaz slike ili teksta pri brzom premještanju. Bolje radi kad je mrak. S AVR -om prelazimo između LED -ova brže nego što oko može vidjeti da možemo stvoriti sliku u zraku s vrlo malo komponenti. Kôd: (Preuzmite.zip datoteku na dnu stranice za kôd, makefile itd. (Taj kôd nema opsežne komentare kao ovaj kôd, ali ako ovaj kôd ne radi, pokušajte s onim u zip datoteku)) #define F_CPU 1000000 #include #include void dispClear () {PORTB = ~ 0b00000000; } int main () {DDRB = 0xFF; // Za vas koji nikada niste čitali C prije nego dvostruka kosa crta označi komentar. Ovo postavlja pinove avr -a kao izlazni char x = 10; // x se koristi za postavljanje dužine odgode. Povećanjem vrijednosti dolazi do sporijeg prebacivanja između piksela, smanjivanjem, smanjenjem while (1) // While (uvjet je istinit); {Učini ovo} (Tačno u C je 1) {PORTB = ~ 0b00010001; // Prijateljica se zove Zoe pa sam izvukla likove na grafofoliju, a zatim ih ubacila u PORTB. Prve tri nule nisu bitne jer je spojeno samo pet LED dioda. Jedan u jednom od preostalih pet razmaka označava da je LED uključena, nula, isključena. _kašnjenje_ms (x); // kašnjenje u milisekundama PORTB = ~ 0b00010011; _kašnjenje_ms (x); PORTB = ~ 0b00010101; _kašnjenje_ms (x); PORTB = ~ 0b00011001; _kašnjenje_ms (x); PORTB = ~ 0b00010001; _kašnjenje_ms (x); dispClear (); // Otvoreni prostor između znakova _delay_ms (x); PORTB = ~ 0b00001110; _kašnjenje_ms (x); PORTB = ~ 0b00010001; _kašnjenje_ms (x*3); PORTB = ~ 0b00001110; _kašnjenje_ms (x); dispClear (); _kašnjenje_ms (x); PORTB = ~ 0b00011111; _kašnjenje_ms (x); PORTB = ~ 0b00010101; _kašnjenje_ms (x); PORTB = ~ 0b00010001; _kašnjenje_ms (x); dispClear (); _kašnjenje_ms (x*5); // Riječ je gotova pa zbog jasnoće imam veći razmak između riječi}} Sada slijedite upute na stranici 4 da sastavite ovaj kôd i pošaljete ga na svoj AVR.

Korak 2: Svjetlo torbice

Svjetlo torbice
Svjetlo torbice
Svjetlo torbice
Svjetlo torbice

Ostali dijelovi x2 LED diode NISU DIFUZIRANE (RadioShack) Ovaj projekt glatko blijedi između dvije LED diode. Moja mama je htjela da joj nešto ode u torbicu kako bi pomogla pčeli da se vidi noću. Osjećao sam se kao da će trepćuće svjetlo za bicikl privući previše pažnje pa sam ovo napravio. Koristi PWM (Pulse Width Modulation) za davanje efekta prigušivanja i posvjetljivanja. Ono što se zapravo događa je da LED dioda treperi brže nego što oko može vidjeti u različitim intervalima da simulira promjenu. To možete vidjeti jasnije kada mu mahnete licem, kao što biste vidjeli s Flasherom imena. Kôd se može preuzeti na kraju ove stranice. Pogledajte stranicu 4 o tome kako kompajlirati na vaš AVR. Umjesto da ovdje komentiram kôd, ukratko ću objasniti koncept. PWM generira mjerač vremena. Svaki ciklus sata brojač broji jedan. Kad dosegne određenu vrijednost (u ovom slučaju OCR1B) mijenja stanje pina (U ovom slučaju OC1B). Da bi se LED diode "isključile", drugu sam spojio na [SUPROTNO] OC1B (To znači traka na vrhu). Zatim koristimo x za povećanje i smanjivanje vremena za uključivanje LED dioda.

Korak 3: Klizač u boji

Skroler u boji
Skroler u boji
Skroler u boji
Skroler u boji

Ostali Partsx1 RGB LED (bolje raspršen) (RadioShack) Ovo je za mene klasik. Uvijek su me fascinirala ovakva svjetla i smatrala su me vrlo smirujućima pa sam prirodno htjela napraviti jedno. Također, njihova vidljivost u društvu daje im pravi WOW faktor. "TO STE UČINILI ?!" Kôd je gotovo isti i, po mom mišljenju, lakši za čitanje. Možete preuzeti na dnu. Ovaj put nudimo PWM'd pin za svaki pin za uzemljenje na RGB LED. Na ovaj način uzemljujemo čip. Volti se mogu mjeriti kao razlika između dvije točke. 3v-0v = 3v 5v-2v = 3v *** 3v-3v = 0v *** Ova posljednja instanca je ono što radimo kada probadamo čip. Kad postoje tri volta s obje strane, recimo, nema dovoljno volti za pogon LED -a. Stoga smo za blijeđenje boja odabrali boju i drugu boju. Postavite jedan jednak x, a drugi 255-x ili INVERZ x. Kao što smo radili u prethodnom projektu. Sada idite na korak 4 za programiranje.

Korak 4: Programiranje

Programiranje
Programiranje

Prvo preuzmite i instalirajte Emacs, avr-gcc i Avrdude i sve njihove ovisnosti. Na Arch linuxu to sam učinio sa: sudo pacman -Sy emacs avrdude

Sada je vrijeme da svoj programer priključite na svoj avr. Priključite pinove 6-pinskog ISP programatora (slika ispod) na sporosponding pinove na vašem AVR-u (podatkovna tablica, stranica 2) (ja sam to učinio na ploči). Sada priključite programator na svoje računalo i VRLO BRZO dodirnite vrh AVR -a. Ako je vruće, UKLONITE PROGRAMER S RAČUNALA ODMAH, provjerite veze i pokušajte ponovo (Napajanje i Gnd unatrag?). Ako nije vruće, otvorite emacs i pritisnite Ctl-x Ctl-f da biste pronašli.c datoteku. Otvorite ga, a zatim pritisnite Meta (Usualy Alt) -x i upišite compile. Pritisnite enter dvaput i ako imate sreće, vaš AVR bi sada trebao pokrenuti vaš kôd! Hvala na čitanju! Nadam se da ste uživali i naučili nešto. Molimo, ne ustručavajte se postavljati pitanja i ne zaboravite objaviti slike onoga što ste smislili. Srećni praznici i ne zaboravite glasati!

Preporučeni: