Talaan ng mga Nilalaman:

3 Madaling Mahusay na Regalo sa Holiday: 4 na Hakbang
3 Madaling Mahusay na Regalo sa Holiday: 4 na Hakbang

Video: 3 Madaling Mahusay na Regalo sa Holiday: 4 na Hakbang

Video: 3 Madaling Mahusay na Regalo sa Holiday: 4 na Hakbang
Video: Secret Intelligent. Paano mo Malalaman na IKAW ay LIHIM na MATALINO? 2024, Nobyembre
Anonim
3 Madaling ATTiny Holiday Regalo
3 Madaling ATTiny Holiday Regalo

Taon-taon ang pag-ikot ng kapaskuhan at natigil ako sa kung ano ang ibibigay para sa aking mga kaibigan at pamilya. Palaging sinasabi ng mga tao na mas mahusay na gawin ang regalo sa iyong sarili kaysa bilhin ito sa isang tindahan kaya sa taong ito ginawa ko iyon. Ang una ay nagpapakita ng isang pangalan o pangunahing imahe kapag kumaway sa hangin, ang pangalawang fades maayos sa pagitan ng dalawang puting led (Mayroon din itong safety pin upang ilakip ito sa mga damit o isang pitaka), at ang pangatlo ay isang light light ng mga uri, pag-scroll walang putol sa pagitan ng mga kulay. Ang lahat ay mas mababa sa $ 15 at madaling magtipun-tipon nang mas mababa sa isang oras. Maaari mo ring ibigay ang mga tagubiling ito pati na rin ang mga bahagi bilang isang regalo sa isang taong interesadong malaman ang electronics.

Tandaan: Ipinapalagay ang isang pangunahing antas ng paghihinang. Gayunpaman, hindi katulad ng dati kong itinuturo na makikita ko sa kung paano mag-program ng isang AVR. Inaasahan ko talaga na makakatulong ito sa mga taong sumusubok na makapagsimula sa electronics. Naaalala ko noong nandoon ako at magiging masaya na kumuha ng anumang mga katanungan na maaaring mayroon ka. Tandaan na walang mga hangal na katanungan! Iniwan ko itong bukas sa iyo upang matukoy kung paano mo ilalagay ang iyong circuit board sa pag-asa na makakakuha ka ng isang bagong paraan ng pagpapakita ng mga simpleng circuit na inilabas ko. Mangyaring mag-post ng mga larawan kapag tapos ka na, hindi ako makapaghintay upang makita kung ano ang iyong naiisip! Mga Bahagi para sa Lahat ng Mga Proyekto N = bilang ng mga proyekto x N ATTiny45 (www.digikey.com) x N 8-pin DIP socket (RadioShack) x 1 Malaking Perf Board (Nakuha ko ang sa RadioShack) x N 3v Coin Cell Battery at may hawak (RadioShack) x1 Programmer (Ginagamit ko ito at ang naibigay na makefile ay mai-configure upang magamit ang isang ito) x2 N Resistors, isang 10 ohm at isang 10k ohm (RadioShack) Narito ang isang larawan ng tatlong nakumpletong proyekto:

Hakbang 1: Ang Pangalan ng Flasher

Ang Pangalang Flasher
Ang Pangalang Flasher
Ang Pangalang Flasher
Ang Pangalang Flasher
Ang Pangalang Flasher
Ang Pangalang Flasher

Iba Pang Mga Bahagi x5 DIFFUSED 3mm LED's (RadioShack) Ang proyektong ito ay gumagamit ng pagtitiyaga ng paningin upang ipakita ang isang imahe o teksto kapag mabilis na inilipat. Mas gumana ito kapag madilim. Sa AVR lumilipat kami sa pagitan ng mas mabilis ng LED pagkatapos ay makikita ng mata na makakalikha tayo ng isang larawan sa hangin na may napakakaunting mga sangkap. Ang Code: (I-download ang.zip file sa ilalim ng pahina para sa code, makefile, atbp. (Ang code na iyon ay walang malawak na mga puna na ginagawa ng code na ito ngunit kung hindi gagana ang code na ito, subukan ang isa sa zip file)) #define F_CPU 1000000 # isama ang #include void dispClear () {PORTB = ~ 0b00000000; } int main () {DDRB = 0xFF; // Para sa iyo na hindi pa nababasa ang C bago ang dobleng slash ay nagpapahiwatig ng isang komento. Itinatakda nito ang mga pin ng avr bilang isang output char x = 10; // x ay ginagamit upang itakda ang pagkaantala ng legnth. Ang pagdaragdag ng halaga ay magbibigay ng isang mabagal na paglipat sa pagitan ng mga pixel, pagbawas, isang mas mababang habang (1) // Habang (totoo ang kondisyon); {Gawin Ito} (Totoo sa C ay 1) {PORTB = ~ 0b00010001; // Ang pangalan ng aking kaibigan ay Zoe kaya inilabas ko ang mga character sa graph paper at pagkatapos ay ibinilang sa PORTB. Hindi mahalaga ang unang tatlong zero sapagkat may limang konektadong led lamang. Ang isa sa isa sa natitirang limang puwang ay nagpapahiwatig na ang LED ay naka-on, isang zero, naka-off. _delay_ms (x); // pagkaantala sa miliseconds PORTB = ~ 0b00010011; _delay_ms (x); PORTB = ~ 0b00010101; _delay_ms (x); PORTB = ~ 0b00011001; _delay_ms (x); PORTB = ~ 0b00010001; _delay_ms (x); dispClear (); // Buksan ang puwang sa pagitan ng mga character _delay_ms (x); PORTB = ~ 0b00001110; _delay_ms (x); PORTB = ~ 0b00010001; _delay_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 (); _delay_ms (x * 5); // Ang salita ay tapos na para sa clairity Mayroon akong isang mas malaking puwang sa pagitan ng mga salita}} Ngayon sundin ang mga tagubilin sa pahina 4 upang maipon ang code na ito at ipadala ito sa iyong AVR.

