Агуулгын хүснэгт:
2025 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2025-01-23 15:00
Жил бүр амралтын улирал өнгөрч, найз нөхөд, гэр бүлийнхэндээ юу өгөхөө мэдэхгүй гацдаг. Хүмүүс энэ бэлгийг дэлгүүрээс худалдаж авснаас өөрөө хийх нь дээр гэж үргэлж хэлдэг, энэ жил би үүнийг хийсэн. Эхнийх нь агаарт долгион хийх үед нэр эсвэл үндсэн дүрсийг харуулдаг, хоёр дахь нь хоёр цагаан гэрлийн хооронд жигд бүдгэрдэг (Энэ нь хувцас эсвэл түрийвч дээр бэхлэх аюулгүйн зүүтэй байдаг), гурав дахь нь сэтгэл хөдлөлийн гэрэл юм. өнгөний хооронд саадгүй. Бүгд 15 доллараас доош үнэтэй бөгөөд нэг цаг хүрэхгүй хугацаанд угсрахад хялбар байдаг. Та мөн эдгээр заавар болон эд ангиудыг электроник сурах сонирхолтой хүнд бэлэг болгон өгч болно.
Тэмдэглэл: Гагнуурын үндсэн түвшинг тооцно. Гэсэн хэдий ч миний өмнөх зааварчилгаанаас ялгаатай нь би AVR -ийг хэрхэн програмчлах талаар тайлбарлах болно. Энэ нь электроникийн чиглэлээр ажиллаж эхлэх гэж байгаа хүмүүст тусална гэж найдаж байна. Би тэнд байхдаа хэзээ нэгэн цагт санаж байсан бөгөөд таны асуусан асуултанд хариулахдаа баяртай байх болно. Тэнэг асуулт байхгүй гэдгийг санаарай! Миний зурсан энгийн хэлхээг харуулах шинэ аргыг гаргаж ирнэ гэж найдаж, цахилгаан самбараа хэрхэн яаж байрлуулахаа тодорхойлохыг би танд нээлттэй үлдээсэн. Хийж дууссаныхаа дараа зураг оруулна уу, би юу бодож олохыг тэсэн ядан хүлээж байна! Бүх төслийн хэсгүүд N = төслийн тоо x N ATTiny45 (www.digikey.com) x N 8 зүү DIP сокет (RadioShack) x 1 Том Perf Board (Би RadioShack -д эзэмшсэн) x N 3v Зоосны зай ба эзэмшигч (RadioShack) x1 Программист (би үүнийг ашигладаг бөгөөд нийлүүлсэн makefile нь үүнийг ашиглахаар тохируулагдсан болно) x2 N резистор, нэг нь 10 ом ба нэг 10к Ом (RadioShack) Гурван дууссан төслийн зургийг энд харуулав.
Алхам 1: Нэрийг гялалзуулагч
Бусад эд анги x5 DIFFUSED 3мм -ийн LED (RadioShack) Энэхүү төсөл нь алсын хараатай байдлыг ашиглан зураг эсвэл текстийг хурдан хөдөлгөж харуулдаг. Харанхуй болсон үед илүү сайн ажилладаг. AVR -ийн тусламжтайгаар бид LED -ийн хооронд илүү хурдан шилжиж, дараа нь нүд маш бага бүрэлдэхүүн хэсгүүдтэй агаарт зураг үүсгэх боломжтой болно. Код: (код, makefile гэх мэт хуудасны доод талд байгаа.zip файлыг татаж аваарай. Энэ код нь энэ кодын талаар өргөн хүрээтэй тайлбар агуулаагүй боловч хэрэв энэ код ажиллахгүй бол, доторх файлыг туршиж үзээрэй. zip файл)) #define F_CPU 1000000 #include #include void dispClear () {PORTB = ~ 0b00000000; } int main () {DDRB = 0xFF; // Давхар ташуу зураас өмнө C үсэг огт уншиж үзээгүй хүмүүсийн хувьд сэтгэгдлийг илэрхийлнэ. Энэ нь avr -ийн тээглүүрийг char x = 10 гаралт болгон тохируулдаг; // x нь хоцролтыг тохируулахад хэрэглэгддэг. Утга нэмэгдэх нь пиксел хооронд удаан шилжих, буурах, бага байхад (1) // While (нөхцөл үнэн); {Үүнийг хий} (C хэл дээр үнэн нь 1 байна) {PORTB = ~ 0b00010001; // Миний найзыг Зое гэдэг болохоор дүрүүдийг цаасан дээр зураад дараа нь PORTB -д оруулсан. Эхний гурван тэг нь хамаагүй, учир нь зөвхөн таван лед холбогдсон байдаг. Үлдсэн таван орон зайны нэг нь LED асаалттай, тэг, унтраалттай байгааг харуулж байна. _хойшлох_ms (x); // милисекундын саатал PORTB = ~ 0b00010011; _хойшлох_ms (x); PORTB = ~ 0b00010101; _хойшлох_ms (x); PORTB = ~ 0b00011001; _хойшлох_ms (x); PORTB = ~ 0b00010001; _хойшлох_ms (x); dispClear (); // _delay_ms (x) тэмдэгтүүдийн хоорондох нээлттэй зай; PORTB = ~ 0b00001110; _хойшлох_ms (x); PORTB = ~ 0b00010001; _хойшлох_ms (x*3); PORTB = ~ 0b00001110; _хойшлох_ms (x); dispClear (); _хойшлох_ms (x); PORTB = ~ 0b00011111; _хойшлох_ms (x); PORTB = ~ 0b00010101; _хойшлох_ms (x); PORTB = ~ 0b00010001; _хойшлох_ms (x); dispClear (); _хойшлох_см (x*5); // Энэ үгийг ойлгомжтой байдлаар хийсэн тул надад үгсийн хооронд илүү том зай байна}} 4 -р хуудсан дээрх зааврыг дагаж энэ кодыг эмхэтгэн AVR руу илгээнэ үү.
Алхам 2: Түрийвчний гэрэл
Бусад эд анги x2 LED -ийн DIFFUSUS (RadioShack) Энэ төсөл нь хоёр LED -ийн хооронд жигд алга болно. Ээж минь шөнийн цагаар зөгий үзэхэд нь туслахын тулд цүнхэндээ ямар нэгэн зүйл хийхийг хүсч байсан. Дугуйны гэрэл анивчих нь хэт их анхаарал татах шиг санагдсан тул үүнийг хийлээ. Энэ нь PWM (Pulse Width Modulation) -ийг ашиглан бүдэгрүүлж, гэрэлтүүлэх нөлөө үзүүлдэг. Үнэн хэрэгтээ юу болж байгаа нь өөрчлөлтийг дуурайхын тулд өөр өөр интервалтайгаар нүд нь харж байгаагаас илүү хурдан анивчдаг. Та үүнийг нэрээ асаахтай адил нүүрээ даллаж байхдаа илүү тодорхой харж чадна. Кодыг энэ хуудасны төгсгөлд татаж авах боломжтой. AVR -ийг хэрхэн хөрвүүлэх талаар 4 -р хуудсыг үзнэ үү. Энд код бичихийн оронд би энэ ойлголтыг товч тайлбарлах болно. ХОУХ -ийг таймер ашиглан үүсгэдэг. Цагны мөчлөг бүрт таймер нэгийг тоолно. Энэ нь тодорхой утгад хүрэхэд (энэ тохиолдолд OCR1B) зүүний төлөвийг өөрчилдөг (энэ тохиолдолд OC1B). LED -ийг "унтрааж" авахын тулд би нөгөөг нь [OPPOSITE] OC1B руу залгасан (Энэ нь дээд талын баар гэсэн үг юм). Дараа нь бид LED -ийг асаах хугацааг нэмэгдүүлэхийн тулд x -ийг ашигладаг.
Алхам 3: Өнгө гүйлгэх
Бусад Partsx1 RGB LED (сарнисан нь дээр) (RadioShack) Энэ бол миний хувьд сонгодог зүйл юм. Би үргэлж ийм гэрлийг сонирхож байсан бөгөөд маш тайвширдаг байсан болохоор би үүнийг хийхийг хүсч байсан. Нийгэмд тэдний харагдах байдал нь тэдэнд жинхэнэ WOW хүчин зүйлийг өгдөг. "Та үүнийг хийсэн үү?" Код нь бараг адилхан бөгөөд миний бодлоор уншихад илүү хялбар байдаг. Та доороос татаж авах боломжтой. Энэ удаад бид RGB LED дээрх газардуулгын зүү тус бүрт ХОУХ -ны зүү өгч байна. Ийм байдлаар бид чипээр дамжуулж газарддаг. Вольтыг хоёр цэгийн зөрүүгээр хэмжиж болно. 3v-0v = 3v 5v-2v = 3v *** 3v-3v = 0v *** Энэ хамгийн сүүлийн жишээ бол бичил схемээр дамжин өнгөрөх үед хийж буй зүйл юм. Хоёр талдаа гурван вольт байхад LED -ийг удирдахад хангалттай вольт байдаггүй. Тиймээс өнгөний хооронд бүдгэрэхийн тулд бид өөр өнгө сонгов. Нэгийг x-тэй тэнцүү, нөгөөг нь 255-x буюу INVERSE x-тэй тэнцүү болгоно. Өмнөх төсөл дээр бид хийж байсан шиг. Одоо програмчлах 4 -р алхам руу орно уу.
Алхам 4: Програмчлал
Эхлээд Emacs, avr-gcc, Avrdude-ийг татаж аваад суулгаарай. Arch linux дээр би үүнийг хийсэн: sudo pacman -Sy emacs avrdude
Одоо програмистаа avr руу холбох цаг болжээ. 6 зүү ISP програмист дээрх зүүг (доорх зураг) AVR дээрх өгөгдлийг холбох өгөгдлүүд рүү холбоно уу (Өгөгдлийн хуудас, хуудас 2) (Би үүнийг талхны самбар дээр хийсэн). Одоо програмистыг компьютерт холбоод AVR -ийн дээд хэсэгт маш хурдан хүрнэ үү. Хэрэв халуун байвал програмыг нэг удаа компьютерээсээ салгаад холболтоо шалгаад дахин оролдоно уу (Power and Gnd арагшаа?). Хэрэв энэ нь халуун биш бол emacs-ийг нээж Ctl-x Ctl-f дарж cc файлыг олоорой. Үүнийг нээгээд дараа нь Meta (Usualy Alt) -x дарж compile гэж бичнэ үү. Enter дээр хоёр удаа дарна уу, хэрэв танд аз таарсан бол таны AVR кодоо ажиллуулах болно! Уншсанд баярлалаа! Танд таалагдаж, ямар нэгэн зүйл сурсан гэж найдаж байна. Асуулт асуухаас бүү эргэлзээрэй, гарч ирсэн зүйлийнхээ зургийг оруулахаа бүү мартаарай. Баярын мэнд хүргэе, саналаа өгөхөө бүү мартаарай!
Зөвлөмж болгож буй:
Ой тогтоогч - Христийн Мэндэлсний Баярын бэлэг: 8 алхам (зурагтай)
Ой тогтоогч - Христийн Мэндэлсний Баярын бэлэг: Ciao a tutti! Natala -д зочлохдоо маш их зүйлийг хийх шаардлагатай болно. Хяналтын хугацаа дуусах тусам маш хэцүү байдаг
Arduino/1sheeld ашиглан Эх үрсийн баярын бэлэг: 6 алхам
Arduino/1sheeld ашиглан эхчүүдэд зориулсан бэлэг багаж хэрэгсэл, даавуу, гэрийн хэрэгсэл
Баярын бэлэг хайрцаг: 5 алхам (зурагтай)
Баярын бэлгийн хайрцаг !: Хэрэв та цахилгаан хэрэгсэлд дуртай хүнийг мэддэг бол энэ бол тэдний хувьд гайхалтай бэлэг хайрцаг юм! Энэхүү гарын авлагад та гар хийцийн хайрцаг хийх бөгөөд хөгжим тоглож, сэгсрэх үед гэрэлтдэг. Танд хэрэгтэй зүйл бол: Adafruit GEMMA M0 - Бяцхан элэгддэг электрон
Зул сарын баярын нээлттэй бэлэг: 5 алхам
Нээлттэй улирлын зул сарын бэлэг: Нээлттэй контент бүхий програм хангамж, хөгжим, кино бүхий USB зөөгч нь эцсийн мөчийн бэлгийг өгдөг
Өөрөө бэлэг болгон өгдөг гар хийцийн баярын гэрэл зургийн карт: 8 алхам
Өөрийнхөө гараар хийсэн баярын гар зургийн карт!: Энэхүү зааварчилгаа нь өвөрмөц картны багцыг хэрхэн яаж хийхийг танд харуулах болно, үүнийг баярын улирал дууссаны дараа хүлээн авагчид багтааж болно. карттай хамт IKEA клипний зургийн жааз. Эдгээр картууд нь