Πίνακας περιεχομένων:

C/C ++ En Arduino: Uso De Librerías Y Objetos: 4 Βήματα
C/C ++ En Arduino: Uso De Librerías Y Objetos: 4 Βήματα

Βίντεο: C/C ++ En Arduino: Uso De Librerías Y Objetos: 4 Βήματα

Βίντεο: C/C ++ En Arduino: Uso De Librerías Y Objetos: 4 Βήματα
Βίντεο: Tutorial: Uso de Visual Studio Code y PlatformIO para crear librerías con framework Arduino. 2024, Ιούλιος
Anonim
C/C ++ En Arduino: Uso De Librerías Y Objetos
C/C ++ En Arduino: Uso De Librerías Y Objetos

Las posibilidades de Arduino se puede extender usando librerías. Las librerías proveen funcionalidad extra, en este instructionable, para poder utilisar una pantalla OLED. Χρησιμοποιήστε 3 ελεύθερες, για να συνδέσετε το ψηφιακό I2C, για να χρησιμοποιήσετε το OLED, για να χρησιμοποιήσετε τις συσκευές και τις συσκευές σας.

Una de las librerías nos permite crear un objeto tipo pantalla, con la cual podemos controlar la pantalla OLED en nuestro código. Un objeto en C ++ (C orientado a objetos), es una estructura más grande que una variable (por así decirlo) que tiene propiedades y funciones propias. Usándolo quedará más claro.

Για την ενσωμάτωση της ελεύθερης περιβαλλοντικής λειτουργίας του Arduino IDE, που χρησιμοποιείται για τις οδηγίες του Arduino. Παρακαλώ χρησιμοποιήστε τα προϊόντα μας, θα πρέπει να λάβετε υπόψη σας, να συμπεριλάβετε:

#include <nombreLibreria.h>

Esto lo veremos en detalle en este instructable

Βήμα 1: Υλικά

Υλικά
Υλικά
Υλικά
Υλικά

Los materiales son pocos:

  1. Arduino UNO
  2. Pantalla OLED (στην Κόστα Ρίκα)
  3. Καλώδια
  4. Μπροστινή όψη

Βήμα 2: Conexiones

Κονεξιονές
Κονεξιονές
Κονεξιονές
Κονεξιονές
Κονεξιονές
Κονεξιονές

El OLED display se conecta como se indica en las fotos:

  1. OLED vcc - Arduino 3.3V (aunque esta conexión no hace falta)
  2. OLED gnd - Arduino GND
  3. OLED cs - Arduino GND
  4. OLED res - Arduino pin 4
  5. OLED c/s - Arduino GND
  6. OLED sda - Arduino SDA (pin A4, ή el pin SDA)
  7. OLED scl - Arduino SCL (pin A5, o el pin SCL)

Tener cuidado de que el vcc se conecta a 3.3v. Aunque extrañamente, por lo menos para la OLED que está en la foto, pareciera no se importante esta conexión

Βήμα 3: Código Y Uso De Librerías

Código Y Uso De Librerías
Código Y Uso De Librerías

Cargar librerías

En este proyecto se utilizan varias librerías. Como se indicó anteriormente y se ve en la fotografía, las librerías se corporan al inicio del código. Εν ολίγοις 3 συμφωνίες 3 ελεύθερες σε 4 4 6:

#περιλαμβάνω

#περιλαμβάνω

#περιλαμβάνω

La librería Wire.h, es una librería nativa, es decir, viene como parte del paquete de Arduino IDE y no hay que instalar nada adicional. Por otro lado, las librerías Adafruit_GFX.h y Adafruit_SSD1306.h, deben ser instaladas. Par instalarlas, solamente descargarlas de Adafruit GFX y Adafruit SDD1306, y seguir las instrucciones acá.

Librería Wire.h

Απελευθερωμένη άδεια επικοινωνίας I2C. El acrónimo I2C, viene de Inter-Integrated Communication, και επιτρέπει την επικοινωνία ψηφιακών προδιαγραφών που είναι "master" για ποικίλους αισθητήρες ή στοιχεία ψηφιακής μορφής. De allí que utilizamos los pines SDA y SCL en el Arduino para conectar con la pantalla OLED. En este sitio sparkfun explica bien que es I2C. Para que funcione entonces la pantalla se necesita primero cargar esa librería.

