विषयसूची:

C/C++ En Arduino: Uso De Librerías Y Objetos: 4 Steps
C/C++ En Arduino: Uso De Librerías Y Objetos: 4 Steps

वीडियो: C/C++ En Arduino: Uso De Librerías Y Objetos: 4 Steps

वीडियो: C/C++ En Arduino: Uso De Librerías Y Objetos: 4 Steps
वीडियो: Crea tus propias librerías para Arduino | C++ 2024, जुलाई
Anonim
C/C++ En Arduino: Uso De Librerías Y Objetos
C/C++ En Arduino: Uso De Librerías Y Objetos

लास पॉसिबिलिडेड्स डे अरुडिनो से पुएडे एक्सटेंडर यूसांडो लाइब्रेरिया। लास लाइब्रेरियास प्रोवेन फंक्शनलिडैड एक्स्ट्रा, एन इस्टे इंस्ट्रक्शनल, पैरा पोडर यूटिलिज़र उना पैंटाला ओएलईडी। एका से उपयोग 3 पुस्तकालय, उन पर विचार डिजिटल I2C, अन्य उपयोग के लिए ला पेंटाल्ला OLED, y ला टेरसेरा पैरा क्रेयर ग्रैफिकोस एन ला पैंटाला।

उना डे लास लाइब्रेरियास नोस परमिट क्रेयर अन ओब्जेटो टिपो पेंटाल्ला, कोन ला क्यूल पोडेमोस कंट्रोलर ला पेंटाला ओएलईडी एन न्यूस्ट्रो कोडिगो। अन ओब्जेटो एन सी++ (सी ओरिएंटैडो ए ओब्जेटोस), एस यूना एस्ट्रक्चुरा मास ग्रांडे क्यू उना वेरिएबल (पोर एएसआई डेसीरलो) क्यू टिएन प्रोपीएडेड्स और फंकियोन्स प्रोपियस। उसंडोलो क्वेडारा मास क्लारो।

पैरा इनकॉर्पोरार उन लाइब्रेरिया अल एम्बिएंट डे अरुडिनो आईडीई, पुएडेन सेगुइर इस्टस इंस्ट्रुक्शंस डे अरुडिनो। पैरा उसरला एन उना पोर्सिओन डे कोडिगो, इस्तास से ललमन अल इनिसियो डेल कोडिगो, डे ला सिगुएंटे मानेरा कोन ला डायरेक्टिवा #शामिल:

#शामिल करें < nombreLibreria.h >

Esto lo veremos en detalle en este निर्देशयोग्य

चरण 1: सामग्री

सामग्री
सामग्री
सामग्री
सामग्री

लॉस मटेरियल्स सोन पोकोस:

  1. अरुडिनो यूएनओ
  2. Pantalla OLED (कोस्टा रिका में)
  3. केबल
  4. ब्रियरबोर्ड

चरण 2: Conexiones

Conexiones
Conexiones
Conexiones
Conexiones
Conexiones
Conexiones

एल ओएलईडी डिस्प्ले से कनेक्ट कोमो से इंडिका एन लास तस्वीरें:

  1. ओएलईडी वीसीसी - अरुडिनो 3.3V
  2. OLED GND - Arduino GND
  3. OLED cs - Arduino GND
  4. OLED रेस - Arduino पिन 4
  5. OLED c/s - Arduino GND
  6. OLED sda - Arduino SDA (पिन A4, या el पिन SDA)
  7. OLED scl - Arduino SCL (पिन A5, या पिन SCL)

Tener cuidado de que el vcc se conecta a 3.3v. औंके एक्स्ट्रानामेंटे, पोर लो मेनोस पैरा ला ओएलईडी क्यू एस्टा एन ला फोटो, पारेसिएरा नो से महत्वपूर्ण एस्टा कॉनेक्सियन

चरण 3: कोडिगो वाई उसो डी लाइब्रेरियास

कोडिगो वाई उसो डी लाइब्रेरियासी
कोडिगो वाई उसो डी लाइब्रेरियासी

कारगार पुस्तकालय

