Está en la página 1de 2

Analizar el programa y luego cambiar el orden de las teclas.

Además, hacer un programa que realice la


visualización del mensaje INSTITUTO SUPERIOR JOSE PARDO solamente utilizando las 16 teclas presentes.

Nota: Utilizar una tecla de espacio entre palabras.

Todo Hacerlo en el Virtual Monitor

Mostrar los cambios realizados y la simulación en el proteus. O un video del circuito físico.
#include <Keypad.h>

const byte filas = 4;


const byte columnas = 4;

byte pinesFilas[] = {9,8,7,6};

byte pinesColumnas[] = {5,4,3,2};

char teclas[4][4] = {{'1','2','3','A'},


{'4','5','6','B'},
{'7','8','9','C'},
{'*','0','#','D'}};

Keypad teclado1 = Keypad( makeKeymap(teclas), pinesFilas, pinesColumnas, filas,


columnas);

void setup() {
Serial.begin(9600);
Serial.println("Teclado 4x4 con Biblioteca Keypad");
Serial.println();
}

void loop() {
//Verifica si alguna tecla fue presionada
char tecla_presionada = teclado1.getKey();

//Monitor Serial
if (tecla_presionada)
{
Serial.print("Tecla: ");
Serial.println(tecla_presionada);
}
}

SIM1
RB4

RB5

RB6

RB7

AREF
C1 C2 C3 C4
13
13
12
ARDUINO

RESET 12
~11
11 BTN1 BTN5 BTN9 BTN13
10 RB0
5V ~10
9
~9 BUTTON BUTTON BUTTON BUTTON
8
SIMULINO

8 F1
POWER

GND
ATMEGA328P

7
7 BTN2 BTN6 BTN10 BTN14
DIGITAL (PWM~)

6
~6
ATMEL

A0 5 RB1
ANALOG IN

A0 ~5
A1 4
A1 4 BUTTON BUTTON BUTTON BUTTON
A2 3 F2
A2 ~3
A3 2
A3 2
A4 1
A5
A4
A5
TX > 1
RX < 0
0 BTN3 BTN7 BTN11 BTN15
www.arduino.cc
blogembarcado.blogspot.com
RB2
SIMULINO UNO BUTTON BUTTON BUTTON BUTTON
F3

BTN4 BTN8 BTN12 BTN16


RB3
BUTTON BUTTON BUTTON BUTTON
F4
Analizar el siguiente programa solamente.
byte pinesFilas[] = {9,8,7,6};
byte pinesColumnas[] = {5,4,3,2};
char teclas[4][4] = {{'1','2','3','A'},
{'4','5','6','B'},
{'7','8','9','C'},
{'*','0','#','D'}};
void setup()
{
for (int nL = 0; nL <= 3; nL++) {
pinMode(pinesFilas[nL], OUTPUT);
digitalWrite(pinesFilas[nL], HIGH);
}

for (int nC = 0; nC <= 3; nC++) {


pinMode(pinesColumnas[nC], INPUT_PULLUP);
}

Serial.begin(9600);
Serial.println("Teclado 4x4");
Serial.println();
}
void loop()
{
//Barrido por las filas
for (int nL = 0; nL <= 3; nL++)
{
digitalWrite(pinesFilas[nL], LOW);

//Barrido en columnas buscando un LOW


for (int nC = 0; nC <= 3; nC++) {
if (digitalRead(pinesColumnas[nC]) == LOW)
{
Serial.print("Tecla: ");
Serial.println(teclas[nL][nC]);
while(digitalRead(pinesColumnas[nC]) == LOW){}
}
}
digitalWrite(pinesFilas[nL], HIGH);
}
delay(10);
}

SIM1
RB4

RB5

RB6

RB7

AREF
C1 C2 C3 C4
13
13
12
ARDUINO

RESET 12
~11
11 BTN1 BTN5 BTN9 BTN13
10 RB0
5V ~10
9
~9 BUTTON BUTTON BUTTON BUTTON
8
SIMULINO

8 F1
POWER

GND
ATMEGA328P

7
7 BTN2 BTN6 BTN10 BTN14
DIGITAL (PWM~)

6
~6
ATMEL

A0 5 RB1
ANALOG IN

A0 ~5
A1 4
A1 4 BUTTON BUTTON BUTTON BUTTON
A2 3 F2
A2 ~3
A3 2
A3 2
A4 1
A5
A4
A5
TX > 1
RX < 0
0 BTN3 BTN7 BTN11 BTN15
www.arduino.cc
blogembarcado.blogspot.com
RB2
SIMULINO UNO BUTTON BUTTON BUTTON BUTTON
F3

BTN4 BTN8 BTN12 BTN16


RB3
BUTTON BUTTON BUTTON BUTTON
F4

También podría gustarte