Мазмуну:
Video: 3 Easy ATTiny майрамдык белектери: 4 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:44
Жыл сайын каникул мезгили айланып, досторума жана үй -бүлөмө эмне берүүнү билбей калам. Элдер дайыма белекти дүкөндөн сатып алгандан көрө, өзүң жасаган жакшы деп айтышат, ошондуктан быйыл мен так ошондой кылдым. Биринчиси абада толкундаганда ысымды же негизги сүрөттү көрсөтөт, экинчиси эки ак жолчунун ортосунда жылмакай өчөт (Ошондой эле аны кийимге же капчыкка тагуу үчүн коопсуздук пини бар), үчүнчүсү маанайдын жарыгы, жылдыруу түстөр ортосунда үзгүлтүксүз. Баары 15 доллардан төмөн жана бир саатка жетпей монтаждалат. Сиз ошондой эле бул көрсөтмөлөрдү жана бөлүктөрдү электрониканы үйрөнүүгө кызыккан адамга белек катары бере аласыз.
Эскертүү: ширетүүнүн негизги деңгээли кабыл алынат. Бирок, мурунку көрсөтмөлөрүмдөн айырмаланып, мен AVRди кантип программалоону түшүндүрөм. Мен чындап эле бул электрониканы баштоого аракет кылып жаткан адамдарга жардам берет деп үмүттөнөм. Мен ал жерде болгонумду эстейм жана сизди кызыктырган суроолорду берүүгө кубанычта болом. Эч кандай акылсыз суроолор жок экенин унутпаңыз! Мен сиз тарткан жөнөкөй схемаларды көрсөтүүнүн жаңы жолун ойлоп табасыз деп, электр тактаңызды кантип жайып салууну аныктоону сизге ачык калтырдым. Сураныч, бүткөндөн кийин сүрөттөрдү коюңуз, мен ойлоп жатканымды күтө албайм! Долбоорлордун бардык бөлүктөрү N = долбоорлордун саны x N ATTiny45 (www.digikey.com) x N 8-пин DIP розеткасы (RadioShack) x 1 Large Perf Board (Мен RadioShack -те меники бар) x N 3v Монета Клеткасынын Батареясы жана кармагычы (RadioShack) x1 Программист (мен муну колдоном жана берилген makefile муну колдонуу үчүн конфигурацияланат) x2 N Резисторлор, бир 10 ом жана бир 10k ohm (RadioShack) Бул жерде үч бүткөн долбоордун сүрөтү келтирилген:
1 -кадам: Аты -жөнү
Башка бөлүктөр x5 DIFFUSED 3мм диоддору (RadioShack) Бул долбоор тез жылганда сүрөттү же текстти көрсөтүү үчүн көрүүнүн туруктуулугун колдонот. Караңгы болгондо жакшы иштейт. AVR менен биз LED диоддорун тезирээк алмаштырып жатабыз, анда биз көрө алабыз, биз абада өтө аз компоненттери бар сүрөттү түзө алабыз. Код: (код, makefile ж.б. үчүн беттин ылдый жагындагы.zip файлын жүктөп алыңыз. Бул коддо бул коддо кеңири комментарийлер жок, бирок эгер бул код иштебесе, анда zip file)) #define F_CPU 1000000 #include #include void dispClear () {PORTB = ~ 0b00000000; } int main () {DDRB = 0xFF; // Сиди эч качан окубагандар үчүн, кош сызык комментарийди көрсөтөт. Бул аврдын казыктарын x = 10 чыгаруу чарасы катары белгилейт; // x кечигүүнү орнотуу үчүн колдонулат. Маанини жогорулатуу пикселдердин ортосунда жайыраак өтүүнү, азаюуну, бир аз болсо дагы (1) // While (шарты туура); {Муну кыл} (Cде 1 туура) {PORTB = ~ 0b00010001; // Менин досумдун аты Зое, ошондуктан мен каармандарды графикалык кагазга түшүрүп, анан PORTBге киргиздим. Биринчи үч нөлдүн мааниси жок, анткени беш гана лед туташкан. Калган беш мейкиндиктин биринде LED күйүк, нөл, өчүк экенин көрсөтөт. _ кечиктирүү (x); // милисекунддарда кечигүү PORTB = ~ 0b00010011; _ кечиктирүү (x); PORTB = ~ 0b00010101; _ кечиктирүү (x); PORTB = ~ 0b00011001; _ кечиктирүү (x); PORTB = ~ 0b00010001; _ кечиктирүү (x); dispClear (); // _delay_ms (x) белгилеринин ортосундагы боштук; PORTB = ~ 0b00001110; _ кечиктирүү (x); PORTB = ~ 0b00010001; _ кечиктирүү (x*3); PORTB = ~ 0b00001110; _ кечиктирүү (x); dispClear (); _ кечиктирүү (x); PORTB = ~ 0b00011111; _ кечиктирүү (x); PORTB = ~ 0b00010101; _ кечиктирүү (x); PORTB = ~ 0b00010001; _ кечиктирүү (x); dispClear (); _delay_ms (x*5); // Сөз ушунчалык көрөгөчтүк үчүн жасалды Менде сөздөрдүн арасында чоңураак жер бар}} Эми 4 -беттеги көрсөтмөлөрдү аткарып, бул кодду түзүп, AVRге жөнөтүңүз.
2 -кадам: Капчыктын жарыгы
Башка бөлүктөр x2 LEDдин ЭМЕС Диффузияланбаган (RadioShack) Бул долбоор эки LEDдин ортосунда бир калыпта өчөт. Апам капчыгына түн ичинде көрүүгө жардам берүү үчүн бир нерсе алгысы келген. Мен велосипеддин жарыгы өтө көп көңүл бура тургандыгын сездим, ошондуктан мен муну жасадым. Бул PWM (Pulse Width Modulation) колдонуп, күңүрт жана жарыктандыруучу эффект берет. Чындыгында болуп жаткан нерсе, өзгөрүүнү окшоштуруу үчүн, LED ар кандай аралыкта көзгө караганда тезирээк жарк этип жатат. Сиз муну Аты жаркылдатуудагыдай бетиңизге шилтегенде дагы даана көрө аласыз. Кодду бул баракчанын аягында жүктөп алсаңыз болот. AVRге кантип компиляциялоо керек 4 -бетти караңыз. Бул жерде кодду комментарийлөөнүн ордуна мен түшүнүктү кыскача түшүндүрүп берем. PWM таймер тарабынан түзүлөт. Ар бир сааттын цикли таймерди бирден санап турат. Белгилүү бир мааниге жеткенде (Бул учурда OCR1B) ал пиндин абалын өзгөртөт (Бул учурда OC1B). Светодиоддорду "өчүрүү" үчүн мен экинчисин [OPPOSITE] OC1B менен байланыштырдым (Жогорудагы тилке ушуну билдирет). Андан кийин биз LEDди күйгүзүү үчүн убакытты көбөйтүү жана азайтуу үчүн x колдонобуз.
3 -кадам: Color Scroller
Башка Partsx1 RGB LED (чачырандысы жакшы) (RadioShack) Бул мага классика. Мен ар дайым ушундай чырактарга берилип кеттим жана аларды абдан тынчтандыруучу деп табам, ошондуктан мен аны жасагым келди. Ошондой эле алардын коомдогу көрүнүшү аларга чыныгы WOW факторун берет. "Сен муну кылдыңбы ?!" Код дээрлик бирдей жана менин оюмча, окуу оңой. Төмөнкү жактагы жүктөп алсаңыз болот. Бул жолу биз RGB светодиодундагы ар бир жерге туташтыруу үчүн PWM'дин пинин камсыздайбыз. Ушундай жол менен биз чип аркылуу жерге түшөбүз. Вольтту эки чекиттин айырмасы катары ченесе болот. 3v-0v = 3v 5v-2v = 3v *** 3v-3v = 0v *** Бул акыркы мисал, биз чип аркылуу жерге түшкөндө эмне кылып жатабыз. Эки тарапта тең үч вольт болгондо, айталы, светодиодду иштетүү үчүн вольт жетишсиз. Ошентип, түстөрдүн арасында өчүү үчүн биз түс менен башка түстү тандап алдык. Бирин xке, экинчисин 255-xке же INVERSE xке барабар кылыңыз. Биз мурунку долбоордо болгон сыяктуу. Эми программалоо үчүн 4 -кадамга өтүңүз.
4 -кадам: Программалоо
Алгач Emacs, avr-gcc жана Avrdude жана алар ээ болгон бардык көз карандылыктарды жүктөп алып, орнотуңуз. Arch linuxта мен муну менен кылдым: sudo pacman -Sy emacs avrdude
Эми программистиңизди avrга туташтыра турган убак келди. 6-pin ISP программистиндеги казыктарды (төмөндөгү сүрөттө) AVR'иңиздеги коросподинциялоочу казыктарга туташтырыңыз (Маалыматтар баракчасы, 2-бет) (Мен муну нан тактасында жасадым). Эми программистти компьютериңизге туташтырыңыз жана AVRдин үстүнө абдан тез тийиңиз. Эгерде ал ысык болсо, ПРОГРАММЕРДИ КОМПЬЮТЕРИҢДЕН БИР БЕРИҢИЗ, туташууларыңызды текшерип, кайра аракет кылыңыз (Power жана Gnd артка?). Эгерде ал ысык болбосо, анда emacs ачыңыз жана.t файлын табуу үчүн Ctl-x Ctl-f басыңыз. Аны ачып, андан кийин Meta (Usualy Alt) -x басып, compile териңиз. Enterди эки жолу басыңыз, эгер сиз бактылуу болсоңуз, анда AVR азыр кодуңузду иштетиши керек! Окуганыңыз үчүн рахмат! Сизге жакты жана бир нерсе үйрөндүңүз деп үмүттөнөм. Сураныч, суроо берүүдөн тартынбаңыз жана ойлоп тапканыңыздын сүрөттөрүн жарыялоону унутпаңыз. Майрамыңыздар менен жана добуш берүүнү унутпаңыз!
Сунушталууда:
Ардуино: Ырдоо Туулган күн белектери: 14 кадам
Ардуино: Ырдоо Туулган Куту белектери үчүн: Бул Ырдаган Туулган Кутуча туулган күн белектерин таңгактоо максатында жасалган, анын жардамы менен Ардуино атайын функцияларды камсыз кылат, анын ичинде LED шамды ырдоо жана жарыктандыруу. Туулган күн ырын ырдоо жана LED лампаларын күйгүзүү жөндөмдөрү менен
Жеңил LED майрамдык жарык шоусу: Кышында сыйкырчылар - FastLED жана Arduino үйрөткүчү менен WS2812B LED тилкеси: 6 кадам
Жеңил LED майрамдык жарык шоусу: Кышында сыйкырчылар | WS2812B LED Strip FastLED жана Arduino үйрөткүчү менен: Мен бул майрамдык жарык шоуну каалаган жерде көрсөтүү үчүн иштеп чыктым жана программаладым. Мен 30 пиксель/ метр пикселдик тыгыздыгы бар бир WS2812B лентасын колдондум. Мен 5 метрди колдонгондон бери менде жалпысынан 150 светодиод бар болчу. Мен кодду жөнөкөй сактадым, ошондуктан WS2812ди жаңы колдонуп жаткандардын баары
LED майрамдык терезе жасалгасы: 13 кадам
LED Майрамдык Терезенин Декорациясы: Менин досум майрамдык терезени LED тилкеси менен жасалгалоо бекер экенин айтты. Жалпысынан алганда, майрам бир нече күнгө созулат, андыктан аны бир нече күндөн кийин бөлүп, алып салыш керек. Экинчи ойлоп көрсөм, бул чындык. Бул жолу, мен каалайм
Майрамдык орнамент ПХБ: 3 кадам (Сүрөттөр менен)
Майрамдык жасалгалоо ПКБ: Эй баарына! Анын ошол мезгили жана белек алмашуу мезгили дээрлик жакындап калды. Мен жеке нерселерди жасап, үй -бүлө менен бөлүшүүнү жактырам. Бул жылы мен Atting85ти жана WS2812C 20ны колдонуп майрамдык жасалгаларды жасоону чечтим
ATTiny 85 Майрамдык кыл чырактары: 5 кадам
ATTiny 85 Майрамдык String Lights: eBayди кыдырып жүргөндө, мен WS2811 чипин колдонгон 50 даректүү LED диапазонуна туш келдим, бирок алар чындап эле перилердин жарыгы катары колдонулган деп ойлобойм, алар жакшы иштейт жана алар укмуштай көрүнөт. дарак Ошондой эле мүмкүн болмок