Სარჩევი:

FPGA Cyclone IV DueProLogic აკონტროლებს ჟოლოს Pi კამერა: 5 ნაბიჯი
FPGA Cyclone IV DueProLogic აკონტროლებს ჟოლოს Pi კამერა: 5 ნაბიჯი

ვიდეო: FPGA Cyclone IV DueProLogic აკონტროლებს ჟოლოს Pi კამერა: 5 ნაბიჯი

ვიდეო: FPGA Cyclone IV DueProLogic აკონტროლებს ჟოლოს Pi კამერა: 5 ნაბიჯი
ვიდეო: FPGA Cyclone IV DueProLogic - Push button & LED (Tutorial & code) 2024, ნოემბერი
Anonim
FPGA Cyclone IV DueProLogic აკონტროლებს ჟოლოს Pi კამერას
FPGA Cyclone IV DueProLogic აკონტროლებს ჟოლოს Pi კამერას

მიუხედავად FPGA DueProLogic ოფიციალურად შექმნილია Arduino– სთვის, ჩვენ ვაპირებთ გავხადოთ FPGA და Raspberry Pi 4B გადამდები.

ამ გაკვეთილში სამი ამოცანაა შესრულებული:

(A) ერთდროულად დააჭირეთ ორ ღილაკს FPGA– ზე, რათა გადაახვიოთ RPi კამერის კუთხე.

(B) Raspberry Pi 4B აკონტროლებს FPGA გარე LED წრეს.

(გ) Raspberry Pi კამერის პირდაპირი ტრანსლაცია ბრაუზერში WiFi- ით

ნაბიჯი 1: შექმენით ელექტრონული წრე

ნაბიჯი 2: შეცვალეთ Verilog კოდი

ვერილოგის კოდის რედაქტირება
ვერილოგის კოდის რედაქტირება
ვერილოგის კოდის რედაქტირება
ვერილოგის კოდის რედაქტირება

როდესაც ყიდულობთ FPGA DueProLogic– ს, უნდა მიიღოთ DVD. მას შემდეგ რაც გახსნით "Projects_HDL" - ს, თქვენ უნდა ნახოთ ორიგინალური HDL კოდის ფაილი. მას შემდეგ, რაც შექმნით pin დამგეგმავს, დაამატეთ მონიშნული კოდი, როგორც ნაჩვენებია 2A, 2B, 2C და 2D ნაწილში.

2A: ღილაკების გასააქტიურებლად, თქვენ უნდა გამოიყენოთ ეს კოდი

// Push Button კონცენტრატორები

შეყვანის მავთული UBA,

შეყვანის მავთული UBB

Raspberry Pi– თან დასაკავშირებლად, თქვენ უნდა დაამატოთ ეს.

reg sel_send; // გააქტიურეთ Raspberry pi

რეგ მიმღები; // მიღებული ჟოლოს პი

2B: პორტებს ღირებულებების მინიჭების მიზნით, თქვენ უნდა შეცვალოთ კოდი შესაბამისად

მიანიჭეთ XIO_1 [3] = start_stop_cntrl;

მინიჭება XIO_2 [2] = მიმღები; // გამომავალი მაღალი ან დაბალი LED წრეში

დავალება XIO_2 [3] = ~ UBA; // დააჭირეთ ღილაკს

მინიჭება XIO_2 [4] = UBB; // დააჭირეთ ღილაკს

მიანიჭეთ XIO_2 [5] = sel_send; // FPGA აგზავნის სიგნალს ჟოლოს პიზე

მიანიჭე sel_read = XIO_5 [1]; // FPGA იღებს სიგნალს ჟოლოს პიდან

მინიჭება c_enable = XIO_5 [2]; // XIO_5 - UB57 - D17

მინიჭება LEDExt = XIO_5 [5];

2C: თუ ერთდროულად დააჭირეთ ორ ღილაკს, FPGA უგზავნის HIGH გამომავალს ჟოლოს Pi- ს.

ყოველთვის @(sel_send ან UBB ან UBA) // გაგზავნა RPi– ზე

დაწყება

თუ (UBB == 1'b0 && UBA == 1'b0)

sel_send = 1'b1;

სხვა

sel_send = 1'b0;

დასასრული

2D: FPGA კითხულობს სიგნალს Raspberry Pi– დან საათის სიხშირით 66 MHz. პორტი XIO_2 [2] დაკავშირებულია "rece" - თან.

ყოველთვის @(sel_read) // წაიკითხე პი

დაწყება

თუ (sel_read == 1'b1)

მიმღები = 1'b0;

სხვა

მიმღები = 1'b1;

დასასრული

ნაბიჯი 3: ატვირთეთ Verilog კოდი

ატვირთეთ Verilog კოდი
ატვირთეთ Verilog კოდი

შემდეგ ატვირთეთ შედგენილი pof ფაილი FPGA- ში. თუ ტექნიკა არ არის გამოვლენილი ავტომატურად, დააწკაპუნეთ "აპარატურის დაყენებაზე", რომ ხელით შეასწოროთ

ნაბიჯი 4: ატვირთეთ Raspberry Pi კოდი

ხაზგასმული ხაზები საშუალებას აძლევს FPGA– ს დაუკავშირდეს Raspberry Pi– ს.

ამ პროექტის სრული Raspberry Pi კოდი,

A = GPIO.input (pin) #წაიკითხეთ FPGAprint (A);

თუ (A == 1):

კამერა. ბრუნვა = 0

GPIO.output (18, GPIO. LOW) #გაგზავნეთ FPGA– ში

თუ (A == 0):

კამერა. ბრუნვა = 180

GPIO.output (18, GPIO. HIGH) #გაგზავნეთ FPGA– ში

ნაბიჯი 5: მოდით ვცადოთ

Image
Image

გახსენით თქვენი ბრაუზერი და ჩაწერეთ თქვენი IP მისამართი მაგ. 192.168.xx.xxx:8000.

ყოველივე ამის შემდეგ, სისტემა უნდა იმუშაოს!

გირჩევთ: