![FPGA циклону IV DueProLogic - баскыч жана LED: 5 кадам FPGA циклону IV DueProLogic - баскыч жана LED: 5 кадам](https://i.howwhatproduce.com/images/001/image-1648-12-j.webp)
Мазмуну:
2025 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2025-01-23 14:51
![FPGA циклону IV DueProLogic - баскыч жана LED FPGA циклону IV DueProLogic - баскыч жана LED](https://i.howwhatproduce.com/images/001/image-1648-13-j.webp)
Бул үйрөткүчтө биз тышкы LED схемасын башкаруу үчүн FPGAны колдонобуз. Биз төмөнкү милдеттерди ишке ашырганы жатабыз
(A) LEDди башкаруу үчүн FPGA Cyclone IV DuePrologic баскычтарын колдонуңуз.
(B) Жарык LED мезгили менен күйүп турат
Видео демо
Лабораториялык меню:
1 -кадам: Электрондук схеманы куруу
2 -кадам: Pin Planner текшерүү жана Verilog кодун түзөтүү
![Pin Planner текшерүү жана Verilog кодун түзөтүү Pin Planner текшерүү жана Verilog кодун түзөтүү](https://i.howwhatproduce.com/images/001/image-1648-14-j.webp)
3 -кадам: Verilog кодун түзөтүү
![Verilog кодун түзөтүү Verilog кодун түзөтүү](https://i.howwhatproduce.com/images/001/image-1648-15-j.webp)
Сиз FPGA DueProLogic сатып алганда, сиз DVDди алышыңыз керек. "Projects_HDL" ачкандан кийин, сиз баштапкы код файлын көрүшүңүз керек
Бөлүнгөн кодду кошуңуз. Бул I/O портторун каттайт жана портторго номерлерди дайындайт.
чыгаруу зымы [7: 0] XIO_1, // XIO-D2-D9
чыгаруу зымы [5: 0] XIO_2, // XIO-D10-D12
чыгаруу зымы [5: 0] XIO_3, // XIO-D22-D29
киргизүү зымы [5: 0] XIO_4, // XIO-D30-D37
киргизүү зымы [5: 0] XIO_5, // XIO-D38-D45
чыгаруу зымы [4: 0] XIO_6_OUT, // XIO-D46-D53
киргизүү зымы [31: 5] XIO_6, // XIO-D46-D53
чыгаруу зымы [2: 0] XIO_7, // XIO - D69, D70, D71, D74, D75, D76
киргизүү зымы UBA, // Баскыч баскычтары
киргизүү зымы UBB // Баскыч баскычтарын которгучтар
дайындоо XIO_1 [3] = start_stop_cntrl;
дайындоо XIO_2 [1] = start_blinky; // LED жарыгы LED күйгүзүү жана өчүрүү
дайындоо XIO_2 [2] = 1'b1; // чыгаруу HIGH
дайындоо XIO_2 [3] = ~ UBA; // А баскычын басыңыз
дайындоо XIO_2 [4] = UBB; // B баскычын басыңыз
дайындоо c_enable = XIO_5 [2];
дайындоо LEDExt = XIO_5 [5];
Андан кийин биз кечигүү таймерин коюшубуз керек. Таймердин баштапкы кодун комментарийлеп, жаңы таймер функциясын жазыңыз
//-----------------------------------------------
// LED Blinky баштоо
//-----------------------------------------------
/*
дайыма @(posedge CLK_66 же negstge RST)
баштоо
эгер (! RST)
start_blinky <= 1'b0;
башка
баштоо
эгер (control_register [7: 4]> 0)
start_blinky <= 1'b1;
башка
start_blinky <= 1'b0;
аяктоо
аяктоо
*/
reg [31: 0] ex;
баштапкы баштоо
ex <= 32'b0;
start_blinky <= 1'b0;
аяктоо
дайыма @(posedge CLK_66)
баштоо
ex <= ex + 1'b1;
эгер (мис.> 100000000) // жарк этүү/өчүрүү ~ 1,6 секунд, саат 66МГц
баштоо
start_blinky <=! start_blinky;
ex <= 32'b0;
аяктоо
аяктоо
//-----------------------------------------------
// LED кечигүү таймеринин эсептегичи
//-----------------------------------------------
/*
дайыма @(pozedge CLK_66 же negstge RST)
баштоо
эгер (! RST)
led_delay_counter <= TIMER_LOW_LIMIT;
башка
баштоо
эгер (штат [SELECT_MODE])
led_delay_counter <= timer_value;
башка болсо ([WAIT_FOR_TIMER] абалы)
led_delay_counter <= led_delay_counter - 1'd1;
аяктоо
аяктоо*/
4 -кадам: Verilog кодун түзүү
![Verilog кодун түзүү Verilog кодун түзүү](https://i.howwhatproduce.com/images/001/image-1648-16-j.webp)
![Verilog кодун түзүү Verilog кодун түзүү](https://i.howwhatproduce.com/images/001/image-1648-17-j.webp)
"Компиляцияны баштоо" баскычын басыңыз Quartus, эч кандай ката билдирүүсү түзүлбөшү керек.
Эгерде сиз бир нече казык жөнүндө ката билдирүүсүн алсаңыз. Тапшырмаларга өтүңүз -> Аспап -> Түзмөк жана Киргизүү Опциялары -> Эки Максаттуу Пиндер -> тиешелүү пиндин маанисин "Кадимки I/O катары колдонуу" деп өзгөртүңүз.
Түзүлгөндөн кийин, сиз түздөн -түз pof чыгаруу файлын алышыңыз керек. Эгерде сиздин программалык камсыздооңуз заманбап болбосо, сиз соф файлын гана ала аласыз. Бул болгондо, Quartus'тогу "Файлды" чыкылдатыңыз -> "программалоо файлдарын айландыруу". Кызыл кутучалар менен белгиленген орнотууларды өзгөртүңүз.
5 -кадам: Кел, аны сынап көрөлү
![](https://i.ytimg.com/vi/HNIsi5TWfXQ/hqdefault.jpg)
Кантсе да, иштеши керек !!! Сары LED дайыма күйүп турат. Кызыл LED жаркырап турат. В баскычын бассаңыз, көк LED өчөт. А баскычын бассаңыз жашыл LED күйөт
Сунушталууда:
FPGA циклону IV DueProLogic Controls Raspberry Pi Камерасы: 5 кадам
![FPGA циклону IV DueProLogic Controls Raspberry Pi Камерасы: 5 кадам FPGA циклону IV DueProLogic Controls Raspberry Pi Камерасы: 5 кадам](https://i.howwhatproduce.com/images/001/image-1646-19-j.webp)
FPGA Cyclone IV DueProLogic Controls Raspberry Pi Camera: FPGA DueProLogic расмий түрдө Arduino үчүн иштелип чыкканына карабастан, биз FPGA жана Raspberry Pi 4B байланышын түзөбүз. Үч тапшырманы бул окуу куралы ишке ашырат: (A) Бир убакта эки баскычты басыңыз FPGA бурчту буруш үчүн
FPGA циклону IV DueProLogic Серво Моторун көзөмөлдөйт: 4 кадам
![FPGA циклону IV DueProLogic Серво Моторун көзөмөлдөйт: 4 кадам FPGA циклону IV DueProLogic Серво Моторун көзөмөлдөйт: 4 кадам](https://i.howwhatproduce.com/images/002/image-3532-21-j.webp)
FPGA Cyclone IV DueProLogic Controls Servo Motor: Бул окуу куралында биз servo моторду көзөмөлдөө үчүн Verilog кодун жазабыз. Серво SG-90 Waveshare тарабынан чыгарылган. Серво моторун сатып алганда, сиз иштөө чыңалуусу, максималдуу моменти жана сунушталган Pu тизмеленген маалымат барагын ала аласыз
Таблицаны кантип түзүү жана киргизүү жана Microsoft Office Word 2007деги ошол столго кошумча мамычаларды жана/же саптарды кошуу: 11 кадам
![Таблицаны кантип түзүү жана киргизүү жана Microsoft Office Word 2007деги ошол столго кошумча мамычаларды жана/же саптарды кошуу: 11 кадам Таблицаны кантип түзүү жана киргизүү жана Microsoft Office Word 2007деги ошол столго кошумча мамычаларды жана/же саптарды кошуу: 11 кадам](https://i.howwhatproduce.com/images/005/image-13271-j.webp)
Таблицаны кантип түзүү жана киргизүү жана Microsoft Office Word 2007деги ошол таблицага кошумча мамычаларды жана/же саптарды кошуу: Сизде иштеп жаткан жана өзүңүз жөнүндө ойлогон көптөгөн маалыматтарыңыз бар беле … " Мен кантип баарын жасай алам? бул маалыматтын жакшыраак көрүнүшү жана түшүнүүгө оңойбу? " Эгер ошондой болсо, анда Microsoft Office Word 2007деги таблица сиздин жообуңуз болушу мүмкүн
Иштетүү жана Arduino туташтыруу жана 7 сегментти жана GERI интервалы контролерин жасоо: 4 кадам
![Иштетүү жана Arduino туташтыруу жана 7 сегментти жана GERI интервалы контролерин жасоо: 4 кадам Иштетүү жана Arduino туташтыруу жана 7 сегментти жана GERI интервалы контролерин жасоо: 4 кадам](https://i.howwhatproduce.com/images/009/image-25340-j.webp)
Processing and Arduino менен Make 7 Segment and Servo GUI Controller туташтыруу: Кээ бир долбоорлор үчүн сиз Arduino программасын колдонушуңуз керек, анткени ал прототиптөөнүн оңой платформасын камсыз кылат, бирок графиканы Arduino сериялык мониторунда көрсөтүү абдан узакка созулушу мүмкүн, ал тургай аткаруу кыйын. Сиз графикти Arduino Serial Monitorдо көрсөтө аласыз
WiFi жана IR Remote жана Android колдонмосун колдонуп NodeMCU жана IR алуучу менен 8 релелик көзөмөл: 5 кадам (сүрөттөр менен)
![WiFi жана IR Remote жана Android колдонмосун колдонуп NodeMCU жана IR алуучу менен 8 релелик көзөмөл: 5 кадам (сүрөттөр менен) WiFi жана IR Remote жана Android колдонмосун колдонуп NodeMCU жана IR алуучу менен 8 релелик көзөмөл: 5 кадам (сүрөттөр менен)](https://i.howwhatproduce.com/images/002/image-4439-69-j.webp)
WiFi жана IR Remote жана Android тиркемесин колдонуп NodeMCU жана IR алуучу менен 8 реле көзөмөлү: wifi жана ир алыскы жана андроид колдонмосу аркылуу nodemcu жана IR кабыл алгычты колдонуп 8 реле өчүргүчтөрүн көзөмөлдөө БУЛ ЖЕРДЕ