Sisällysluettelo:
- Vaihe 1: Rakenna elektroninen piiri
- Vaihe 2: Muokkaa Verilog -koodia
- Vaihe 3: Lähetä Verilog -koodi
- Vaihe 4: Lataa Raspberry Pi -koodi
- Vaihe 5: Kokeillaan
Video: FPGA Cyclone IV DueProLogic Controls Raspberry Pi -kamera: 5 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 08:59
Huolimatta siitä, että FPGA DueProLogic on virallisesti suunniteltu Arduinolle, aiomme tehdä FPGA: sta ja Raspberry Pi 4B -yhteensopiviksi.
Tässä opetusohjelmassa toteutetaan kolme tehtävää:
(A) Käännä RPi -kameran kulma painamalla samanaikaisesti kahta FPGA -painikkeen painiketta.
(B) Raspberry Pi 4B ohjaa FPGA: n ulkoista LED -piiriä.
(C) Suoratoista Raspberry Pi -kamera selaimessa WiFi -yhteyden kautta
Vaihe 1: Rakenna elektroninen piiri
Vaihe 2: Muokkaa Verilog -koodia
Kun ostat FPGA DueProLogicin, sinun pitäisi saada DVD. Kun olet avannut "Projects_HDL", sinun pitäisi nähdä alkuperäinen HDL -kooditiedosto. Kun olet määrittänyt nastasuunnittelijan, lisää korostettu koodi osien 2A, 2B, 2C ja 2D mukaisesti.
2A: Painikkeiden aktivoimiseksi sinun on käytettävä tätä koodia
// Painonappikytkimet
tulojohto UBA,
tulojohto UBB
Jotta voit kommunikoida Raspberry Pi: n kanssa, sinun on lisättävä nämä.
reg sel_send; // aktivoi Raspberry pi
reg rece; // saatu vadelmalta pi
2B: Jos haluat määrittää porteille arvoja, sinun on muokattava koodi vastaavasti
anna XIO_1 [3] = start_stop_cntrl;
antaa XIO_2 [2] = rece; // lähtö HIGH tai LOW LED -piirissä
määritä XIO_2 [3] = ~ UBA; //paina nappia
määritä XIO_2 [4] = UBB; //paina nappia
anna XIO_2 [5] = sel_send; // FPGA lähettää signaalin vadelmapi: lle
anna sel_read = XIO_5 [1]; // FPGA vastaanottaa signaalin vadelmalta pi
anna c_enable = XIO_5 [2]; // XIO_5 - UB57 - D17
määritä LEDExt = XIO_5 [5];
2C: Jos kahta painonappia painetaan samanaikaisesti, FPGA lähettää HIGH -lähdön Raspberry Pi: lle.
aina @(sel_send tai UBB tai UBA) // lähetä RPi: lle
alkaa
jos (UBB == 1'b0 && UBA == 1'b0)
sel_send = 1'b1;
muu
sel_send = 1'b0;
loppuun
2D: FPGA lukee Raspberry Pi -signaalin kellotaajuudella 66 MHz. Portti XIO_2 [2] on linkitetty vastaanottimeen.
aina @(sel_read) // lue pi
alkaa
jos (sel_read == 1'b1)
rece = 1'b0;
muu
rece = 1'b1;
loppuun
Vaihe 3: Lähetä Verilog -koodi
Lataa sitten koottu pof -tiedosto FPGA: han. Jos laitteistoa ei tunnisteta automaattisesti, korjaa se manuaalisesti napsauttamalla "Laitteiston asennus"
Vaihe 4: Lataa Raspberry Pi -koodi
Korostetut linjat mahdollistavat FPGA: n kommunikoinnin Raspberry Pi: n kanssa.
Raspberry Pi -koodi tälle projektille,
A = GPIO.input (pin) #read FPGAprint (A);
jos (A == 1):
camera.rotation = 0
GPIO. output (18, GPIO. LOW) #lähetetään FPGA: lle
jos (A == 0):
kamera. kierto = 180
GPIO. output (18, GPIO. HIGH) #lähetetään FPGA: lle
Vaihe 5: Kokeillaan
Avaa selain ja kirjoita IP -osoitteesi esim. 192.168.xx.xxx:8000.
Loppujen lopuksi järjestelmän pitäisi toimia!
Suositeltava:
FPGA Cyclone IV DueProLogic - Painike ja LED: 5 vaihetta
FPGA Cyclone IV DueProLogic - Painike ja LED: Tässä opetusohjelmassa aiomme käyttää FPGA: ta ulkoisen LED -piirin ohjaamiseen. Toteutamme seuraavat tehtävät (A) Käytä FPGA Cyclone IV DuePrologicin painikkeita LED: in ohjaamiseen. (B) Salaman merkkivalo palaa & pois käytöstä ajoittainVideoesittelylaboratorio
FPGA Cyclone IV DueProLogic Controls Servomoottori: 4 vaihetta
FPGA Cyclone IV DueProLogic Controls Servomoottori: Tässä opetusohjelmassa aiomme kirjoittaa Verilog -koodin servomoottorin ohjaamiseen. Servo SG-90 on Wavesharen valmistama. Kun ostat servomoottorin, saatat saada tietolomakkeen, jossa luetellaan käyttöjännite, suurin vääntömomentti ja ehdotettu pu
Arduino Cyclone Game: 5 vaihetta (kuvilla)
Arduino Cyclone Game: En ole koskaan pelannut todellista syklonipelipeliä, mutta pidän ajatuksesta pelata reaktioaikamme kanssa. Se koostuu 32 LEDistä, jotka muodostavat ympyrän, LEDit syttyvät yksitellen led -jahtajana. Tavoitteena on painaa nappia
Cyclone (Arduino LED Game): 6 vaihetta (kuvilla)
Cyclone (Arduino LED Game): Tässä opetusohjelmassa opetan sinulle, kuinka luoda LED -peli, jossa on hyvin vähän koodia tai kokemusta! Minulla oli tämä idea jonkin aikaa ja lopulta ryhdyin sen luomiseen. Se on hauska peli, joka muistuttaa meitä kaikkia arcade -pelejä. On myös muita opetusohjelmia
Arduino Cyclone Arcade Game: 6 vaihetta
Arduino Cyclone Arcade -peli: Blinky flashy lights! Arduino! Peli! Mitä muuta tarvitsee sanoa? Tämä peli perustuu Cyclone -arcade -peliin, jossa pelaaja yrittää estää ledin vierityksen ympyrän ympäri tietyllä paikalla