INHOUDSOPGAWE:
- Stap 1: Bou 'n elektroniese stroombaan
- Stap 2: Wysig Verilog -kode
- Stap 3: Laai Verilog -kode op
- Stap 4: Laai Raspberry Pi -kode op
- Stap 5: Kom ons probeer dit
Video: FPGA Cyclone IV DueProLogic Controls Raspberry Pi -kamera: 5 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:23
Ondanks die FPGA DueProLogic is amptelik ontwerp vir Arduino, gaan ons die FPGA en Raspberry Pi 4B oordraagbaar maak.
Drie take word in hierdie tutoriaal geïmplementeer:
(A) Druk gelyktydig op die twee drukknoppies op FPGA om die hoek van die RPi -kamera te draai.
(B) Raspberry Pi 4B beheer die eksterne LED -kring van FPGA.
(C) Stroom die Raspberry Pi -kamera regstreeks via die blaaier via WiFi
Stap 1: Bou 'n elektroniese stroombaan
Stap 2: Wysig Verilog -kode
As u die FPGA DueProLogic koop, moet u 'n DVD ontvang. Nadat u 'Projects_HDL' oopgemaak het, moet u die oorspronklike HDL -kode lêer sien. Nadat u die penbeplanner opgestel het, voeg die gemerkte kode by soos aangedui in afdeling 2A, 2B, 2C en 2D.
2A: Om drukknoppies te aktiveer, moet u hierdie kode gebruik
// Drukknopskakelaars
insetdraad UBA,
insetdraad UBB
Om met Raspberry Pi te kommunikeer, moet u dit byvoeg.
reg sel_send; // aktiveer Framboos pi
reg ontvang; // ontvang van framboos pi
2B: Om waardes aan die poorte toe te ken, moet u die kode dienooreenkomstig wysig
ken XIO_1 [3] toe = start_stop_cntrl;
ken XIO_2 [2] = ontvang toe; // voer HOOG of LAAG uit in LED -stroombaan
ken XIO_2 [3] = ~ UBA toe; //druk knoppie
ken XIO_2 [4] = UBB toe; //druk knoppie
ken XIO_2 [5] toe = sel_send; // FPGA stuur sein na framboos pi
ken sel_read = XIO_5 [1] toe; // FPGA ontvang sein van framboos pi
ken c_enable = XIO_5 [2] toe; // XIO_5 - UB57 - D17
ken LEDExt = XIO_5 [5] toe;
2C: As twee drukknoppies gelyktydig ingedruk word, stuur die FPGA HOOG uitvoer na Raspberry Pi.
altyd @(sel_send of UBB of UBA) // stuur na RPi
begin
as (UBB == 1'b0 && UBA == 1'b0)
sel_send = 1'b1;
anders
sel_send = 1'b0;
einde
2D: Die FPGA leessein van Raspberry Pi met die klokfrekwensie van 66MHz. Die poort XIO_2 [2] is gekoppel aan 'ontvang'.
altyd @(sel_read) // lees pi
begin
as (sel_read == 1'b1)
ontvangs = 1'b0;
anders
ontvangs = 1'b1;
einde
Stap 3: Laai Verilog -kode op
Laai dan die saamgestelde pof -lêer op na die FPGA. As geen hardeware outomaties opgespoor word nie, klik dan op "Hardware Setup" om dit met die hand reg te stel
Stap 4: Laai Raspberry Pi -kode op
Die gemerkte lyne laat die FPGA toe om met Raspberry Pi te kommunikeer.
Die volledige Raspberry Pi-kode vir hierdie projek,
A = GPIO.input (pin) #read FPGAprint (A);
as (A == 1):
kamera.rotasie = 0
GPIO.output (18, GPIO. LOW) #send na FPGA
as (A == 0):
kamera.rotasie = 180
GPIO.output (18, GPIO. HIGH) #send na FPGA
Stap 5: Kom ons probeer dit
Maak u blaaier oop en tik u IP -adres, bv. 192.168.xx.xxx:8000.
Die stelsel behoort immers te werk!
Aanbeveel:
FPGA Cyclone IV DueProLogic - drukknop en LED: 5 stappe
FPGA Cyclone IV DueProLogic - drukknop en LED: In hierdie tutoriaal gaan ons die FPGA gebruik om die eksterne LED -stroombaan te beheer. Ons gaan die volgende take uitvoer (A) Gebruik die drukknoppies op FPGA Cyclone IV DuePrologic om LED te beheer. (B) Flash LED aan & periodiek af Video demo -laboratorium
FPGA Cyclone IV DueProLogic Controls Servomotor: 4 stappe
FPGA Cyclone IV DueProLogic Controls Servomotor: In hierdie tutoriaal gaan ons Verilog -kode skryf om die servomotor te beheer. Die servo SG-90 word vervaardig deur Waveshare. As u die servomotor koop, ontvang u moontlik 'n datablad wat die werkspanning, maksimum wringkrag en die voorgestelde Pu
Arduino Cyclone Game: 5 stappe (met foto's)
Arduino Cyclone Game: Ek het nog nooit die regte sikloon -arkadespel gespeel nie, maar ek hou van die idee om met ons reaksietyd te speel. Ek het 'n geminiaturiseerde spel ontwerp. Dit bestaan uit 32 LED's wat 'n sirkel vorm, die LED's brand een vir een as 'n geleide jaer. Die doel is om 'n knop te druk
Arduino Cyclone Arcade Game: 6 stappe
Arduino Cyclone Arcade Game: Knipperende flitsende ligte! Arduino! Spel! Wat meer moet gesê word? Hierdie speletjie is gebaseer op die Cyclone -arcade -speletjie, waar die speler probeer om 'n led te stop wat op 'n spesifieke plek om 'n sirkel draai
Digispark Controls Relay Via GSM: 3 stappe
Digispark Controls Relay Via GSM: Hierdie instruksies gebruik 'n Digispark -bord, tesame met 'n relais en GSM -module om die huidige toestand na 'n voorafbepaalde telefoonnommer (s) te stuur. Die kode is baie kru, reageer op enige kommunikasie uit die module t