Мазмуну:

VHDL секундомери: 8 кадам (сүрөттөр менен)
VHDL секундомери: 8 кадам (сүрөттөр менен)

Video: VHDL секундомери: 8 кадам (сүрөттөр менен)

Video: VHDL секундомери: 8 кадам (сүрөттөр менен)
Video: 6. Программирование ПЛИС: цифровые часы на AHDL, VHDL, Verilog 2024, Ноябрь
Anonim
VHDL Секундомер
VHDL Секундомер

Бул 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 Гц саат жети сегменттүү дисплейдеги LEDдердин бардыгын тез күйгүзүү үчүн колдонулат. 0,5 МГц сааты секундомер үчүн иш жүзүндө цент-секундага чейин колдонулат.

5 -кадам: Дисплей модулу

Бул дисплей модулунда беш киргизүү бар, тактанын 100 МГц сааты, саат модулунан эки саат, жана баштоо/токтотуу жана баштапкы абалга келтирүү баскычтары жана эки чыгаруу, аноддор жана катоддор. Бул модулда секундомердин эсептөөчү жана чектүү абалдагы машинаны камтыган "логикасы" да бар.

6 -кадам: Байланыш модулу

Бул акыркы модуль башка эки модулду бириктирген модуль. Бул үч киргизүү бар, коллегиянын 100MHz сааты жана баштоо/токтотуу жана баштапкы абалга келтирүү баскычтары, жана эки чыгаруу, аноддор жана катоддор. 100MHz сааты саат бөлүүчү модулга жана дисплей модулуна барат, ал эми баштоо/токтотуу жана баштапкы абалга келтирүү баскычтары дисплей модулуна барат. Саатты бөлүүчү модулдун (480Гц жана 0,5МГц) чыгышы дисплей модулунун эки сааттык киришине барат. Дисплей модулунун жыйынтыктары (аноддор жана катоддор) акыркы модулдун чыгууларына барат.

7 -кадам: Чектөөлөр

Чектөөлөр
Чектөөлөр

Эки киргизүү Basys3 Atrix-7 FPGA тактасындагы каалаган баскычтар болушу мүмкүн жана жыйынтыктар жети сегменттүү дисплей үчүн төрт анод жана сегиз катод болуп калат (анткени сиз секунд менен миллисекунд ортосунда ондук чекитти каалайсыз).

8 -кадам: Бүттү

Программаны Basys3 Atrix-7 FPGA тактасына жүктөңүз жана секундомердин иштеши үчүн баштоо/токтотуу баскычын басыңыз!

Сунушталууда: