विषयसूची:
- चरण 1: इलेक्ट्रॉनिक सर्किट बनाएँ
- चरण 2: पिन प्लानर की जांच करें और वेरिलोग कोड संपादित करें
- चरण 3: वेरिलोग कोड संपादित करें
- चरण 4: वेरिलोग कोड संकलित करें
- चरण 5: आइए इसे आजमाएं
वीडियो: FPGA चक्रवात IV ड्यूप्रोलॉजिक - पुश बटन और एलईडी: 5 कदम
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:19
इस ट्यूटोरियल में, हम बाहरी एलईडी सर्किट को नियंत्रित करने के लिए FPGA का उपयोग करने जा रहे हैं। हम निम्नलिखित कार्यों को लागू करने जा रहे हैं
(ए) एलईडी को नियंत्रित करने के लिए एफपीजीए चक्रवात IV ड्यूप्रोलॉजिक पर पुश बटन का उपयोग करें।
(बी) फ्लैश एलईडी समय-समय पर चालू और बंद करें
वीडियो डेमो
लैब मेनू:
चरण 1: इलेक्ट्रॉनिक सर्किट बनाएँ
चरण 2: पिन प्लानर की जांच करें और वेरिलोग कोड संपादित करें
चरण 3: वेरिलोग कोड संपादित करें
जब आप 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
इनपुट वायर [५:०] XIO_5, //XIO -- D38-D45
आउटपुट वायर [४:०] XIO_6_OUT, //XIO -- D46-D53
इनपुट वायर [३१:५] XIO_6, //XIO -- D46-D53
आउटपुट वायर [२:०] XIO_7, //XIO -- D69, D70, D71, D74, D75, D76
इनपुट वायर UBA, // पुश बटन स्विच
इनपुट वायर UBB // पुश बटन स्विच
असाइन करें XIO_1[3] = start_stop_cntrl;
असाइन करें XIO_2[1] = start_blinky; // एलईडी फ्लैश एलईडी चालू और बंद
असाइन करें XIO_2[2] = 1'b1; // आउटपुट हाई
असाइन करें XIO_2[3] = ~UBA; // पुश बटन ए
असाइन करें XIO_2[4] = UBB; // पुश बटन बी
असाइन करें c_enable = XIO_5[2];
LEDExt = XIO_5 [5] असाइन करें;
फिर हमें विलंब टाइमर सेट करना होगा। मूल टाइमर कोड पर टिप्पणी करें और एक नया टाइमर फ़ंक्शन लिखें
//-----------------------------------------------
// एलईडी ब्लिंकी स्टार्ट
//-----------------------------------------------
/*
हमेशा @(पोज्ड CLK_66 या negedge RST)
शुरू
अगर (! आरएसटी)
start_blinky <= 1'b0;
अन्यथा
शुरू
अगर (कंट्रोल_रजिस्टर [7:4]> 0)
start_blinky <= 1'b1;
अन्यथा
start_blinky <= 1'b0;
समाप्त
समाप्त
*/
reg [३१:०] पूर्व;
प्रारंभिक शुरुआत
पूर्व <= 32'b0;
start_blinky <= 1'b0;
समाप्त
हमेशा @(पोज CLK_66)
शुरू
उदा <= उदा + 1'b1;
अगर (पूर्व> 100000000) // फ्लैश चालू / बंद ~ 1.6 सेकंड, घड़ी 66 मेगाहर्ट्ज
शुरू
start_blinky <= !start_blinky;
पूर्व <= 32'b0;
समाप्त
समाप्त
//-----------------------------------------------
// एलईडी देरी टाइमर काउंटर
//-----------------------------------------------
/*
हमेशा @(पोज्ड CLK_66 या negedge RST)
शुरू
अगर (! आरएसटी)
LED_delay_counter <= TIMER_LOW_LIMIT;
अन्यथा
शुरू
अगर (राज्य[SELECT_MODE])
LED_delay_counter <= टाइमर_वैल्यू;
और अगर (राज्य [WAIT_FOR_TIMER])
LED_delay_counter <= led_delay_counter - 1'd1;
समाप्त
समाप्त*/
चरण 4: वेरिलोग कोड संकलित करें
क्वार्टस में "स्टार्ट कंपाइलेशन" दबाएं, कोई त्रुटि संदेश उत्पन्न नहीं होना चाहिए।
यदि आपको एकाधिक पिन के बारे में त्रुटि संदेश प्राप्त होता है। असाइनमेंट पर जाएं -> डिवाइस -> डिवाइस और पिन विकल्प -> दोहरे उद्देश्य वाले पिन -> उपयुक्त पिन के मान को "नियमित I/O के रूप में उपयोग करें" में बदलें।
संकलन के बाद, आपको सीधे pof आउटपुट फ़ाइल मिलनी चाहिए। यदि आपका सॉफ्टवेयर अप-टू-डेट नहीं है, तो आपको केवल सॉफ्ट फाइल ही मिल सकती है। जब ऐसा होता है, तो क्वार्टस में "फाइल" पर क्लिक करें -> "प्रोग्रामिंग फाइलों को कनवर्ट करें"। लाल बक्सों द्वारा चिह्नित सेटिंग्स को बदलें।
चरण 5: आइए इसे आजमाएं
आखिरकार, यह काम करना चाहिए !!! पीली एलईडी हमेशा चालू रहती है। लाल एलईडी चमकती है। यदि आप बटन बी दबाते हैं तो नीली एलईडी बंद हो जाती है। यदि आप बटन ए दबाते हैं तो हरी एलईडी चालू हो जाती है
सिफारिश की:
FPGA चक्रवात IV ड्यूप्रोलॉजिक रास्पबेरी पाई कैमरा को नियंत्रित करता है: 5 कदम
FPGA चक्रवात IV ड्यूप्रोलॉजिक नियंत्रण रास्पबेरी पाई कैमरा: FPGA DueProLogic को आधिकारिक तौर पर Arduino के लिए डिज़ाइन किए जाने के बावजूद, हम FPGA और रास्पबेरी पाई 4B को संचारी बनाने जा रहे हैं। इस ट्यूटोरियल में तीन कार्य लागू किए गए हैं: (A) एक साथ दो पुश बटन दबाएं FPGA के कोण को फ़्लिप करने के लिए
FPGA चक्रवात IV ड्यूप्रोलॉजिक सर्वो मोटर को नियंत्रित करता है: 4 कदम
FPGA Cyclone IV DueProLogic Controls Servo Motor: इस ट्यूटोरियल में, हम सर्वो मोटर को नियंत्रित करने के लिए Verilog कोड लिखने जा रहे हैं। सर्वो SG-90 का निर्माण वेवशेयर द्वारा किया जाता है। जब आप सर्वो मोटर खरीदते हैं, तो आपको एक डेटाशीट प्राप्त हो सकती है जिसमें ऑपरेटिंग वोल्टेज, अधिकतम टॉर्क और प्रस्तावित पु
Arduino चक्रवात खेल: 5 कदम (चित्रों के साथ)
Arduino Cyclone Game: मैंने कभी असली साइक्लोन आर्केड गेम नहीं खेला है, लेकिन मुझे अपने प्रतिक्रिया समय के साथ खेलने का विचार पसंद है। मैंने एक छोटा सा गेम डिज़ाइन किया है। इसमें 32 एल ई डी होते हैं जो एक सर्कल बनाते हैं, एल ई डी एक एलईडी चेज़र के रूप में एक-एक करके रोशनी करता है। लक्ष्य एक बटन दबाना है
चक्रवात (Arduino LED गेम): 6 कदम (चित्रों के साथ)
Cyclone(Arduino LED Game): इस ट्यूटोरियल में, मैं आपको सिखाऊंगा कि बहुत कम कोड या अनुभव के साथ एक LED गेम कैसे बनाया जाता है! मेरे पास यह विचार कुछ समय के लिए था और अंत में इसे बनाने के लिए तैयार हो गया। यह एक मजेदार गेम है जो हमें सभी आर्केड गेम की याद दिलाता है। अन्य ट्यूटोरियल टी हैं
चक्रवात एलईडी आर्केड गेम: 4 कदम
साइक्लोन एलईडी आर्केड गेम: इस परियोजना का उद्देश्य एक Arduino का उपयोग करके एक सरल गेम बनाना था जो बच्चों के लिए इंटरैक्टिव और मनोरंजक होगा। मुझे याद है कि जब मैं छोटा था तब साइक्लोन आर्केड गेम मेरे पसंदीदा आर्केड गेम में से एक था, इसलिए मैंने इसे दोहराने का फैसला किया। टी