Mundarija:
- 1 -qadam: Vivadoni sozlash
- 2 -qadam: VGA drayveri IP -ni qadoqlash
- 3 -qadam: Zynq IP
- 4 -qadam: GPIO IP
- 5 -qadam: Xotirani blokirovka qilish
- 6 -qadam: Boshqa IP
- 7 -qadam: SDK
- 8 -qadam: Xulosa
Video: Ko'zgu ko'rinishi: 8 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:26
Loyihaning maqsadi Smart Mirror tasvirini ko'rsatish funksiyasini yaratishdir. Oyna prognozlarni (quyoshli, qisman quyoshli, bulutli, shamolli, yomg'ir, momaqaldiroq va qor) va -9999 ° dan 9999 ° gacha bo'lgan harorat ko'rsatkichlarini aks ettirishi mumkin. Prognoz va harorat qiymatlari ularni ob -havo API -sidan ajratish kabi taqqoslaganda qattiq kodlangan.
Loyihada FreeRTOS bilan ishlaydigan Zynq-Zybo-7000 taxtasi ishlatiladi va uskunani loyihalash va dasturlash uchun Vivado 2018.2 ishlatiladi.
Qismlar:
Zynq-Zybo-7000 (FreeRTOS bilan)
19 dyuymli LCD (640x480)
VGA kabeli
12 "x 18" akril oynasi
1 -qadam: Vivadoni sozlash
Xilinx -dan Vivado 2018.2 -ni yuklab oling va Webpack litsenziyasidan foydalaning. Vivado va "Yangi loyiha yaratish" ni ishga tushiring va unga nom bering. Keyin "RTL loyihasi" ni tanlang va "Hozircha manbalarni ko'rsatmang" bandini belgilang. Qismni tanlashda "xc7z010clg400-1" -ni tanlang va keyingi sahifadagi "Finish" tugmasini bosing.
2 -qadam: VGA drayveri IP -ni qadoqlash
Vga_driver.sv faylini Dizayn manbalariga qo'shing. Keyin "Asboblar" ni bosing va "Yangi IP yaratish va paketlash" -ni tanlang. "Joriy loyihangizni to'plash" -ni tanlang. Keyin IP manzilini tanlang va ".xci fayllarini qo'shing". Ochilgan oynada "OK" ni bosing va keyin "Finish" ni bosing.
"Qadoqlash bosqichlari" bo'limida "Ko'rib chiqish va paketlash" bo'limiga o'ting va "Paket IP -ni" tanlang.
Endi vga_driver IP -blok sifatida mavjud bo'lishi kerak.
3 -qadam: Zynq IP
"IP -integrator" bo'limida "Blok dizaynini yaratish" -ni tanlang. "ZYNQ7 ishlov berish tizimi" ni qo'shing va blokni ikki marta bosing. "XPS sozlamalarini import qilish" ni bosing va ZYBO_zynq_def.xml faylini yuklang.
Keyin, "PS-PL konfiguratsiyasi" ostida "AXI xavfsiz bo'lmagan yoqish" ochiladigan ro'yxatini oching va "M AXI GP0 interfeysi" ni tekshiring.
Keyin, "MIO konfiguratsiyasi" ostida "Ilova protsessor birligi" ochiladigan ro'yxatini oching va "Taymer 0" va "qo'riqchi" ni tekshiring.
Va nihoyat, "Soat konfiguratsiyasi" ostida "PL mato soatlari" ochiladigan ro'yxatini oching va "FCLK_CLK0" va 100 MGts da tekshiring.
4 -qadam: GPIO IP
Blok dizayniga ikkita GPIO blokini qo'shing. GPIO -lar piksel manzili va piksellarning RGB komponentlarini boshqarish uchun ishlatiladi. Yuqoridagi rasmlarda ko'rsatilgandek bloklarni sozlang. Ikkala blokni qo'shgandan va sozlaganingizdan so'ng, "Ulanish avtomatizatsiyasini ishga tushirish" tugmasini bosing.
GPIO 0 - 1 -kanal piksel manzilini, 2 -kanal qizil rangni boshqaradi.
GPIO 1 - 1 -kanal yashil rangni, 2 -kanal esa ko'k rangni boshqaradi.
5 -qadam: Xotirani blokirovka qilish
Blok dizayniga blokli xotira generatori IP -ni qo'shing va yuqorida ko'rsatilgan tarzda sozlang. Piksel ranglari xotira manzillariga yoziladi, ularni VGA drayveri o'qiydi. Manzil chizig'i ishlatilayotgan piksellar soniga mos kelishi kerak, shuning uchun 16 bit bo'lishi kerak. Ma'lumotlar ham 16 bit, chunki 16 rangli bit mavjud. Tasdiq bitlarini o'qish bizni qiziqtirmaydi.
6 -qadam: Boshqa IP
Qo'shilgan pdf -da tugallangan bloklar dizayni ko'rsatilgan. Yo'qolgan IP -ni qo'shing va ulanishlarni yakunlang. Shuningdek, VGA rangli chiqishlari va vertikal va gorizontal sinxronlash chiqishlari uchun "Tashqi ko'rinishlarni yaratish".
xlconcat_0 - individual ranglarni birlashtiradi va 16 bitli RGB signalini hosil qiladi, bu esa blokli operativ xotiraga yuboriladi.
xlconcat_1 - VGA drayverining ustun va satr signallarini birlashtiradi va blokli RAMning B portiga uzatiladi. Bu VGA drayveriga piksel rang qiymatlarini o'qish imkonini beradi.
VDD - Doimiy HIGH blokli operativ xotira yozish imkoniyatiga ulangan, shuning uchun biz har doim to'g'ri bo'lishimiz mumkin.
xlslice_0, 1, 2 - bo'laklar RGB signalini VGA drayveriga berilishi mumkin bo'lgan individual R, G va B signallarga ajratish uchun ishlatiladi.
Blok dizayni tugagandan so'ng, HDL o'rash moslamasini yarating va cheklovlar faylini qo'shing.
*Bloklar dizayni benlin1994 tomonidan yozilgan darslikka asoslangan*
7 -qadam: SDK
Blok dizaynini ishlatadigan kod quyida keltirilgan. Init.c rasm chizish funktsiyalari (prognozlar, sonlar, daraja belgisi va boshqalar) ni o'z ichiga oladi. Main.c -dagi asosiy pastadir - bu dasturlashtirilgan dastur. Bu tsikl prognoz va harorat qiymatlarini o'rnatadi va keyin init.c. da chizish funktsiyalarini chaqiradi. Hozirda u barcha ettita prognozni ko'rib chiqadi va birin -ketin ko'rsatadi. Har bir tasvirni ko'rish uchun 239 -qatorga uzilish nuqtasini qo'shish tavsiya etiladi. Kod sharhlangan va sizga qo'shimcha ma'lumot beradi.
8 -qadam: Xulosa
Joriy loyihani takomillashtirish uchun oldindan yuklangan prognozli tasvirlarni COE fayllari ko'rinishida xotira generatorlarini blokirovka qilish mumkin. Shunday qilib, biz C kodidagi kabi bashoratlarni qo'lda chizish o'rniga, rasmlarni o'qish mumkin edi. Biz buni qilishga urindik, lekin uni ishlay olmadik. Biz piksel qiymatlarini o'qiy oldik va ularni chiqara oldik, lekin u RAMga yuklaganimizga o'xshamaydigan tartibsiz tasvirlarni yaratdi. Blokli xotira generatori ma'lumotlar jadvalini o'qish foydalidir.
Loyihaning deyarli yarmi Smart Mirror hisoblanadi, chunki u Internetga ulanish xususiyatidan mahrum. Bunga qo'shilsa, to'liq aqlli oyna paydo bo'ladi.
Tavsiya:
Aqlli emas, lekin unchalik foydali bo'lmagan, ammo ozgina dahshatli ko'zgu: 5 qadam (rasmlar bilan)
Aqlli emas, lekin unchalik foydali bo'lmagan, ammo ozgina dahshatli oyna: oynaga ehtiyoj bor, lekin uyingizga boshqa aqlli narsalarni qo'shishni xohlamaysizmi? Shunda bu unchalik aqlli emas, lekin juda foydali, ammo ozgina dahshatli ko'zgu aynan sizga mos keladi
Ko'zgu tozalagich: 4 qadam
Oyna tozalagich: Ko'pchilik uydagi hammom oynasidagi tuman tufayli bezovtalanmoqda. Har safar dush qabul qilishganda, oynada qalin tuman paydo bo'ladi. Uni latta bilan artib bo'lgach, yana tuman tushadi va oynaga etib bormaydi. Yomg'ir yog'ganda
Arduino va RGB Led yordamida cheksiz ko'zgu qalbini qanday yasash mumkin: 8 qadam (rasmlar bilan)
Qanday qilib Arduino va RGB Leds yordamida cheksiz ko'zgu qalbini yasash mumkin: Bir kuni partiyada men va xotinim cheksiz oynani ko'rdik va uning ko'rinishi hayratga tushdi va men xohlayman deb aytishda davom etdi! Yaxshi er har doim quloq soladi va eslaydi, shuning uchun men uni sevishganlar kuni sovg'asi sifatida qurishga qaror qildim
Video vaqtini o'zgartirish - tennis mashg'ulotlari uchun elektron ko'zgu: 4 qadam
Video vaqtini o'zgartirish - tennis bo'yicha elektron ko'zgu: kim oynani yoqtirmaydi. Go'zallikka qoyil qolishdan tashqari, u bodibilderlar, raqqoslar tomonidan o'z mahoratini oshirish uchun ishlatiladi. Tennis - bu tanani aniq vaqtga muvofiqlashtirishni talab qiladigan sport. Agar kimdir faraz qilib oynaga qarasa va
Qor odami Led Edge Lit ko'zgu belgisi: 21 qadam (rasmlar bilan)
Snowman Led Edge Lit Mirror belgisi: Men bu ko'rsatmada Rojdestvo uchun juda mos keladigan, Snowman dizayni bilan svetodiodli oynali oynani qanday yasashni tasvirlab beraman! Bular to'rtta paketli bo'lib, iqtisodiy jihatdan ancha arzon. Men