Мазмұны:
- 1 -қадам: аппараттық/бағдарламалық қамтамасыз ету
- 2 -қадам: блок -диаграмма
- 3 -қадам: Мемлекеттік диаграмма
- 4 -қадам: Сағат бөлгіш модулі
- 5 -қадам: Дисплей модулі
- 6 -қадам: байланыстыру модулі
- 7 -қадам: шектеулер
- 8 -қадам: Орындалды
Бейне: VHDL секундомері: 8 қадам (суреттермен)
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:27
Бұл Basys3 Atrix-7 тақтасы сияқты VHDL мен FPGA схемасын пайдаланып секундомер жасау туралы оқулық. Секундомер 00.00 секундтан 99.99 секундқа дейін есептей алады. Ол екі түймені пайдаланады, біреуі бастау/тоқтату түймесі үшін, екіншісі қалпына келтіру түймесі үшін. Сандар тақтаның жеті сегментті дисплейінде анодтары мен катодтары арқылы көрсетіледі. Бұл секундомердің жұмыс істеуі үшін үш түрлі файл қажет.
1 -қадам: аппараттық/бағдарламалық қамтамасыз ету
- Basys3 Atrix-7 FPGA тақтасы
- Xilinx ұсынған Vivado Design Suite
- USB 2.0 A еркектен Micro-B еркегіне дейін
2 -қадам: блок -диаграмма
Жалпы секундомерде үш кіріс және екі шығыс бар. Үш кіріс - іске қосу/тоқтату, қалпына келтіру және сағат. Бастау/тоқтату және қалпына келтіру - бұл түймелер, ал сағат - тақтаның 100 МГц сағаты. Екі шығыс-жеті сегментті дисплейге арналған анодтар мен катодтар.
Бірінші модульде (сағат бөлгіш) бір кіріс және екі шығыс бар. Кіріс тақтаның 100 МГц сағаты, ал шығыс екі бөлек сағат, біреуі 480 Гц жиілікте, екіншісі 0,5 МГц.
Екінші модульде (дисплейде) бес кіріс және екі шығыс бар. Кірістер - бұл тақтаның 100 МГц сағаты, сағатты бөлу модулінің екі сағаты, іске қосу/тоқтату және қалпына келтіру түймелері. Шығатындар - анодтар мен катодтар.
Соңғы модульде (бүкіл блок -схема бойынша модельденген) үш кіріс және екі шығыс бар. Бұл бәрін біріктіретін файл. Кірістер - бұл тақтаның 100 МГц және іске қосу/тоқтату және қалпына келтіру түймелері. Шығу-бұл жеті сегментті дисплейді басқаратын анодтар мен катодтар. Барлық кіріс пен шығыс физикалық түрде соңғы модульге арналған тақтада болады.
3 -қадам: Мемлекеттік диаграмма
Жоғарыдағы суретте секундомер қалай жұмыс істейтіні туралы күй диаграммасы көрсетілген. Қалпына келтіру түймесін басу секундомердің күйіне әсер етпейді. Келесі күйді бастау/тоқтату түймесі анықтайды. Іске қосу/тоқтату басылған кезде «ЖОҒАРЫ» болып табылады, бірақ оны ұстап тұрғанда емес, «ТӨМЕН» түймешік қайта оралғанда немесе бір сәтте «ЖОҒАРЫ» болғаннан кейін ұстап тұрғанда «ТӨМЕН».
Егер секундомер саналып жатса және іске қосу/тоқтату түймесі «ЖОҒАРЫ» болса, онда ол санауды тоқтатады. Егер секундомер тоқтап, іске қосу/тоқтату түймесі «ЖОҒАРЫ» күйіне өтсе, ол қайтадан санай бастайды. Екі штат үшін де, егер бастау/тоқтату түймесі «ТӨМЕН» болса, онда ол қазіргі күйінде қалады.
4 -қадам: Сағат бөлгіш модулі
Сағат бөлгіш модулінің бір кірісі бар, тақтаның 100 МГц сағаты және екі шығысы, 480 Гц және 0,5 МГц сағаттары. 480 Гц сағаты жеті сегментті дисплейдегі барлық светодиодтарды бір уақытта «қосулы» күйде ұстап тұру үшін қолданылады, төртеуін жылдам ауыстыру арқылы. 0,5 МГц сағаты секундомердің іс жүзінде цент секундқа есептелуі үшін қолданылады.
5 -қадам: Дисплей модулі
Бұл дисплей модулінде бес кіріс бар, тақтаның 100 МГц сағаты, сағат модулінің екі сағаты, іске қосу/тоқтату және қалпына келтіру түймелері, екі шығысы - анодтар мен катодтар. Бұл модульде секундомердің ақырғы күй машинасын қалай есептейтіні және қосатыны туралы «логика» бар.
6 -қадам: байланыстыру модулі
Бұл соңғы модуль - қалған екі модульді біріктіретін модуль. Ол үш кірістен тұрады, тақтаның 100 МГц сағаты, іске қосу/тоқтату және қалпына келтіру түймелері, екі шығысы - анодтар мен катодтар. 100 МГц сағаты сағат бөлгіш модулі мен дисплей модуліне, ал іске қосу/тоқтату және ысыру түймелері дисплей модуліне өтеді. Сағат бөлгіш модулінің шығысы (480 Гц және 0,5 МГц) дисплей модулінің екі сағаттық кірісіне өтеді. Дисплей модулінің шығулары (анодтар мен катодтар) соңғы модульдің шығуына кетеді.
7 -қадам: шектеулер
Екі кіріс Basys3 Atrix-7 FPGA тақтасындағы кез келген түйме болуы мүмкін, ал шығыс сегіз дисплей үшін төрт анод пен сегіз катод болады (себебі сіз секунд пен миллисекунд арасындағы ондық нүктені алғыңыз келеді).
8 -қадам: Орындалды
Бағдарламаны Basys3 Atrix-7 FPGA тақтасына жүктеп, секундомерді іске қосу үшін іске қосу/тоқтату түймесін басыңыз!
Ұсынылған:
Ардуино Леонардо секундомері: 3 қадам
Ардуино Леонардо секундомері: Кредит: https://www.instructables.com/id/Arduino-Stopwatch .. Бұл секундомердің дизайны жоғарыда көрсетілген сілтемеден шыққан, ол секундомер 1-ден есептеледі, ал бұл 60 секундтан кері есептеледі. . Мен қолданған кодтың көпшілігі түпнұсқаға сәйкес келеді
Қарапайым CloudX M633 сандық секундомері: 4 қадам
Қарапайым CloudX M633 сандық секундомері: Бұл жобада біз ұялы телефондағы секундомер сияқты сағатты, минутты және секундты тіркеуге болатын цифрлық сағаттың нұсқасын жасамақпыз! Біз уақытты көрсету үшін СКД қолданамыз
I2C LCD көмегімен Arduino секундомері: 5 қадам
I2C СК қолданатын Arduino секундомері: Бұл жобада мен сізге СКД дисплейі мен Arduino интерактивті секундомер ретінде қолдануды үйретемін. Жобаңыз берілген кодпен аяқталған кезде, ол жоғарыдағы фотосуретке ұқсас болуы керек. Неден бастау керектігін білу үшін келесі қадамға өтіңіз
Қарапайым, практикалық Arduino секундомері: 4 қадам
Қарапайым, практикалық Arduino секундомері: Интернеттен Arduino секундомерін іздеңіз. Егер сіз осында болсаңыз, сіз жай ғана жасаған шығарсыз. Жеке тәжірибеден айта аламын, интернетте кез келген секундомер тым күрделі (кодта, жаңадан бастаушыларға арналған), немесе тым жеңілдетілген, бірақ практикалық емес
Arduino секундомері: 4 қадам (суреттермен)
Arduino секундомері: Бұл нұсқаулық сізге Arduino -дан аялдама жасауды көрсетеді