Мазмұны:

FPGA циклоны IV DueProLogic бақылаулары Raspberry Pi камерасы: 5 қадам
FPGA циклоны IV DueProLogic бақылаулары Raspberry Pi камерасы: 5 қадам

Бейне: FPGA циклоны IV DueProLogic бақылаулары Raspberry Pi камерасы: 5 қадам

Бейне: FPGA циклоны IV DueProLogic бақылаулары Raspberry Pi камерасы: 5 қадам
Бейне: Учебное пособие по ПЛИС | Схема проектирования FPGA. Часть 1. Блоки питания, конфигурации, синхронизации 2024, Қараша
Anonim
FPGA циклоны IV DueProLogic Raspberry Pi камерасын басқарады
FPGA циклоны IV DueProLogic Raspberry Pi камерасын басқарады

FPGA DueProLogic ресми түрде Arduino үшін жасалғанына қарамастан, біз FPGA мен Raspberry Pi 4B -ті байланыстыратын етіп жасаймыз.

Бұл оқулықта үш тапсырма орындалады:

(A) RPi камерасының бұрышын аудару үшін FPGA -дегі екі түймені бір уақытта басыңыз.

(B) Raspberry Pi 4B FPGA сыртқы жарықдиодты схемасын басқарады.

(C) WiFi арқылы браузерде Raspberry Pi камерасын тікелей трансляциялау

1 -қадам: Электрондық схеманы құру

2 -қадам: Verilog кодын өңдеңіз

Verilog кодын өңдеу
Verilog кодын өңдеу
Verilog кодын өңдеу
Verilog кодын өңдеу

FPGA DueProLogic сатып алған кезде сізге DVD керек. «Projects_HDL» ашқаннан кейін сіз HDL кодының бастапқы файлын көресіз. Түйреуішті жоспарлағышты орнатқаннан кейін бөлектелген кодты 2А, 2В, 2С және 2Д бөлімінде көрсетілгендей қосыңыз.

2A: Түймешіктерді іске қосу үшін сізге осы кодты қолдану қажет

// Түйме қосқыштары

кіріс сымы UBA,

кіріс сымы UBB

Raspberry Pi -мен байланысу үшін оларды қосу қажет.

reg sel_send; // Raspberry pi іске қосыңыз

регистрлік кіріс; // таңқурайдан алынған pi

2B: Порттарға мәндерді тағайындау үшін кодты сәйкесінше өңдеу керек

тағайындау XIO_1 [3] = start_stop_cntrl;

тағайындау XIO_2 [2] = кіріс; // шығыс диодты схемада HIGH немесе LOW

тағайындау XIO_2 [3] = ~ UBA; //батырмаға басу

тағайындау XIO_2 [4] = UBB; //батырмаға басу

тағайындау XIO_2 [5] = sel_send; // FPGA таңқурайға pi сигналын жібереді

sel_read = XIO_5 [1] тағайындаңыз; // FPGA таңқурай пи сигналын алады

тағайындау c_enable = XIO_5 [2]; // XIO_5 - UB57 - D17

LEDExt = XIO_5 тағайындау [5];

2C: Егер екі түйме бір мезгілде басылса, FPGA Raspberry Pi -ге HIGH шығысын жібереді.

әрқашан @(sel_send немесе UBB немесе UBA) // RPi -ге жіберіңіз

баста

егер (UBB == 1'b0 && UBA == 1'b0)

sel_send = 1'b1;

басқа

sel_send = 1'b0;

Соңы

2D: FPGA Raspberry Pi сигналын 66 МГц жиілік жиілігін оқиды. XIO_2 [2] порты 'қабылдауға' байланысты.

әрқашан @(sel_read) // pi оқыңыз

баста

егер (sel_read == 1'b1)

алу = 1'b0;

басқа

алу = 1'b1;

Соңы

3 -қадам: Verilog кодын жүктеңіз

Verilog кодын жүктеңіз
Verilog кодын жүктеңіз

Содан кейін жинақталған pof файлын FPGA -ға жүктеңіз. Егер жабдық автоматты түрде анықталмаса, оны қолмен түзету үшін «Аппараттық құралдарды орнату» түймесін басыңыз

4 -қадам: Raspberry Pi кодын жүктеңіз

Бөлектелген сызықтар FPGA -ға Raspberry Pi -мен байланысуға мүмкіндік береді.

Бұл жобаның толық Raspberry Pi коды,

A = GPIO.input (pin) #read FPGAprint (A);

егер (A == 1):

camera.rotation = 0

GPIO.output (18, GPIO. LOW) #FPGA жіберу

егер (A == 0):

180. реферат

GPIO.output (18, GPIO. HIGH) #FPGA жіберу

5 -қадам: көрейік

Image
Image

Браузерді ашып, IP мекенжайын теріңіз, мысалы. 192.168.xx.xxx:8000.

Ақыр соңында, жүйе жұмыс істеуі керек!

Ұсынылған: