Talaan ng mga Nilalaman:

FPGA Cyclone IV DahilProLogic na Kinokontrol ng Raspberry Pi Camera: 5 Mga Hakbang
FPGA Cyclone IV DahilProLogic na Kinokontrol ng Raspberry Pi Camera: 5 Mga Hakbang

Video: FPGA Cyclone IV DahilProLogic na Kinokontrol ng Raspberry Pi Camera: 5 Mga Hakbang

Video: FPGA Cyclone IV DahilProLogic na Kinokontrol ng Raspberry Pi Camera: 5 Mga Hakbang
Video: DE0-Nano — Краткое руководство по началу работы с Altera Cyclone IV FPGA | Шаг за шагом 2024, Nobyembre
Anonim
FPGA Cyclone IV DahilProLogic na Kinokontrol ng Raspberry Pi Camera
FPGA Cyclone IV DahilProLogic na Kinokontrol ng Raspberry Pi Camera

Sa kabila ng FPGA BecauseProLogic ay opisyal na idinisenyo para sa Arduino, gagawin naming komunikasyon ang FPGA at Raspberry Pi 4B.

Tatlong gawain ang ipinatupad sa tutorial na ito:

(A) Sabay-sabay pindutin ang dalawang mga pindutan ng push sa FPGA upang i-flip ang anggulo ng RPi camera.

(B) Kinokontrol ng Raspberry Pi 4B ang panlabas na LED circuit ng FPGA.

(C) Live stream ang Raspberry Pi Camera sa Browser sa pamamagitan ng WiFi

Hakbang 1: Bumuo ng Electronic Circuit

Hakbang 2: I-edit ang Verilog Code

I-edit ang Verilog Code
I-edit ang Verilog Code
I-edit ang Verilog Code
I-edit ang Verilog Code

Kapag binili mo ang FPGA DueProLogic, dapat kang makatanggap ng isang DVD. Pagkatapos mong buksan ang "Projects_HDL", dapat mong makita ang orihinal na HDL code file. Matapos mong i-set up ang pin planner, idagdag ang naka-highlight na code tulad ng ipinakita sa seksyon 2A, 2B, 2C at 2D.

2A: Upang buhayin ang mga pindutan ng push, kailangan mong gamitin ang code na ito

// Push Button Switch

input wire UBA,

input wire UBB

Upang makipag-usap sa Raspberry Pi, kailangan mong idagdag ang mga ito.

reg sel_send; // buhayin ang Raspberry pi

reg rec; // natanggap mula sa raspberry pi

2B: Upang magtalaga ng mga halaga sa mga port, dapat mong i-edit ang code nang naaayon

italaga ang XIO_1 [3] = start_stop_cntrl;

italaga ang XIO_2 [2] = rec; // output MATAAS o Mababa sa LED circuit

italaga ang XIO_2 [3] = ~ UBA; // push button

italaga ang XIO_2 [4] = UBB; // push button

italaga ang XIO_2 [5] = sel_send; // Ang FPGA ay nagpapadala ng signal sa raspberry pi

magtalaga ng sel_read = XIO_5 [1]; // Ang FPGA ay tumatanggap ng signal mula sa raspberry pi

magtalaga ng c_enable = XIO_5 [2]; // XIO_5 - UB57 - D17

magtalaga ng LEDExt = XIO_5 [5];

2C: Kung ang dalawang pindutan ng push ay pinindot nang sabay-sabay, ang FPGA ay nagpapadala ng TAAS na output sa Raspberry Pi.

laging @ (sel_send o UBB o UBA) // ipadala sa RPi

magsimula

kung (UBB == 1'b0 && UBA == 1'b0)

sel_send = 1'b1;

iba pa

sel_send = 1'b0;

magtapos

2D: Ang FPGA ay nagbabasa ng signal mula sa Raspberry Pi na may dalas ng orasan na 66MHz. Ang port XIO_2 [2] ay naka-link sa 'resibo'.

laging @ (sel_read) // basahin ang pi

magsimula

kung (sel_read == 1'b1)

rece = 1'b0;

iba pa

rece = 1'b1;

magtapos

Hakbang 3: Mag-upload ng Verilog Code

Mag-upload ng Verilog Code
Mag-upload ng Verilog Code

Pagkatapos i-upload ang pinagsamang pof file sa FPGA. Kung walang hardware na awtomatikong napansin, i-click ang "Pag-setup ng Hardware" upang itama ito nang manu-mano

Hakbang 4: Mag-upload ng Raspberry Pi Code

Pinapayagan ng mga naka-highlight na linya ang pakikipag-usap ng FPGA sa Raspberry Pi.

Ang buong Raspberry Pi code para sa proyektong ito,

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

kung (A == 1):

camera.rotation = 0

GPIO.output (18, GPIO. LOW) #send to FPGA

kung (A == 0):

camera.rotation = 180

GPIO.output (18, GPIO. HIGH) #send to FPGA

Hakbang 5: Subukan Natin Ito

Image
Image

Buksan ang iyong browser at i-type ang iyong IP address hal. 192.168.xx.xxx:8000.

Pagkatapos ng lahat, dapat gumana ang system!

Inirerekumendang: