Kazalo:

3 enostavna praznična darila ATTiny: 4 koraki
3 enostavna praznična darila ATTiny: 4 koraki

Video: 3 enostavna praznična darila ATTiny: 4 koraki

Video: 3 enostavna praznična darila ATTiny: 4 koraki
Video: Po najlepša praznična darila v Pikapolonico 2024, November
Anonim
3 enostavna počitniška darila ATTiny
3 enostavna počitniška darila ATTiny

Vsako leto se vrtijo prazniki in obtičem, kaj podariti prijateljem in družini. Ljudje vedno pravijo, da je darilo bolje narediti sam, kot pa ga kupiti v trgovini, zato sem letos naredil prav to. Prva prikazuje ime ali osnovno sliko, ko jo mahnete po zraku, druga gladko zbledi med dvema belimi LED diodami (ima tudi varnostni zatič za pritrditev na oblačila ali torbico), tretja pa je nekakšno razpoloženje, pomikanje brezhibno med barvami. Vsi so pod 15 USD in jih je enostavno sestaviti v manj kot eni uri. Ta navodila in dele lahko podarite tudi nekomu, ki se zanima za učenje elektronike.

Opomba: Predpostavlja se osnovna raven spajkanja. Vendar bom v nasprotju s prejšnjimi navodili premišljeval, kako programirati AVR. Resnično upam, da bo to pomagalo ljudem, ki poskušajo začeti z elektroniko. Spomnim se, ko sem bil tam, in z veseljem bom odgovoril na vsa vaša vprašanja. Ne pozabite, da neumnih vprašanj ni! Odločil sem se, da določite, kako boste razporedili vezje v upanju, da boste prišli do novega načina prikaza preprostih vezij, ki sem jih narisal. Ko končate, prosim objavite slike, komaj čakam, da vidim, kaj vam je prišlo! Deli za vse projekte N = število projektov x N ATTiny45 (www.digikey.com) x N 8-polna DIP vtičnica (RadioShack) x 1 Velika plošča Perf (dobil sem jo na RadioShacku) x N 3v Coin Cell Battery in držalo (RadioShack) x1 Programmer (uporabljam to in priložena datoteka makefif bo nastavljena za uporabo tega) x2 N uporov, en 10 ohm in en 10k ohm (RadioShack) Tukaj je slika treh zaključenih projektov:

1. korak: utripa ime

Utripalec imen
Utripalec imen
Utripalec imen
Utripalec imen
Utripalec imen
Utripalec imen

Drugi deli x5 DIFUZIRANE 3 mm LED diode (RadioShack) Ta projekt uporablja vztrajnost vida za prikaz slike ali besedila pri hitrem premikanju. Deluje bolje, ko je temno. Z AVR -jem preklapljamo med LED diodami hitreje, kot je vidno, da lahko v zraku ustvarimo sliko z zelo malo komponentami. Koda: (Prenesite datoteko.zip na dnu strani za kodo, makefile itd. (Ta koda nima obsežnih komentarjev, ki jih ima ta koda, če pa ta koda ne deluje, poskusite s tisto v zip datoteko)) #define F_CPU 1000000 #include #include void dispClear () {PORTB = ~ 0b00000000; } int main () {DDRB = 0xFF; // Za tiste, ki še niste brali C, preden dvojna poševnica označi komentar. To nastavi nožice avr kot izhodni char x = 10; // x se uporablja za nastavitev dolžine zakasnitve. Povečanje vrednosti pomeni počasnejše preklapljanje med slikovnimi pikami, zmanjševanje, nižje while (1) // While (pogoj je res); {Do This} (True v C je 1) {PORTB = ~ 0b00010001; // Ime moje prijateljice je Zoe, zato sem znake narisala na milimetrski papir in jih nato pripisala v PORTB. Prve tri ničle niso pomembne, ker je povezanih le pet LED. Ena v enem od preostalih petih presledkov označuje, da je LED vklopljena, nič, izklopljena. _dey_ms (x); // zamuda v milisekundah PORTB = ~ 0b00010011; _dey_ms (x); PORTB = ~ 0b00010101; _dey_ms (x); PORTB = ~ 0b00011001; _dey_ms (x); PORTB = ~ 0b00010001; _dey_ms (x); dispClear (); // Odprt prostor med znaki _delay_ms (x); PORTB = ~ 0b00001110; _dey_ms (x); PORTB = ~ 0b00010001; _dey_ms (x*3); PORTB = ~ 0b00001110; _dey_ms (x); dispClear (); _dey_ms (x); PORTB = ~ 0b00011111; _dey_ms (x); PORTB = ~ 0b00010101; _dey_ms (x); PORTB = ~ 0b00010001; _dey_ms (x); dispClear (); _dey_ms (x*5); // Beseda je narejena tako, da zaradi jasnosti imam več prostora med besedami}} Sledite navodilom na strani 4, da sestavite to kodo in jo pošljete v AVR.