Librería Adafruit_SDD1306.h

Esta librería permite conectar y hacer funcionar la pantalla OLED a través del Arduino. AL usarla, creamos un objeto SDD1306 που δεν επιτρέπει την χρήση του pantalla fácilmente, eso lo veremos en la siguiente sección.

Librería Adafruit_GFX.h

Esta librería nos permite dibujar figuras geométricas, escribir textos y utilizar todas las posibilidades gráficas de la pantalla OLED. Τέλος, είναι ενδεικτικό για τη λίστα με τις λειτουργίες που μπορούν να χρησιμοποιηθούν ως ελεύθεροι και μετασχηματιστές OLED και una pantalla de múltiples propósitos.

Instanciación de objeto

Después de deklarar todas las librerías, en la línea 10 del código se deklara un objeto de tipo SDD1306 que lo llamamos "display". Αλλωστε, αναφέρατε ενδεικτικά ότι πρέπει να επαναφέρετε το μηχάνημά σας, καθώς και το pin 4:

Οθόνη SSD1306 (4).

Ενδεχομένως, θα μπορούσα να χρησιμοποιήσω το SSD1306, και θα ήθελα να πάρω μια σειρά από λειτουργίες που θα μπορούσαν να χρησιμοποιηθούν για να περιγράψουν τον εαυτό σας και να σας βοηθήσουν να λειτουργήσετε. Así por ejemplo las líneas 13 y 14, display.begin (SSD1306_SWITCHCAPVCC, 0x3c); display.clearDisplay ();

La Primera inicializa la pantalla y los argumentos "SSD1306_SWITCHCAPVCC" y "0x3c", son los que se ocupan para este modelo de pantalla OLED (puede cambiar para otras pantallas, pero el fabicante indica lo que hay que usar acá). La línea display.clearDisplay (), lo que hace es limpiar cualquier cosa que esté mostrando la pantalla.

Dibujando algo

En la línea 8, se deklara una variable to tipo entero llamada "circleSize" y se inicializa en 1, int circleSize = 1;

Esta la vamos a utilizar para incrementar el diámetro del círculo que dibujaremos.

De las líneas 19 a 22, en la sección loop, lo que hacemos es dibujar un círculo de color blanco (WHITE) en la posición x = 62 y y = 32, es decir, en la mitad de la pantalla, con radio κύκλοςΜέγεθος:

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

La instrucción display.display () lo que hace es dibujar el círculo que indicamos en la pantalla.

Κύκλος Luego incrementamosΜέγεθος και 2 μονάδες:

κύκλοSize+= 2;

Vean que acá utilizamos la notación "+=", este es una forma corta de escribir, κύκλοSize = κύκλοSize + 2;

Que sería exactamente lo mismo.

Υ εσώ ες τόντο.

Βήμα 4: Funcionando Y Adicionales

Image
Image

Cargar el código en el Arduino y listo. Verán un círculo que se dibuja con radio creciente.

Librería Adafruit_GFX.h

Esta librería tiene una serie de comandos para dibujar en la pantalla. En este sitio de adafruit, explica algunas de sus funciones. Acá voy a mencionar algunas para que jueguen con el código:

  1. drawLine (), permite dibujar líneas entre dos puntos, por ejemplo drawLine (0, 0, 10, 10)
  2. drawRect (), es para dibujar rectángulos. π.ε. drawRect (10, 15, 10, 10, ΛΕΥΚΟ), dibuja un rectángulo en posición x = 10 y y = 15, de tamaño 10 y color blanco
  3. fillRect (). Es igual al anterior pero el rectángulo es relleno
  4. drawCircle (). dibuja un círculo, como en el código que estamos utilizando. fillCircle (), hace lo mismo pero relleno
  5. drawTrangle (). Dibuja triángulos, para ello hay que indicar tres puntos en la pantalla.
  6. Para textos, hay que utilizar varios comandos. Primero localizarlo con setCursor (), luego se escriben con println ().

Para ver las funciones en uso, pueden cargar el código de ejemplo que viene con la librería.