Talaan ng mga Nilalaman:
2025 May -akda: John Day | [email protected]. Huling binago: 2025-01-13 06:58
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
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
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
Buksan ang iyong browser at i-type ang iyong IP address hal. 192.168.xx.xxx:8000.
Pagkatapos ng lahat, dapat gumana ang system!