Hakbang 2: Ang Liwanag ng Purse

Ang Liwanag ng Purse
Ang Liwanag ng Purse
Ang Liwanag ng Purse
Ang Liwanag ng Purse

Ang Ibang Mga Bahagi x2 LED's NON DIFFUSED (RadioShack) Ang proyektong ito ay maayos na kumukupas sa pagitan ng dalawang LED. Ang aking ina ay nais ng isang bagay na pupunta sa kanyang pitaka upang matulungan ang kanyang bubuyog na nakikita sa gabi. Naramdaman kong ang isang kumikislap na ilaw ng bisikleta ay makakakuha ng labis na pansin kaya't nagawa ko ito. Gumagamit ito ng PWM (Pulse Width Modulation) upang mabigyan ang epekto ng paglabo at pag-brighten. Ang totoong nangyayari ay ang led ay mabilis na kumikislap kaysa sa nakikita ng mata sa iba't ibang agwat upang gayahin ang isang pagbabago. Maaari mong makita ito nang mas malinaw kapag tinawag mo ito sa iyong mukha tulad ng nais mong Pangalan Flasher. Maaaring ma-download ang code sa dulo ng pahinang ito. Tingnan ang pahina 4 sa kung paano sumulat sa iyong AVR. Sa halip na magkomento ng code dito ay maikling ipapaliwanag ko ang konsepto. Ang PWM ay nabuo ng isang timer. Ang bawat pag-ikot ng orasan ay binibilang ng timer ang isa. Kapag naabot nito ang isang tiyak na halaga (Sa kasong ito OCR1B) binabago nito ang estado ng isang pin (Sa kasong ito OC1B). Upang makuha ang "pag-patay" ng mga LED ay nag-wire ako ng isa pa sa [OPPOSITE] OC1B (Iyon ang ibig sabihin ng bar sa tuktok). Pagkatapos ay ginagamit namin ang x upang madagdagan at mabawasan ang dami ng oras para sa mga LED.

Hakbang 3: Ang Kulay Scroller

Ang Color Scroller
Ang Color Scroller
Ang Color Scroller
Ang Color Scroller

Iba Pang Mga Bahagix1 RGB LED (diffuse ay mas mahusay) (RadioShack) Ito sa akin ay isang klasikong. Palagi akong na-fasin ng mga ilaw na tulad nito at nahanap ko ang mga ito napaka-kalmado kaya natural na nais kong gumawa ng isa. Gayundin ang kanilang kakayahang makita sa lipunan ay nagbibigay sa kanila ng isang tunay na kadahilanan ng WOW. "GINAWA mo yan ?!" Ang code ay halos pareho at, sa aking palagay, mas madaling basahin. Maaari mong i-download ang sa ibaba. Sa oras na ito ay nagbibigay kami ng isang PWM'd pin para sa bawat grounding pin sa RGB LED. Sa ganitong paraan dumadaan kami sa chip. Maaaring sukatin ang mga volt bilang pagkakaiba sa pagitan ng dalawang puntos. 3v-0v = 3v 5v-2v = 3v *** 3v-3v = 0v *** Ang huling pagkakataon na ito ang ginagawa namin kapag dumaan kami sa chip. Kapag may tatlong volts sa magkabilang panig, bawat sabi, walang sapat na volts upang magmaneho ng isang LED. Kaya upang mawala sa pagitan ng mga kulay pumili kami ng isang kulay at iba pang kulay. Itakda ang isang katumbas ng x at ang isa ay katumbas ng 255-x o ang INVERSE ng x. Tulad ng ginagawa namin sa nakaraang proyekto. Pumunta ngayon sa hakbang 4 upang mag-program.

Hakbang 4: Programing

Programing
Programing

Unang i-download at mai-install ang Emacs, avr-gcc, at Avrdude at anumang mga dependance na maaaring mayroon sila. Sa Arch linux nagawa ko ito sa: sudo pacman -Sy emacs avrdude

Ngayon ay oras na upang mai-hook ang iyong programmer sa iyong avr. I-wire ang mga pin sa 6-pin ISP programmer (larawan sa ibaba) sa mga corosponding pin sa iyong AVR (Datasheet, pahina 2) (Ginawa ko ito sa isang breadboard). I-plug in ngayon ang programmer sa iyong computer at NAPAKabilis na hawakan ang tuktok ng AVR. Kung ito ay mainit, TANGGALIN ANG PROGRAMMER MULA SA IYONG KOMPUTER SA sandaling suriin ang iyong mga koneksyon at subukang muli (Power at Gnd paatras?). Kung hindi ito mainit pagkatapos buksan ang mga emac at pindutin ang Ctl-x Ctl-f upang hanapin ang.c file. Buksan ito at pagkatapos ay pindutin ang Meta (Usualy Alt) -x at i-type ang compile. Pindutin ang ipasok nang dalawang beses at kung ikaw ay mapalad na ang iyong AVR ay dapat na tumatakbo ang iyong code! Salamat sa pagbabasa! Sana nagustuhan mo ito at may natutunan. Mangyaring, huwag mag-atubiling magtanong at huwag kalimutang mag-post ng mga larawan ng iyong naiisip. Maligayang bakasyon at huwag kalimutang bumoto!

Inirerekumendang: