Სარჩევი:
- ნაბიჯი 1: შექმენით ელექტრონული წრე
- ნაბიჯი 2: შეამოწმეთ Pin Planner და შეცვალეთ Verilog კოდი
- ნაბიჯი 3: შეცვალეთ Verilog კოდი
- ნაბიჯი 4: შეადგინეთ Verilog Code
- ნაბიჯი 5: მოდით ვცადოთ
ვიდეო: FPGA Cyclone IV DueProLogic - Push Button & LED: 5 Steps
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:15
ამ გაკვეთილში, ჩვენ ვაპირებთ გამოვიყენოთ FPGA გარე LED წრედის გასაკონტროლებლად. ჩვენ ვაპირებთ შემდეგი ამოცანების განხორციელებას
(A) გამოიყენეთ ღილაკები FPGA Cyclone IV DuePrologic– ზე LED– ის გასაკონტროლებლად.
(B) პერიოდულად ჩართეთ და გამორთეთ Flash LED
ვიდეო დემო
ლაბორატორიული მენიუ:
ნაბიჯი 1: შექმენით ელექტრონული წრე
ნაბიჯი 2: შეამოწმეთ Pin Planner და შეცვალეთ Verilog კოდი
ნაბიჯი 3: შეცვალეთ Verilog კოდი
როდესაც ყიდულობთ FPGA DueProLogic– ს, უნდა მიიღოთ DVD. მას შემდეგ რაც გახსნით "Projects_HDL" - ს, თქვენ უნდა ნახოთ ორიგინალური კოდის ფაილი
დაამატეთ მონიშნული კოდი. ის აღრიცხავს I/O პორტებს და რიცხვებს ანიჭებს პორტებს.
გამომავალი მავთული [7: 0] XIO_1, // XIO-D2-D9
გამომავალი მავთული [5: 0] XIO_2, // XIO-D10-D12
გამომავალი მავთული [5: 0] XIO_3, // XIO-D22-D29
შეყვანის მავთული [5: 0] XIO_4, // XIO-D30-D37
შეყვანის მავთული [5: 0] XIO_5, // XIO-D38-D45
გამომავალი მავთული [4: 0] XIO_6_OUT, // XIO-D46-D53
შეყვანის მავთული [31: 5] XIO_6, // XIO-D46-D53
გამომავალი მავთული [2: 0] XIO_7, // XIO - D69, D70, D71, D74, D75, D76
შეყვანის მავთული UBA, // Push Button Switches
შეყვანის მავთული UBB // Push Button კონცენტრატორები
მიანიჭეთ XIO_1 [3] = start_stop_cntrl;
მიანიჭე XIO_2 [1] = დაწყება_ მოციმციმე; // LED flash LED ჩართული და გამორთული
მინიჭება XIO_2 [2] = 1'b1; // გამომავალი მაღალი
დავალება XIO_2 [3] = ~ UBA; // დააჭირეთ ღილაკს A
მინიჭება XIO_2 [4] = UBB; // დააჭირეთ ღილაკს B
მინიჭება c_enable = XIO_5 [2];
მინიჭება LEDExt = XIO_5 [5];
შემდეგ ჩვენ უნდა დავაყენოთ დაგვიანების ქრონომეტრი. დაწერეთ კომენტარი ტაიმერის კოდის შესახებ და ჩაწერეთ ტაიმერის ახალი ფუნქცია
//-----------------------------------------------
// LED მოციმციმე დაწყება
//-----------------------------------------------
/*
ყოველთვის @(posedge CLK_66 ან negedge RST)
დაწყება
თუ (! RST)
start_blinky <= 1'b0;
სხვა
დაწყება
თუ (control_register [7: 4]> 0)
start_blinky <= 1'b1;
სხვა
start_blinky <= 1'b0;
დასასრული
დასასრული
*/
reg [31: 0] ყოფილი;
საწყისი დასაწყისი
ex <= 32'b0;
start_blinky <= 1'b0;
დასასრული
ყოველთვის @(posedge CLK_66)
დაწყება
ex <= ex + 1'b1;
თუ (ყოფილი> 100000000) // ჩართვა/გამორთვა ~ 1.6 წამი, საათი 66 MHz
დაწყება
start_blinky <=! start_blinky;
ex <= 32'b0;
დასასრული
დასასრული
//-----------------------------------------------
// LED დაყოვნების ტაიმერის მრიცხველი
//-----------------------------------------------
/*
ყოველთვის @(posedge CLK_66 ან negedge RST)
დაწყება
თუ (! RST)
led_delay_counter <= TIMER_LOW_LIMIT;
სხვა
დაწყება
თუ (მდგომარეობა [SELECT_MODE])
led_delay_counter <= ქრონომეტრაჟის მნიშვნელობა;
სხვა შემთხვევაში (მიუთითეთ [WAIT_FOR_TIMER])
led_delay_counter <= led_delay_counter - 1'd1;
დასასრული
დასასრული*/
ნაბიჯი 4: შეადგინეთ Verilog Code
დააჭირეთ ღილაკს "შედგენის დაწყება" Quartus– ში, შეცდომის შეტყობინება არ უნდა იყოს გენერირებული.
თუ თქვენ მიიღებთ შეცდომის შეტყობინებას მრავალი ქინძისთავის შესახებ. გადადით დავალებებზე -> მოწყობილობა -> მოწყობილობისა და პინის პარამეტრები -> ორმაგი დანიშნულების ქინძისთავები -> შეცვალეთ შესაბამისი პინის მნიშვნელობა "გამოიყენეთ როგორც რეგულარული I/O".
შედგენის შემდეგ, თქვენ პირდაპირ უნდა მიიღოთ pof გამომავალი ფაილი. თუ თქვენი პროგრამული უზრუნველყოფა არ არის უახლესი, შეგიძლიათ მიიღოთ მხოლოდ sof ფაილი. როდესაც ეს მოხდება, დააწკაპუნეთ "ფაილზე" Quartus -> "პროგრამირების ფაილების გადაყვანა". შეცვალეთ წითელი ყუთებით მონიშნული პარამეტრები.
ნაბიჯი 5: მოდით ვცადოთ
ყოველივე ამის შემდეგ, ის უნდა იმუშაოს !!! ყვითელი LED ყოველთვის ჩართულია. წითელი LED ანათებს. ლურჯი LED გამორთულია თუ დააჭირეთ ღილაკს B. მწვანე LED ჩართულია თუ დააჭერთ ღილაკს A
გირჩევთ:
FPGA Cyclone IV DueProLogic აკონტროლებს ჟოლოს Pi კამერა: 5 ნაბიჯი
FPGA Cyclone IV DueProLogic აკონტროლებს ჟოლოს კამერას: მიუხედავად იმისა, რომ FPGA DueProLogic ოფიციალურად შექმნილია Arduino– სთვის, ჩვენ ვაპირებთ FPGA და Raspberry Pi 4B გადამდები გავხადოთ. ამ დავალებაში სამი ამოცანაა შესრულებული: (ა) ერთდროულად დააჭირეთ ორ ღილაკს FPGA გადაატრიალებს კუთხეს
FPGA Cyclone IV DueProLogic Controls Servo Motor: 4 ნაბიჯი
FPGA Cyclone IV DueProLogic Controls Servo Motor: ამ სახელმძღვანელოში ჩვენ ვაპირებთ დავწეროთ Verilog კოდი სერვო ძრავის გასაკონტროლებლად. Servo SG-90 დამზადებულია Waveshare– ის მიერ. როდესაც ყიდულობთ სერვო ძრავას, თქვენ შეიძლება მიიღოთ მონაცემთა ფურცელი, რომელშიც მოცემულია სამუშაო ძაბვა, მაქსიმალური ბრუნვის მომენტი და შემოთავაზებული Pu
DIY AC/ DC Hack "Mod" RD6006 Power Supply & S06A Case W/ S-400-60 PSU Build & Upgraded DC Input: 9 Steps
DIY AC/ DC Hack "Mod" RD6006 Power Supply & S06A Case W/ S-400-60 PSU Build & Upgrade რა მაგრამ მე ნამდვილად მსურს არჩევანის გაკეთება ბატარეის გადასატანად ან ელექტროენერგიის გათიშვისთვის. ასე რომ, მე ასევე გავტეხე ან მოვახერხე საქმის მიღება DC– ს ან ბატარეაში
Amazon Dash Button Silent Doorbell: 10 Steps (სურათებით)
Amazon Dash Button Silent Doorbell: მუდმივად იყურებით ფანჯრიდან ისე, რომ თქვენ შეძლოთ სტუმრების ჩაგდება, სანამ კარზე ზარი დარეკავს? დაიღალეთ ძაღლებით და ბავშვი გიჟდება როდის დარეკავს? არ მინდა ფულის დახარჯვა " ჭკვიანურ " გამოსავალი? კარის ჩუმად ზარის გაკეთება არის
Sun Three Button RGB Light Doodler Mouse .: 11 Steps (სურათებით)
Sun Three Button RGB Light Doodler Mouse .: მე ვხვდები ლორი სტოტკოს და სტიუარტ ნაფეის http://lightdoodles.com/ ამ წლებში Makers Faire Auditions. მათ ჰქონდათ ეს მაგარი მსუბუქი კალმები, რომლითაც ისინი დუდლის გაკეთებას ცდილობდნენ. სახლში მისვლისთანავე გადავწყვიტე გამეკეთებინა და გამახსენდა ძველი მზე სამი ღილაკიანი თაგვი