इस तरह से उपयोग किए जाने वाले पुस्तकालय। कोमो से इंडिको एंटेरियोमेंटे वाई से वे एन ला फोटोग्राफिया, लास लिब्रेरियास से इनकॉर्पोरन अल इनिसियो डेल कोडिगो। एन एस्टा कैसो से एग्रीगन 3 लाइब्रेरिया एन लास लाइन्स 4 ए 6:

#शामिल

#शामिल

#शामिल

ला लाइब्रेरिया वायर.एच, एस यूना लाइब्रेरिया नाटिवा, एस डेसीर, वियन कोमो पार्ट डेल पैक्वेट डे अरुडिनो आईडीई और कोई हाय क्यू इंस्टालर नाडा एडिकनल। द्वारा ओट्रो लाडो, लास लिब्रेरियास एडफ्रूट_जीएफएक्स.एच और एडफ्रूट_एसएसडी१३०६.एच, डेबेन सेर इंस्टालाडस। पहले से, सोलामेंट डेसकार्गारलास डी एडफ्रूट जीएफएक्स और एडफ्रूट एसडीडी1306, और सेगुइर लास इंस्ट्रुकिओन्स एसीए।

लाइबेरिया वायर.एच

एस्टा लाइब्रेरिया परमिट संचार I2C। El acronimo I2C, viene de Inter-Integrated Communication, y Permete la communicación digital del arduino que es "master" con varios sensores o Componentes digitales de forma simultánea। डी ऑली क्यू यूटिलिज़मोस लॉस पाइन्स एसडीए और एससीएल एन एल अरुडिनो पैरा कोनेक्टर को ला पेंटाला ओएलईडी। एन एस्टे साइटियो स्पार्कफुन एक्सप्लिका बिएन क्यू ईएस आई२सी। पैरा क्यू फंकियोन एंटोन्स ला पेंटाल्ला से नेसेसिटा प्रिमेरो कारगर एसा लाइब्रेरिया।

लाइब्रेरिया Adafruit_SDD1306.h

एस्टा लाइब्रेरिया परमिट कोनेक्टर और हैसर फंकियोनार ला पेंटाला ओएलईडी ए ट्रैवेस डेल अरुडिनो। AL usarla, creamos un objeto SDD1306 que nos permete utilizar la pantalla fácilmente, eso lo veremos en la siguiente sección.

लाइब्रेरिया Adafruit_GFX.h

एस्टा लाइब्रेरिया नो परमिट डिबुजर फिगुरस जियोमेट्रिकस, एस्क्रिबिर टेक्स्टोस और यूटिलिजर टोडास लास पॉसिबिलिडेड्स ग्रैफिकास डे ला पेंटाला ओएलईडी। अल फाइनल डे एस्टे इंस्ट्रक्शनल हागो अन लिस्टैडो डे अल्गुनास डे लास फंकियोन्स क्यू से पुएडेन यूटिलिज़र को एस्टा लाइब्रेरिया और क्यू ट्रांसफॉर्मन ला पेंटाला ओएलईडी एन उना पेंटाला डे मल्टीपल प्रोपोसिटोस।

इंस्टांसियॉन डे ओब्जेतो

Después declarar todas las librerías, en la linea 10 del código se declara un objeto de tipo SDD1306 que lo llamamos "डिस्प्ले"। अल डिक्लेरारलो, डिबेमोस इंडिकर क्यूएल एस एल पिन डे रीसेट, एन एस्टे कैसो एल पिन 4:

SSD1306 डिस्प्ले(4);

ए पार्टिर डे एस्टे पुंटो, या से क्रीया अन ओब्जेटो टिपो एसएसडी१३०६, और पोडेमोस एसेसर ए टोडास लास फंकियोन्स डेल ओब्जेटो एस्क्रिबिएन्डो एल आइडेंटिफाडोर डेल ओब्जेटो वाई लुएगो अन पुंटो कॉन ला प्रोपिएड ओ फंशियोन क्यू डेसीमोस। उदाहरण के लिए 13 वर्ष 14, डिस्प्ले.बेगिन (SSD1306_SWITCHCAPVCC, 0x3c); डिस्प्ले। क्लियरडिस्प्ले ();

