- Portada
- Fundamentos de MentorBit
- Alimentación de circuitos y dispositivos
-
Programación y ejercicios básicos
-
Introducción
-
Driver necesario para programar la placa
-
Descripción de mBlock
-
Descripción de IDE Arduino
-
Estructura de un programa
-
Variables
-
Tipos de datos
-
Operadores
-
Sintaxis
-
Principales Bloques
-
Principales funciones C/C++
-
Monitor Serial
-
Actividad 1: Mi primer programa
-
Estructuras de control
-
Actividad 2: Bucle for
-
Actividad 3: Bucle while
-
Actividad 4: Condicional if y else
-
Actividad 5: Sentencia Switch
-
Arrays
-
Actividad 6: Los Arrays
-
Recibir por Serie
-
Actividad 7: Recepción por bus serial
-
Funciones
-
Funciones en Bloques
-
Funciones en C/C++
-
Actividad 8: Mis primeras funciones
-
Clases en C/C++
-
Actividad 9: Mi primera Clase
-
Actividad 10: Mi propia Calculadora
-
-
Programación y ejercicios con hardware
-
Introducción a MentorBit
-
LEDs
-
Actividad 11: LEDs de colores
-
El LED RGB
-
Actividad 12: LED RGB
-
El pulsador
-
Actividad 13: Pulsador en Pull Down
-
Actividad 14: Pulsador en Pull Up
-
El Potenciómetro
-
Actividad 15: Potenciómetro
-
El Zumbador
-
Actividad 16: Zumbador Pasivo
-
La Fotorresistencia
-
Actividad 17: LDR
-
Sensor de temperatura DS18B20
-
Actividad 18: DS18B20
-
El Servomotor
-
Actividad 19: Servomotor
-
Motores Corriente Continua
-
Puente en H
-
Actividad 20: Motor DC
-
Introducción a Motores paso a paso
-
Actividad 21: Motor paso a paso
-
Displays 7 Segmentos
-
Actividad 22: Display 7 Segmentos
-
Pantallas LCD
-
Actividad 23: Pantalla LCD
-
Actividad 24: Pantalla LCD
-
Pantallas OLED
-
Actividad 25: Pantalla OLED
-
Actividad 26: Pantalla OLED
-
Reloj en Tiempo Real (RTC)
-
Actividad 27: RTC
-
Tarjeta micro SD
-
Actividad 28: Micro SD
-
Actividad 29: Micro SD & RTC
-
Actividad 30: Micro SD & RTC
-
Puertos para Módulos MentorBit
-
Puertos de Comunicaciones
-
Puertos Genéricos
-
- Problemas Adicionales
- Proyectos Finales
Actividad 15: Potenciómetro
Actividad 15

Regulación de la intensidad de una luz
Imagina que estás creando un sistema de control de iluminación para una lámpara de escritorio ajustable. En esta actividad, utilizarás un potenciómetro para ajustar el brillo del LED rojo, simulando cómo cambiar la intensidad de la luz en función de tus necesidades.

Pista 1 (Bloques): Lectura del Potenciómetro
Recuerda que la extensión de MentorBit para mBlock incluye el siguiente bloque con el que podemos
obtener la lectura actual del potenciómetro (del 0 al 1023):

obtener la lectura actual del potenciómetro (del 0 al 1023):

Pista 1 (C/C++): Incluir la librería base
Recuerda que para incluir una librería previamente instalada en nuestro programa, debemos utilizar
la sentencia siguiente:
la sentencia siguiente:
#include <MentorBit.h>
En nuestro ejemplo incluiremos la librería MentorBit, que facilita el uso de los componentes básicos de la
placa.
En nuestro ejemplo incluiremos la librería MentorBit, que facilita el uso de los componentes básicos de la
placa.
Pista 2 (C/C++): Conexiones del Potenciómetro
Recuerda que la librería de MentorBit da acceso a la conexión del potenciómetro empleando las
siguientes referencias:
- miObjetoMentorBit.POTENCIOMETRO
siguientes referencias:
- miObjetoMentorBit.POTENCIOMETRO
Pista 3 (C/C++): Convertir lectura analógica a PWM
Después de leer la medida tomada del potenciómetro, que nos da un número entre 0 y 1023, debemos
convertir este valor para que podamos utilizarlo para crear una PWM, que solo admite valores de 0 a 255.
Esto puede hacerse de dos maneras diferentes, igual de válidas.
La primera de ellas es realizar la conversión resolviendo una regla de tres como se indica a continuación:
La segunda es utilizar la función map, que nos permite hacer la transformación directamente como puede
observarse a continuación:
convertir este valor para que podamos utilizarlo para crear una PWM, que solo admite valores de 0 a 255.
Esto puede hacerse de dos maneras diferentes, igual de válidas.
La primera de ellas es realizar la conversión resolviendo una regla de tres como se indica a continuación:
float lectura0a255 = (lectura0a1023 / 1023.00) * 255;
La segunda es utilizar la función map, que nos permite hacer la transformación directamente como puede
observarse a continuación:
float lectura0a255 = map(lectura0a1023, 0, 1023, 0, 255);
Pista 4 (C/C++): Controlar una salida PWM
Recuerda que para poder controlar una salida de tipo PWM debemos utilizar la siguiente función:
Donde pin es el número identificador del pin donde queremos emplear la PWM y cicloDeTrabajo puede
ser un número entero entre 0 y 255 indicativo del ciclo de trabajo de la señal a generar.
analogWrite(pin, cicloDeTrabajo);
Donde pin es el número identificador del pin donde queremos emplear la PWM y cicloDeTrabajo puede
ser un número entero entre 0 y 255 indicativo del ciclo de trabajo de la señal a generar.
Solución (C/C++)
#include <MentorBit.h>
// Declaración de instancia de la clase
MentorBit miMentorBit;
// Inicialización del sketch
void setup() {
// Inicializar pines apagados
analogWrite(miMentorBit.LED_ROJO, 0);
}
// Bucle principal del sketch
void loop() {
int lectura0a1023 = analogRead(miMentorBit.POTENCIOMETRO);
float lectura0a255 = (lectura0a1023 / 1023.00) * 255;
analogWrite(miMentorBit.LED_ROJO, lectura0a255);
delay(100);
}
| Vistas | |
|---|---|
| 14 | Número de vistas |
| 14 | Vistas de miembros |
| 0 | Vistas públicas |
| Acciones | |
|---|---|
| 0 | Gustos |
| 0 | No me gusta |
| 0 | Comentarios |
Compartir por correo
Por favor iniciar sesión para compartir esto webpage por correo.
