5.funcion nand
-
Upload
cantabrobots30 -
Category
Education
-
view
466 -
download
5
description
Transcript of 5.funcion nand
![Page 1: 5.funcion nand](https://reader036.fdocuments.ec/reader036/viewer/2022082810/5587797bd8b42afd218b4604/html5/thumbnails/1.jpg)
FUNCIÓN NAND
Lo opuesto a la función AND.
![Page 2: 5.funcion nand](https://reader036.fdocuments.ec/reader036/viewer/2022082810/5587797bd8b42afd218b4604/html5/thumbnails/2.jpg)
Función NAND
a b S
0 0 1
0 1 1
1 0 1
1 1 0
Equivale a la asociación de una función AND y la función NOT. Estamos negando la salida de la función AND.
V1 12
a
S
b
![Page 3: 5.funcion nand](https://reader036.fdocuments.ec/reader036/viewer/2022082810/5587797bd8b42afd218b4604/html5/thumbnails/3.jpg)
En nuestro caso, vamos a programar con Arduino, que cuando pulsemos un pulsador (conectado al pin 4) Y pulsemos otro pulsador (conectado al pin 7), se apage un LED (conectado al pin 6).
![Page 4: 5.funcion nand](https://reader036.fdocuments.ec/reader036/viewer/2022082810/5587797bd8b42afd218b4604/html5/thumbnails/4.jpg)
Escribimos un comentario general sobre en qué consiste el programa.
• /* La función NAND, es una combinación de la función AND y de la NOT. Nos cambia el valor que tendríamos en una función AND. */
![Page 5: 5.funcion nand](https://reader036.fdocuments.ec/reader036/viewer/2022082810/5587797bd8b42afd218b4604/html5/thumbnails/5.jpg)
![Page 6: 5.funcion nand](https://reader036.fdocuments.ec/reader036/viewer/2022082810/5587797bd8b42afd218b4604/html5/thumbnails/6.jpg)
«Etiquetamos» los pines donde vamos a conectar los pulsadores y el LED, nombrándolos de forma lógica para no confundirnos en el programa.
• int Pulsador1= 4; //Asignamos la etiqueta Pulsador1, a la línea 4
• int Pulsador2= 7; // Asignamos la etiqueta Pulsador2, a la línea 7
• int LED = 6; // Asignamos la etiqueta LED, a la línea 6
![Page 7: 5.funcion nand](https://reader036.fdocuments.ec/reader036/viewer/2022082810/5587797bd8b42afd218b4604/html5/thumbnails/7.jpg)
Recuerda, es importante que comentemos todo lo que hacemos en el programa, para que si lo revisamos tiempo después, nos aclaremos con lo que hemos hecho y otras personas puedan comprender el su funcionamiento.
![Page 8: 5.funcion nand](https://reader036.fdocuments.ec/reader036/viewer/2022082810/5587797bd8b42afd218b4604/html5/thumbnails/8.jpg)
En el setup, definimos lo qué son entradas y lo qué son salidas.
• pinMode (Pulsador1, INPUT); //Asignamos Pulsador1 como entrada
• pinMode (Pulsador2, INPUT); //asignamos Pulsador2 como entrada
• pinMode (LED, OUTPUT); // Asignamos LED como salida
![Page 9: 5.funcion nand](https://reader036.fdocuments.ec/reader036/viewer/2022082810/5587797bd8b42afd218b4604/html5/thumbnails/9.jpg)
![Page 10: 5.funcion nand](https://reader036.fdocuments.ec/reader036/viewer/2022082810/5587797bd8b42afd218b4604/html5/thumbnails/10.jpg)
Para escribir la función NAND en el lenguaje de Arduino,niego (NOT) mediante el simbolo !, la función AND (&&) .
• digitalWrite (LED, !(digitalRead (Pulsador1) && digitalRead (Pulsador2)));
//La salida será lo contrario a lo que sería una función AND. Cuando leemos un 1 en Pulsador 1 y en Pulsador2, obtenemos un 0 (se apaga) en el LED
![Page 11: 5.funcion nand](https://reader036.fdocuments.ec/reader036/viewer/2022082810/5587797bd8b42afd218b4604/html5/thumbnails/11.jpg)