Мазмұны:
- 1 -қадам: Мотивация және мәселе
- 2 -қадам: Basys USB -ден шикі бит туралы ақпаратты алу
- 3 -қадам: USB ақпаратын талдау
- 4 -қадам: Боялған бейнені VGA арқылы көрсету және сызылған нәрсені өңдеу
- 5 -қадам: Шығармадан ләззат алыңыз
Бейне: VGA кескіндеме бағдарламасы: 5 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:26
Жоба авторы: Адам Клейн, Ян Страчан, Брэндон Слейтер
Біз аяқтауды жоспарлаған жоба USB тінтуірінен ақпаратты кескіндеме бағдарламасы түрінде сақтау, талдау және көрсету болды. Жобаның идеясы-тінтуір мен VGA кабельдерін оның кіріктірілген порттарындағы Basys тақтасына қосу және тышқанды мониторда жылжымалы бояу алаңы ретінде көрсету, сол және оң жақ шерту кезінде әр түрлі түстерді өзгерту. қолданылған. Негізінде, біз тінтуірді базалық тақтамен бірге пайдалану үшін драйвер құратын боламыз және монитордың функционалдығын тексеретін боламыз. Шындығында, кіріс жүйесі ретінде basys тақтасы бар сурет бағдарламасын және тышқанға арналған жартылай функционалды деректерді жинау жүйесін құру болды.
Бұл нұсқаулықта біз тінтуірдің кірісінен vga шығысына дейінгі қадамдарды бөлеміз.
1 -қадам: Мотивация және мәселе
Мотивация:
Біздің жобаның негізгі мотивациясы - болашақ CPE 133 студенттері болашақта соңғы жобаларына қолдана алатын Basys3 тақтасы үшін тышқан драйверін құру болды. Дегенмен, біз болашақ студенттер де жасай алатын кескіндеме бағдарламасын құру арқылы бұл идеяны бір қадам алға жылжыттық.
Мәселе:
Біз тапқан мәселе - Basys3 тақтасы үшін жүктеуге және пайдалануға дайын мөлдір тінтуір модулі жоқ. Бұл мәселені шешу үшін біз оны өзіміз жасауға тырыстық. Осылайша біз болашақ студенттерге тінтуірдің енгізулерін өз жобаларына оңай енгізуге мүмкіндік беретін тінтуір модулін жасауға ұмтылдық.
2 -қадам: Basys USB -ден шикі бит туралы ақпаратты алу
- Біз бұл жобада тышқанға жасаған жұмысымыздың көп бөлігі Basys3 құжаттамасынан алынды. Бұл pdf файлындағы Basys USB портындағы шағын нұсқаулықтан біз Basys тақтасында USB құрылғыларынан биттерді дұрыс жылдамдықта оқуға арналған кіріктірілген сағат бар екенін анықтадық.
- Негізінде, тышқан бос күйден бастап биттерді жібереді, тышқандардың күйін, х позициясын және у позициясын білдіретін 32 битті оқиды және ақырында басқа бос битпен аяқталады. Бұл үшін тінтуірдің енгізу компоненті ығысу регистрі мен 32 биттік есептегішті қолданады, мұнда ауысым регистрі тышқаннан келетін 32 биттік деректерді сақтауға, ал 32 биттік есептегіш сақталатын биттердің санын санауға қолданылады. 32 кіріс биттердің келесі жиынтығын қалпына келтіру және сақтау үшін тіркеліңіз.
- Ауысу регистрінің коды, 32 биттік есептегіш және деректерді оқу құралы төменде жүктеледі, сонымен қатар USB портын кіріс ретінде қолдануға бейімделген шектеулер файлы.
3 -қадам: USB ақпаратын талдау
- Usb компонентіне тінтуірдің енгізуін жасағаннан кейін, келесі қадам - vga ақпараттық компонентінің usb биттерін құру болды, бұл тінтуір қабылдаған деректерді vga үшін оқуға мүмкіндік береді.
- Бұл компонент тінтуірдің кірісі арқылы шығарылатын биттердің жиынтығын usb -ге қабылдайтын және тінтуірдің күйі мен орнын өзгертетін жаңа биттердің енгізілген -енгізілмегеніне негізделген күйлер бойынша ауысатын күй машинасын қолданады.
- Жобаның алғашқы екі қадамының блок -схемасы осында көрсетілген, және екі vhdl файлы basys LED -терінің көмегімен тышқанның орындалуын тексеруге арналған (өкінішке орай, ешқашан өтпеген тест) және USB -ден бит ағынын шығаруға арналған. VGA қолдана алатын жылдамдық пен орналасу векторларының порты.
- Жоғарыдағы блок -схеманың жанындағы сурет - бұл қадамды аяқтау үшін базалық құжаттамада табылған бит ақпаратының шағын суреті (Instructables бізге толық кескінді көрсетуге мүмкіндік бермейді).
4 -қадам: Боялған бейнені VGA арқылы көрсету және сызылған нәрсені өңдеу
- VGA кабелінде 14 бит шығысы бар, үш түстің әрқайсысы үшін 4 бит және көлденең синхрондау мен тік синхрондау үшін бит.
-
OtherVGA - берілген VGA модулі және ол келесідей жұмыс істейді:
- Монитор жоғарыдағы суретте көрсетілгендей 640x480 ажыратымдылықтағы экран үшін 16х16 пиксельді 40х30 блоктарға бөлінген. Модуль монитордағы 1200 блоктың бірін көрсету үшін блок адресін таңдайды. Блок адресі келесі теңдеу арқылы таңдалады: адрес = 40y + x
- Түс 12 биттік сигналмен ұсынылған, ол RRRRGGGGBBBB мәніне сәйкес келеді, ол таңдалған блокты бояйды.
-
Біздің басқару коды VGAtest және VGAtestconst келесідей жұмыс істейді:
- Ол алдымен таңдалған блокты монитордың ортасына орнатады.
- Блоктың түсі RRRRGGGGBBBB мәнін орната отырып, тақтадағы 12 қосқыш арқылы анықталады.
- Тақтадағы төрт бағыттау түймесі таңдалған адресті өзгертеді. Мысалы, оң жақ батырманы басу арқылы мекенжайға 1 қосылады, алдыңғы блоктың оң жағындағы бір блок таңдалады. Төменгі батырманы басу мекен -жайға 40 қосады, алдыңғы блоктың астындағы блокты таңдайды.
- Орталық түйме барлық түс мәндерін басқанда 0 мәніне қою үшін қолданылады. Бұл пайдаланушыға оңай өшіру түймесі ретінде әрекет етуге арналған, сондықтан пайдаланушы өшіру үшін әр коммутаторды 0 -ге бұрудың қажеті жоқ.
- Соңғы сурет - контроллердің блок -схемасы. Ол өте кең, себебі ол модуль компоненттерін қамтиды және толық көрсетілмеуі мүмкін.
5 -қадам: Шығармадан ләззат алыңыз
Мұнда сілтеме - бұл ақырғы жобада, тіпті базалық тақтадағы қосқыштар мен түймелерді енгізу ретінде пайдалану кезінде болатын уақыттың жылдам уақыты.
Оқығаныңыз үшін рахмет!
Ұсынылған:
Python -дағы Цезарь шифр бағдарламасы: 4 қадам
Python -дағы Цезарь шифры бағдарламасы: Цезарь шифры - ескірген және кеңінен қолданылатын шифр, оны шифрлауға және шешуге оңай. Ол әліпбидің әріптерін ауыстыру арқылы мүлдем жаңа алфавит құру үшін жұмыс істейді (ABCDEF 4 әріптен асып, EFGHIJ болады). Цезарь С
Жеңіл кескіндеме (фотошопсыз): 5 қадам (суреттермен)
Жеңіл кескіндеменің басталуы (Photoshop жоқ): Мен жақында жаңа камера сатып алдым және интернетте жеңіл кескіндемені немесе ұзақ экспозициялық фотосуретті кездестіргенде оның кейбір ерекшеліктерін зерттедім. Біздің көпшілігіміз жолдары бар қалада фотосуретпен жарықтандырудың негізгі формасын көрген боламыз
Ғарыштық құбыжықтар - интерактивті кескіндеме: 8 қадам (суреттермен)
Ғарыштық құбыжықтар - интерактивті кескіндеме: «ЖОҚ!» суретті қашан ұстағыңыз келеді? Сізге қол тигізуге болатын біреуін жасайық
Жолбарыс кескіндеме 3d басып шығарылды: 5 қадам
Tiger Painting 3d Printed: Бұл нұсқаулық жолбарыс суретін жаңарту үшін өнер мен 3d басып шығаруды біріктіреді. Толқын 3 жіптен тұрады: қара, ақ және сарғыш. Бұл қалай жұмыс істейтіні - белгілі мөлшердегі қабаттардан кейін жолбарыстың стлін басып шығару
42 RGB LED пиксельдік көркем кескіндеме: 5 қадам
42 RGB LED пиксельдік көркем кескіндеме: Эй, сондықтан мектеп тапсырмасы үшін " Егер бұл болса, онда бұл " Мен Arduino Uno стартеркитінің көмегімен интерактивті // бірдеңе // жасауым керек болды (және басқалары өздерін сатып алғысы келетін нәрсені). Мен өнер мен технологияны зерттеп жатқанымды қалаймын