Mục lục:

C / C ++ En Arduino: Uso De Librerías Y Objetos: 4 bước
C / C ++ En Arduino: Uso De Librerías Y Objetos: 4 bước

Video: C / C ++ En Arduino: Uso De Librerías Y Objetos: 4 bước

Video: C / C ++ En Arduino: Uso De Librerías Y Objetos: 4 bước
Video: Arduino project 😎^ Arduino #arduino #2022 #2021 #2023 #dc #arduinoproject #diy #foryou 2024, Tháng bảy
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 bộ mở rộng usando librerías. Las librerías chứng minh thêm funcionalidad, en este có thể hướng dẫn, bộ mã hóa para poder useizar una pantalla OLED. Acá se Pracizan 3 librerías, una para conexión kỹ thuật số I2C, otra para useizar la pantalla OLED, y la tercera para crear gráficos en la pantalla.

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 biến (por así decirlo) que tiene propiedades y funciones propias. Usándolo quedará más claro.

Para mergeorar una librería al ambiente de Arduino IDE, pueden seguir estas Guiducciones de Arduino. Para usarla en una porción de código, estas se llaman al inicio del código, de la siguiente manra con la directiva #include:

#include <nombreLibreria.h>

Esto lo veremos en detalle en este có thể hướng dẫn

Bước 1: Vật liệu

Chất liệu
Chất liệu
Chất liệu
Chất liệu

Los materiales son pocos:

  1. Arduino UNO
  2. Pantalla OLED (vi Costa Rica)
  3. Cáp
  4. Brearboard

Bước 2: Conexiones

Conexiones
Conexiones
Conexiones
Conexiones
Conexiones
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. Độ phân giải OLED - chân Arduino 4
  5. OLED c / s - Arduino GND
  6. OLED sda - Arduino SDA (pin A4, o 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

Bước 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 utizan varias librerías. Como se indicó anteriormente y se ve en la fotografía, las librerías se mergeoran al inicio del código. En esta caso se agregan 3 librerías en las líneas 4 a 6:

#bao gồm

#bao gồm

#bao gồm

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 Guiducciones acá.

Librería Wire.h

Esta librería permite comunicación I2C. El acrónimo I2C, viene de Inter-Integrated Communication, y permite la communicationación digital del arduino que es "master" con varios sensores o componentes digitales de forma simultánea. De allí que Pracizamos 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 que nos permite Pracizar la 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, escripir textos y Pracizar todas las posibilidades gráficas de la pantalla OLED. Al final de este có thể hướng dẫn được hago un listado de algunas de las funciones que se pueden Operatingizar con esta librería y que variablean la pantalla OLED en una pantalla de múltiples propósitos.

Instanciación de objeto

Después de statementarar todas las librerías, en la línea 10 del código se tuyên bố un objeto de tipo SDD1306 que lo llamamos "display". Al statementararlo, debemos indicar cual es el pin de reset, en este caso el pin 4:

Màn hình SSD1306 (4);

A partir de este punto, ya se crea un objeto tipo SSD1306, y podemos accesar a todas las funciones del objeto escribeiendo el Idificador del objeto y luego un punto con la propiedad o función que deseamos. Así bởi ejemplo las líneas 13 y 14, display.begin (SSD1306_SWITCHCAPVCC, 0x3c); display.clearDisplay ();

La primera inicializa la pantalla y los argos "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 khai báo una biến tipo entero llamada "circleSize" y se inicializa en 1, int circleSize = 1;

Esta la vamos a Pracizar 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 circleKích thước:

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

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

Luego incrementamos circleSize en 2 unidades:

circleSize + = 2;

Vean que acá …

circleSize = circleSize + 2;

Que sería precisionamente lo mismo.

Y esos es todo.

Bước 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, bởi ejemplo drawLine (0, 0, 10, 10)
  2. drawRect (), es para dibujar directángulos. p.e. drawRect (10, 15, 10, 10, WHITE), dibuja un directángulo en posición x = 10 y y = 15, de tamaño 10 y color blanco
  3. fillRect (). Es igual al anterior pero el directángulo es relleno
  4. drawCircle (). dibuja un círculo, como en el código que estamos effizando. 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 Pracizar varios comandos. Primero localizarlo con setCursor (), luego se escripen con println ().

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