ला प्राइमरा इनिसिएलिज़ा ला पेंटाल्ला वाई लॉस तर्कोस "SSD1306_SWITCHCAPVCC" और "0x3c", सोन लॉस क्यू से ऑक्यूपन पैरा एस्टे मॉडलो डे पेंटाला ओएलईडी (पुएडे कैम्बियर पैरा ओट्रस पैंटालस, पेरो एल फैबिकेंट इंडिका लो क्यू हे क्यू यूसर)। ला लाइन डिस्प्ले.क्लियरडिस्प्ले(), लो क्यू हेस एस लिम्पियर क्यूएलक्वियर कोसा क्यू एस्ट मोस्ट्रांडो ला पैंटाला।

डिबुजांडो एल्गो

एन ला लाइन 8, से डिक्लेरा उना वेरिएबल टिपो एंटरो लामाडा "सर्कलसाइज" y se inicializa en 1, इंट सर्कलसाइज = 1;

एस्टा ला वामोस ए यूटिलिज़र पैरा इंक्रीमेंटर एल डायमेट्रो डेल सर्कुलो क्यू डिबुजारेमोस।

डे लास लाइन्स 19 ए 22, एन ला सेकियन लूप, लो क्यू हेसेमोस एस डिबुजर अन सर्कुलो डे कलर ब्लैंको (व्हाइट) एन ला पॉजिशन x = 62 y y=32, es decir, en la mitad de la Pantalla, con Radio CircleSize:

display.drawCircle(64, 32, CircleSize, WHITE);display.display();

ला इंस्ट्रुकिओन डिस्प्ले.डिस्प्ले() लो क्यू हैस एस डिबुजर एल सर्कुलो क्यू इंडिकामोस एन ला पेंटाला।

लुएगो इंक्रीमेंटामोस सर्कलसाइज एन 2 यूनीडेड्स:

वृत्त आकार+=2;

वीन क्यू एका यूटिलिज़मोस ला नोटासिओन "+=", एस्टे एस उना फॉर्मा कोर्टा डे एस्क्रिबिर, सर्कलसाइज = सर्कल साइज + 2;

क्यू सेरिया अक्सैमेंटे लो मिस्मो।

वाई एसोस एस टूडू।

चरण 4: फंकियोनैंडो वाई एडिकियोनेलेस

Image
Image

कारगर एल कोडिगो एन एल अरुडिनो और लिस्टो। वेरान उन सर्कुलो क्यू से डिबुजा कोन रेडियो क्रेएंटे।

लाइब्रेरिया Adafruit_GFX.h

एस्टा लाइब्रेरिया टिएन उना सेरी डे कोमांडोस पैरा डिबुजर एन ला पेंटाल्ला। एन एस्टे साइटियो डे एडफ्रूट, एक्सप्लिका अल्गुनास डी सस फंकियोन्स। Acá voy a mencionar algunas para que jueguen con el código:

  1. drawLine (), परमिट डिबुजर लाइन्स एंट्रे डॉस पंटोस, उदाहरण के लिए DrawLine(0, 0, 10, 10)
  2. drawRect (), और इसे सही तरीके से समझा जा सकता है। पी.ई। drawRect(१०, १५, १०, १०, सफ़ेद), डिबुजा अन रेक्टेंगुलो एन पॉज़िशन x=10 y y=15, de tamaño १० y कलर ब्लैंको
  3. फिलरेक्ट ()। एस इगुअल अल पूर्वकाल पेरो एल रेक्टेंगुलो एस रेलेनो
  4. ड्रा सर्कल ()। डिबुजा अन सर्कुलो, कोमो एन एल कोडिगो क्यू एस्टामोस यूटिलिज़ंडो। fillCircle (), हैस लो मिसमो पेरो रेलेनो
  5. ड्राट्रैंगल ()। डिबुजा त्रिआंगुलोस, पैरा एलो हे क्यू इंडिकार ट्रेस पंटोस एन ला पेंटाला।
  6. पैरा टेक्स्टोस, हाय क्यू यूटिलिजर वेरियोस कमांडोज। प्रिमेरो लोकलिज़र्लो कॉन सेट कर्सर (), लुएगो से एस्क्राइन कॉन प्रिंट्लन ()।

पैरा वेर लास फंकियोन्स एन यूएसो, पुएडेन कारगर एल कोडिगो डे उदाहरण के लिए विएने कोन ला लाइब्रेरिया।