2. korak: Luč za torbico

Luč za torbico
Luč za torbico
Luč za torbico
Luč za torbico

Drugi deli x2 LED diode NON DIFUZIRANE (RadioShack) Ta projekt gladko zbledi med dvema LED diodama. Moja mama je želela, da bi šla v torbico nekaj, kar bi ji pomagalo videti čebelo ponoči. Zdelo se mi je, da utripajoča luč na kolesu pritegne preveč pozornosti, zato sem to naredil. Uporablja PWM (Pulse Width Modulation), ki daje učinek zatemnitve in posvetlitve. V resnici se dogaja, da LED utripa hitreje, kot lahko oko vidi v različnih časovnih presledkih, da simulira spremembo. To lahko vidite bolj jasno, ko ga pomahate v obraz, kot bi to storili z utripajočim imenom. Kodo lahko prenesete na koncu te strani. Glejte stran 4 o tem, kako prevesti v AVR. Namesto komentiranja kode bom na kratko razložil koncept. PWM generira časovnik. Vsak časovnik šteje eno. Ko doseže določeno vrednost (v tem primeru OCR1B), spremeni stanje zatiča (v tem primeru OC1B). Da bi se LED -diode "izklopile", sem drugo ožičil na [nasprotno] OC1B (to pomeni črta na vrhu). Nato uporabimo x za povečanje in zmanjšanje časa za vklop LED.

3. korak: Barvni drsnik

Barvni drsnik
Barvni drsnik
Barvni drsnik
Barvni drsnik

Druge LED lučke Partsx1 RGB (bolj razpršene) (RadioShack) To je zame klasika. Vedno so me fascinirale takšne luči in se mi zdijo zelo pomirjujoče, zato sem si jih seveda želel narediti. Tudi njihova prepoznavnost v družbi jim daje pravi faktor WOW. "Si to naredil ?!" Koda je skoraj enaka in po mojem mnenju lažja za branje. Lahko prenesete na dnu. Tokrat nudimo PWM -pin za vsak ozemljitveni zatič na LED RGB. Na ta način ozemljimo čip. Volte lahko merimo kot razliko med dvema točkama. 3v-0v = 3v 5v-2v = 3v *** 3v-3v = 0v *** Ta zadnji primer počnemo, ko ozemljimo čip. Ko so na obeh straneh tri volti, na primer ni dovolj voltov za pogon LED. Zato smo za bledenje med barvami izbrali barvo in drugo barvo. Eno nastavite na x, drugo pa na 255-x ali obratno x. Tako kot smo delali v prejšnjem projektu. Zdaj pojdite na korak 4 za programiranje.

4. korak: programiranje

Programiranje
Programiranje

Najprej prenesite in namestite Emacs, avr-gcc in Avrdude ter morebitne odvisnosti. V Arch linuxu sem to naredil z: sudo pacman -Sy emacs avrdude

Zdaj je čas, da svoj programer priključite na svoj avr. Nožice na 6-polnem programerju ISP (slika spodaj) povežite s sorodnimi zatiči na vašem AVR-ju (podatkovni list, stran 2) (to sem naredil na plošči). Zdaj priključite programer v računalnik in se ZELO HITRO dotaknite vrha AVR. Če je vroče, ODKLOPITE PROGRAMER IZ RAČUNALNIKA JEDNOM preverite svoje povezave in poskusite znova (Napajanje in Gnd nazaj?). Če ni vroče, odprite emacs in pritisnite Ctl-x Ctl-f, da poiščete datoteko.c. Odprite ga, nato pritisnite Meta (Običajno Alt) -x in vnesite compile. Dvakrat pritisnite enter in če imate srečo, bi moral vaš AVR zdaj izvajati vašo kodo! Hvala za branje! Upam, da ste uživali in se kaj naučili. Prosim, ne oklevajte pri postavljanju vprašanj in ne pozabite objaviti fotografij, ki ste jih pripravili. Vesele praznike in ne pozabite glasovati!

Priporočena: