Sisällysluettelo:

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

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

Video: C/C ++ En Arduino: Uso De Librerías Y Objetos: 4 vaihetta
Video: ESP32 Tutorial 12 - WS2812 RGB Srip 4 Project with SunFounder's ESP32 IoT Learnig kit 2024, Marraskuu
Anonim
C/C ++ ja Arduino: Uso De Librerías Y Objetos
C/C ++ ja Arduino: Uso De Librerías Y Objetos

Las posibilidades de Arduino se puede extender usando librerías. Vapaita ilmaisia todisteita ylimääräisestä toiminnallisuudesta, opastettavasta, OLED -housujen käytöstä. Acá se utilizan 3 librerías, una para conexión digital I2C, otra for utilizar 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 fi 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.

Sisältää Arduino IDE: n ilmaisen ilmaisen ilmaisun, puunden seguir estas instructions of de Arduino. Para usarla en una porción de código, estas se llaman al inicio del código, de la siguiente manera con la directiva #include:

#Sisällytä <nombreLibreria.h>

Esto lo veremos en detalle en este ohjeellinen

Vaihe 1: Materiaalit

Materiaalit
Materiaalit
Materiaalit
Materiaalit

Los materiales son pocos:

  1. Arduino UNO
  2. Pantalla OLED (en Costa Rica)
  3. Kaapelit
  4. Brearboard

Vaihe 2: Conexiones

Conexiones
Conexiones
Conexiones
Conexiones
Conexiones
Conexiones

El OLED -näyttö, jossa on indika ja lasikuvat:

  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 nasta 4
  5. OLED c/s - Arduino GND
  6. OLED sda - Arduino SDA (nastainen A4 tai el -nastainen SDA)
  7. OLED SCL - Arduino SCL (nasta A5, tai el -pin SCL)

Virtalähde, jonka jännite on 3,3 V. Aunque extrañamente, por lo menos para la OLED que está en la foto, pareciera no se importante esta conexión

Vaihe 3: Código Y Uso De Librerías

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

Cargar librerías

En este proyecto se utilizan varias librerías. Como se indico anteriormente y se ve en la fotografía, las librerías se includedran al inicio del código. En esta caso se agregan 3 librerías en las líneas 4 a 6:

#sisältää

#sisältää

#sisältää

La librería Wire.h, es una librería nativa, es decir, wien 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. Parhaat asennukset, solamente descargarlas de Adafruit GFX ja Adafruit SDD1306, ja seos las ohjeiden mukaan.

Librería Wire.h

Esta librería permite comunicación I2C. I2C, integroitu tiedonsiirto, integroitu tiedonsiirto, digitaalisen kommunikoinnin mahdollistavat digitaaliset arduino-kysymykset "päällikölle", joka voi hallita eri osia tai digitaalisen komponentin digitaalikomponentteja. De allí que utilizamos los pines SDA y SCL ja el Arduino para conectar con lattalla OLED. Tämä on sitio kipinähaku selitys bien que es I2C. Para que funcione entonces la pantalla se necesita primero cargar esa librería.

Librería Adafruit_SDD1306.h

Este librería permite conectar y hacer funcionar la pantalla OLED a través del Arduino. AL usarla, creamos un objeto SDD1306 que nos permite utilizar 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, escribir textos y utilizar todas las posibilidades gráficas de la pantalla OLED. Al final de este instructable hago un listado de algunas de las funciones que se pueden utilizar con esta librería y que transforman la pantalla OLED en una pantalla de pasttiples propósitos.

Instanciación de objeto

Ilmoittajan ilmoitukset todas las librerías, en la línea 10 del código se deklara un unbjeto de tipo SDD1306 que lo llamamos "display". Al deklararlo, debemos indicar cual es el pin de reset, en este caso el Pin 4:

SSD1306 -näyttö (4);

Osittain de este punto, ya se crea un objeto tipo SSD1306, y podemos accesar a todas las funciones del objeto escribiendo el identifador del objeto y luego un punto con la propiedad o función que deseamos. 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 unaa variable type entero llamada "circleSize" y se inicializa en 1, int ympyräKoko = 1;

Esta la vamos a utilizar para inkrementar 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 circle

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

Näyttöohjeet.display () lo que hace es dibujar el círculo que indicamos en la pantalla.

Luego lisäysympyräKoko ja 2 eri päivää:

ympyräKoko+= 2;

Vean que acá utilizamos la notación "+=", este es una forma corta de escribir, ympyräKoko = ympyräKoko + 2;

Que sería precamente lo mismo.

Kyllä se on.

Vaihe 4: Funcionando Y Adicionales

Image
Image

Cargar el código ja 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. p.e. drawRect (10, 15, 10, 10, WHITE), dibuja ja rectangulo 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. Ensisijainen lokalisointi 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.