תוכן עניינים:
- שלב 1: בנה מעגל אלקטרוני
- שלב 2: בדוק את מתכנן הפינים וערוך את קוד Verilog
- שלב 3: ערוך את קוד Verilog
- שלב 4: הידור קוד Verilog
- שלב 5: בוא ננסה
וִידֵאוֹ: FPGA Cyclone IV DueProLogic - לחצן לחיצה ומנורת LED: 5 שלבים
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:12
במדריך זה אנו הולכים להשתמש ב- FPGA לשליטה במעגל LED חיצוני. אנו הולכים ליישם את המשימות הבאות
(א) השתמש בלחצני הלחיצה ב- FPGA Cyclone IV DuePrologic לשליטה ב- LED.
(ב) נורית הבזק מופעלת וכיבוי מעת לעת
הדגמת וידאו
תפריט מעבדה: https://roywchpi.blogspot.com 2020/06/10-fpga-dueprologic-push-button-led.html
שלב 1: בנה מעגל אלקטרוני
שלב 2: בדוק את מתכנן הפינים וערוך את קוד Verilog
שלב 3: ערוך את קוד Verilog
כאשר אתה קונה FPGA DueProLogic, אתה אמור לקבל DVD. לאחר פתיחת "Projects_HDL", אתה אמור לראות את קובץ הקוד המקורי
הוסף את הקוד המודגש. הוא רושם את יציאות הקלט/פלט ומקצה מספרים ליציאות.
חוט פלט [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, // מתגי לחצנים
חוט קלט UBB // מתגי לחצנים
הקצה XIO_1 [3] = start_stop_cntrl;
הקצה XIO_2 [1] = start_blinky; // פלאש 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
//-----------------------------------------------
/*
always @(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;
סוֹף
always @(posedge CLK_66)
התחל
ex <= ex + 1'b1;
אם (לשעבר> 100000000) // הבזק הפעלה/כיבוי ~ 1.6 שניות, שעון 66MHz
התחל
start_blinky <=! start_blinky;
ex <= 32'b0;
סוֹף
סוֹף
//-----------------------------------------------
// מונה טיימר טיימר לד
//-----------------------------------------------
/*
always @(posedge CLK_66 או negedge RST)
התחל
אם (! RST)
counter_delay_counter <= TIMER_LOW_LIMIT;
אַחֵר
התחל
אם (ציין [SELECT_MODE])
led_delay_counter <= timer_value;
אחרת אם (ציין [WAIT_FOR_TIMER])
led_delay_counter <= led_delay_counter - 1'd1;
סוֹף
סוֹף*/
שלב 4: הידור קוד Verilog
לחץ על "התחל אוסף" ב- Quartus, אין ליצור הודעת שגיאה.
אם תקבל הודעת שגיאה על מספר סיכות. עבור אל מטלות -> מכשיר -> מכשיר ואפשרויות סיכה -> סיכות למטרות כפולות -> שנה את ערך הסיכה המתאימה ל"שימוש כקלט/פלט רגיל ".
לאחר האוסף, אתה אמור לקבל קובץ פלט POF ישירות. אם התוכנה שלך לא מעודכנת, ייתכן שתקבל קובץ sof בלבד. כאשר זה קורה, לחץ על "קובץ" ב- Quartus -> "המר קבצי תכנות". שנה את ההגדרות המסומנות בתיבות אדומות.
שלב 5: בוא ננסה
אחרי הכל, זה אמור לעבוד !!! הנורית הצהובה דולקת תמיד. הנורית האדומה מהבהבת. הנורית הכחולה כבויה אם תלחץ על כפתור B. הנורית הירוקה נדלקת אם תלחץ על כפתור A
מוּמלָץ:
השתמש בלחצני לחיצה ב- Magicbit שלך [Magicblocks]: 5 שלבים
השתמש בלחצני לחיצה ב- Magicbit שלך [Magicblocks]: מדריך זה ילמד אותך להשתמש בכפתורי הדחיפה ב- Magicbit שלך באמצעות Magicblocks. אנו משתמשים ב- magicbit כלוח הפיתוח בפרויקט זה המבוסס על ESP32. לכן ניתן להשתמש בכל לוח פיתוח ESP32 בפרויקט זה
מצלמות FPGA Cyclone IV DueProLogic פטל מצלמה: 5 שלבים
FPGA Cyclone IV DueProLogic Controls מצלמה פטל פי: למרות FPGA DueProLogic מיועד רשמית עבור Arduino, אנו הולכים להפוך את FPGA ו- Raspberry Pi 4B לתקשורת. שלוש משימות מיושמות במדריך זה: (א) במקביל לחץ על שני לחצני הלחיצה על FPGA כדי להפוך את הזווית של
FPGA ציקלון IV DueProLogic פקדי סרוו מנוע סרוו: 4 שלבים
FPGA Cyclone IV DueProLogic פקדי סרוו מנוע סרוו: במדריך זה אנו הולכים לכתוב קוד Verilog לשליטה במנוע סרוו. סרוו SG-90 מיוצר על ידי Waveshare. בעת רכישת מנוע סרוו, יתכן שתקבל גליון נתונים המפרט את מתח ההפעלה, המומנט המרבי ואת הפו המוצע
Aruduino LED משחק לחיצה מהירה על שני שחקנים: 8 שלבים
משחק Aruduino LED לחיצה מהירה על שני שחקנים: פרויקט זה בהשראת @HassonAlkeim. אם אתה מוכן להציץ לעומק הנה קישור שאתה יכול לבדוק https://www.instructables.com/id/Arduino-Two-Player-Fast-Button-Clicking-Game/. המשחק הזה הוא גרסה משופרת של Alkeim. זה
בקרת בהירות בקרת LED מבוססת PWM באמצעות לחצני לחיצה, פטל פאי ושריטה: 8 שלבים (עם תמונות)
בקרת בהירות בקרת LED מבוססת PWM באמצעות לחצני לחיצה, פטל פאי ושריטה: ניסיתי למצוא דרך להסביר כיצד PWM פועל לתלמידי, אז הנחתי לעצמי את המשימה לנסות לשלוט על בהירות הנורית באמצעות 2 כפתורי לחיצה. - כפתור אחד מגביר את הבהירות של נורית LED והשני מעמעם אותו. לפרוגרה