Anteriormente comentamos cómo se podía llamar a una determinada función en lenguaje C.
Ahora veremos algunas funciones predefinidas que trae el entorno integrado de desarrollo: pinMode, digitalWrite y delay
pinMode.
Se utiliza para determinar si un pin específico del microcontrolador debe de ponerse en alguno de los tres siguientes modos:
- INPUT o 0 : Es un pin de entrada, es decir, que en ese pin se aporta una tensión desde el exterior. Esa tensión la impone un sensor externo y el micro se la lee.
- OUTPUT o 1: Es un pin de salida, es decir, aporta una tensión y el pin funciona como si fuese una pila de que se puede encender a 5V o apagar a 0V cuando se lo diga el micro. Ten en cuenta que nunca dos pines de salida deben de conectarse entre sí.
- INPUT_PULLUP o 2 : Es un pin de entrada pull-up : es otra forma de hacer un pin de entrada, que lo conecta internamente a 5V a través de una resistencia.
A la función pinMode hay que llamarla con dos parámetros, el primero es el número del pin al que queremos aplicar el modo, y el segundo es el modo que queremos aplicar.Un ejemplo de llamada es:
pinMode(13, 1);
Esta llamada hace que el micro ponga el pin número 13 en modo salida.
A menudo se utilizan constantes predefinidas, que hacen más legible el código, de manera que la llamada anterior también puede escribirse como
pinMode(LED_BUILTIN, OUTPUT);
que es totalmente equivalente a la anterior.
Cuando hablamos de una función, suele resultar interesante saber cuántos parametros podría llegar a aceptar, y para qué sirve cada uno. Con la simbología de corchetes y barras realizamos una enumeración de todos los posibles valores que puede tener un parámetro.
Por ejemplo, el segundo parámetro de la función pinMode puede tener alguno de estos tres parámetros : INPUT, OUTPUT, INPUT_PULLUP esto lo escribiremos asi : [ INPUT | OUTPUT | INPUT_PULLUP]. Con este criterio escribiremos el prototipo de la función pinMode
pinMode(numero_del_pin , [ INPUT | OUTPUT | INPUT_PULLUP] )
digitalWrite.
Se utiliza para determinar si un pin específico del microcontrolador que ha sido puesto en en modo salida con la función pinMode debe de escribir alguno de los dos siguientes valores:
- HIGH o 1: Indica un valor alto de salida, es decir, aporta una tensión y el pin funciona como si fuese una pila de un valor alto de tensión (alrededor de 5V).
- LOW o 0: Indica un valor bajo de salida, es decir, aporta una tensión y el pin funciona como si fuese una pila de un valor bajo de tensión (alrededor de 0V).
A la función digitalWrite hay que llamarla con dos parámetros, el primero es el número del pin al que queremos aplicar el valor, y el segundo es el valor que queremos aplicar.
Un ejemplo de llamada es:
digitalWrite(13, 1);
Esta llamada hace que el micro ponga el pin número 13 en valor alto.
A menudo se utilizan constantes predefinidas, que hacen más legible el código, de manera que la llamada anterior también puede escribirse como
digitalWrite(LED_BUILTIN, HIGH);
que es totalmente equivalente a la anterior.
Escribiremos el prototipo de la función
digitalWrite(numero_del_pin , HIGH | LOW);
Resumen de funciones de los pines:
Modo
|
Tipo
|
Función
|
Valor
|
Acción
|
Salida
|
Digital
|
digitalWrite(pin , Valor);
|
num 0 o 1
|
Escribe 0V o 5V en el pin
|
delay
Se utiliza para congelar el funcionamiento del micro durante una cantidad especifica de tiempo.
A la función delay hay que llamarla con un sólo parámetro, que es el número de milisegundos que debe de estar congelado.
Un ejemplo de llamada es:
delay(500);
Esta llamada hace que el micro se detenga durante 500 milisegundos, o lo que es lo mismo, medio segundo.
Escribiremos el prototipo de la función
delay(tiempo_de_espera);