Daftar Isi:
2025 Pengarang: John Day | [email protected]. Terakhir diubah: 2025-01-13 06:57
Meskipun FPGA DueProLogic secara resmi dirancang untuk Arduino, kami akan membuat FPGA dan Raspberry Pi 4B dapat dikomunikasikan.
Tiga tugas diimplementasikan dalam tutorial ini:
(A) Secara bersamaan tekan dua tombol pada FPGA untuk membalik sudut kamera RPi.
(B) Raspberry Pi 4B mengontrol sirkuit LED eksternal FPGA.
(C) Streaming langsung Kamera Raspberry Pi di Browser melalui WiFi
Langkah 1: Bangun Sirkuit Elektronik
Langkah 2: Edit Kode Verilog
Saat Anda membeli FPGA DueProLogic, Anda akan menerima DVD. Setelah Anda membuka "Projects_HDL", Anda akan melihat file kode HDL asli. Setelah Anda mengatur perencana pin, tambahkan kode yang disorot seperti yang ditunjukkan pada bagian 2A, 2B, 2C dan 2D.
2A: Untuk mengaktifkan tombol tekan, Anda harus menggunakan kode ini
// Saklar Tombol Tekan
kabel masukan UBA,
kabel masukan UBB
Untuk berkomunikasi dengan Raspberry Pi, Anda perlu menambahkan ini.
reg kirim_sel; //aktifkan Raspberry pi
pendaftaran ulang; //diterima dari raspberry pi
2B: Untuk memberikan nilai ke port, Anda harus mengedit kode yang sesuai
tetapkan XIO_1[3] = start_stop_cntrl;
tetapkan XIO_2[2] = rece; //output TINGGI atau RENDAH di sirkuit LED
menetapkan XIO_2[3] = ~UBA; //tekan tombol
tetapkan XIO_2[4] = UBB; //tekan tombol
tetapkan XIO_2[5] = sel_send; // FPGA mengirimkan sinyal ke raspberry pi
tetapkan sel_read= XIO_5[1]; //FPGA menerima sinyal dari raspberry pi
tetapkan c_enable = XIO_5[2]; //XIO_5 -- UB57 -- D17
menetapkan LEDExt = XIO_5[5];
2C: Jika dua tombol tekan ditekan secara bersamaan, FPGA mengirimkan output TINGGI ke Raspberry Pi.
selalu @(sel_send atau UBB atau UBA) //kirim ke RPi
mulai
jika (UBB == 1'b0 && UBA == 1'b0)
sel_send = 1'b1;
lain
sel_send = 1'b0;
akhir
2D: FPGA membaca sinyal dari Raspberry Pi dengan frekuensi clock 66MHz. Port XIO_2[2] ditautkan ke 'rece'.
selalu @(sel_read) //baca pi
mulai
if (sel_read == 1'b1)
rece = 1'b0;
lain
rece = 1'b1;
akhir
Langkah 3: Unggah Kode Verilog
Kemudian unggah file pof yang dikompilasi ke FPGA. Jika tidak ada perangkat keras yang terdeteksi secara otomatis, klik "Pengaturan Perangkat Keras" untuk memperbaikinya secara manual
Langkah 4: Unggah Kode Raspberry Pi
Garis yang disorot memungkinkan FPGA berkomunikasi dengan Raspberry Pi.
Kode Raspberry Pi lengkap untuk proyek ini,
A = GPIO.input(pin) #baca FPGAprint(A);
jika (A==1):
kamera.rotasi = 0
GPIO.output(18, GPIO. LOW) #kirim ke FPGA
jika (A==0):
kamera.rotasi = 180
GPIO.output(18, GPIO. HIGH) #kirim ke FPGA
Langkah 5: Ayo Coba
Buka browser Anda dan ketik alamat IP Anda mis. 192.168.xx.xxx:8000.
Bagaimanapun, sistem harus bekerja!