Beruflich Dokumente
Kultur Dokumente
PROYECTO N° 01
Alumno(s) Nota
Grupo
Ciclo 4C5 Electrónica y Automatización – Microcontroladores
Fecha de entrega
I. CAPACIDAD TERMINAL
Utilizar al microcontrolador en aplicaciones de control electrónico.
Desarrollar y ejecutar programas en un microcontrolador PIC
Programar y configurar interfaces básicas del microcontrolador.
IV. RESULTADOS
Diseñan y optimizan sistemas y procesos para cumplir con las condiciones establecidas y
gestionando adecuadamente los recursos materiales y humanos.
V. MATERIALES Y EQUIPO
CCS Compiler instalado.
Entrenador de PICS
Pantalla LCD
PIC16F877A
Motor DC
Guía de Laboratorio. El trabajo se desarrolla de manera GRUPAL.
PC con Software de simulación.
1 A5
U2
20MHz PIC16F877A
1 D0
RV1 X1 U1 A1
1 D1 CRYSTAL13 33 U3
OSC1/CLKIN RB0/INT
14 34 NOT
OSC2/CLKOUT RB1
1 E2 35 A2
50%
RB2 U4
2 36
RA0/AN0 RB3/PGM
A1 3 37 NOT
RA1/AN1 RB4
POTENCIOMETRO A2 4
RA2/AN2/VREF-/CVREF RB5
38 A3
10k A3 5 39
RA3/AN3/VREF+ RB6/PGC
6 40 NOT
RA4/T0CKI/C1OUT RB7/PGD
7
SENSOR TEMP. A5 RA5/AN4/SS/C2OUT
LEDS INDICADORES
15
U5 8
RE0/AN5/RD
RC0/T1OSO/T1CKI
RC1/T1OSI/CCP2
16 ? C0
9 17
27.0
VCC
3
2 E2
10
RE1/AN6/WR
RE2/AN7/CS
RC2/CCP1
RC3/SCK/SCL
18 ? C1
DQ 23
GND
1
1
MCLR/Vpp/THV
RC4/SDI/SDA
RC5/SDO
24 ? C2
25
DS18B20 RC6/TX/CK
RC7/RX/DT
26 ? C3
RD0/PSP0
19 D0
? C4
20
RD1/PSP1
21
D1 ? C5
1
RECEPTOR IR RD2/PSP2
22
IRL1 RD3/PSP3
27
RD4/PSP4
RESET RD5/PSP5
28 RXD
29
RD6/PSP6
Demodulator 30 TXD
RD7/PSP7
PIC16F877A RTS
IRLINK PANTALLA LCD
CTS
LS1 LCD1
LM016L
PUERTO SERIAL PC
PIEZO
VDD
VSS
VEE
RW
SOUNDER
RS
D0
D1
D2
D3
D4
D5
D6
D7
E
1
2
3
4
5
6
7
8
9
10
11
12
13
14
IF (!input(PIN_E2) && (variable == 1)) // SI detectamos 0 voltios en PIN E2 variable vale 1....
{
output_bit(PIN_C5,0); // Pone a "0" el pin C0 (envía cero voltios o GND)
variable = 0; // asignamos el valor "0" a variable
delay_ms(500); // "Congela el tiempo" durante 500 ms para evitar falsas pulsaciones
}
}
}
2. Preguntas:
a. ¿Para qué sirve el símbolo “!” antes del comando “input”?
b. ¿Qué valores acepta el tipo de variable ENTERO?
c. ¿con qué comando introduzco retardos del orden de micro segundos?
void BIP(); // Declaro la funcion "BIP" que está detalla al final del código
}
}
void BIP()
{
FOR (i=0;i<=10;++i)
{
output_high(PIN_E1); // Pone a "1" el pin E1 (envía 5 voltios)
delay_ms(1); // "Congela el tiempo" durante 1ms
output_low(PIN_E1); // Pone a "0" el pin E1
delay_ms(1); // "Congela el tiempo" durante 1ms
}
}
1. Preguntas:
a. ¿Cuál sería el código más eficiente para emitir un sonido “bip” cada vez que se pulse una
tecla cualquiera?
b. Modifique y optimice el programa para emitir un sonido bip durante 100 ms aunque la
tecla se mantenga pulsada.
Nro.
LABORATORIO MICROCONTROLADORES Página 5 de 5
XI. RECOMENDACIONES
1. Documentar el avance del proyecto con capturas de pantalla, videos, observaciones y
conclusiones. Cree un BLOG y suba dicha información al mismo.
XII. RESÚMEN
Programación de los puertos como Entradas y/o salidas
Prueba y uso de buzzer, pulsadores y leds
Simulación paso a paso en PROTEUS