Beruflich Dokumente
Kultur Dokumente
MANUAL DE PRACTICAS DE
PROGRAMACION DE
MICROCONTROLADORES PICS
Introduccin
El presente manual contiene una serie de 35 prcticas, estructuradas de manera
tal, que su desarrollo secuencial propicia la adquisicin de habilidades y
destrezas as como el desarrollo de competencias en el alumno y sobre todo
conocimientos para el manejo de los dispositivos microcontroladores que
forman parte del ambiente de trabajo para este curso.
Trabajo previo:
1.- Investigar la hoja de datos del PIC 16F887
Material y equipo:
Tablilla proto board (tablilla de prototipos)
Multmetro digital auto rango
Cables Para Conexiones diversas (cable de interfon)
Fuente de alimentacin 0-30VCD
Pinzas de punta (tipo alicata chica)
PIC 16F887
8 Resistencias de 470 1/2 w
8 leds
8 Resistencias de 10k 1/2 w
8 sw tipo tecla
8 Resistencias de 330 1/2 w
Programador de pics va USB
Cristal 20MHz
2 capacitores de 27pF
Software PROTEUS
Software PIC SIMULATOR
Instrucciones:
1. Arme los circuitos en la tablilla protoboard y antes de energizarlos pida al instructor verifique las conexiones.
2. La prctica debe contener en el formato proporcionado por el instructor lo siguiente: El diagrama esquemtico, clculos,
mediciones realizadas.
3. anexe su investigacin previa a la prctica realizada e intgrelo a su portafolio de evidencias previamente evaluado por el
instructor.
Desarrollo de la Prctica:
1.- Arme el circuito de la siguiente figura en su tablilla de prototipos y calibre el voltaje a 5Vcd y alimente el circuito.
+5Vcd
C1
27pF R1 R2 R3 R4 R5 R6 R7 R8
X1 10k 10k 10k 10k 10k 10k 10k 10k
4MHz
U1
C2 13
OSC1/CLKIN RB0/INT
33
14 OSC2/CLKOUT RB1 34
1 35
MCLR/Vpp/THV RB2
27pF RB3/P GM 36
2 37
RA0/AN0 RB4
3 38
+5Vcd RA1/AN1 RB5
4 39
RA2/AN2/VREF- RB6/P GC
5 40
RA3/AN3/VREF+ RB7/P GD
6
RA4/T0CKI
7 15
RA5/AN4/SS RC0/T 1OSO/T1CKI
16
RC1/T 1OSI/CCP2
R9 8 17
RE0/AN5/RD RC2/CCP1
10k 9 18
RE1/AN6/WR RC3/S CK/SCL
10 23
RE2/AN7/CS RC4/SDI/SDA
24
RC5/S DO
RC6/T X/CK 25
RC7/RX/DT 26
19
RD0/PSP0
20
RD1/PSP1
21
RD2/PSP2
22
RD3/PSP3
27
RD4/PSP4
28
RD5/PSP5
29
RD6/PSP6
30
.
RD7/PSP7
470
PIC16F877
D1 D2 D3 D4 D5 D6 D7 D8
LED-B LUE
LED-B LUE
LED-BLUE
LED-BLUE
LED-B LUE
LED-B LUE
LED-B LUE
LED-BLUE
1.- Desarrolle el programa en lenguaje C y compilar dicho programa, posteriormente usando el programa PROTEUS simule su
circuito, si esta correcto transfiera el programa al pic y ejecute el programa.
/*PRACTICA 1
ENCENDER LOS LED 0,1,3,5,7 DEL PUERTO D
*/
char Reg1;
void main()
{
TRISD = 0b00000000;
Reg1=0xAB;
while(1)
{
PORTD=Reg1;
}
}
Actividades Complementarias
1. Desarrolla tus propias conclusiones de lo que experimentaste en la prctica, inserta una fotografa de la
evidencia fsica de tu prctica, dar credibilidad a tu desarrollo de tus competencias adquiridas.
2. Desarrolla de manera adecuada tu reporte de la prctica observando limpieza en el trabajo realizado, un
excelente reporte habla muy bien de ti pues aprenders a trabajar con pulcritud.
Foto ejemplo
Prctica 2 (EJEMPLO)
Transferencia de datos entre registros
Objetivo: El alumno realizara la programacin correspondiente para manipular datos en los registros del PIC 16F887 .
Trabajo previo:
1.- Investigar la hoja de datos del PIC 16F887
Material y equipo:
Tablilla proto board (tablilla de prototipos)
Multmetro digital auto rango
Cables Para Conexiones diversas (cable de interfon)
Fuente de alimentacin 0-30VCD
Pinzas de punta (tipo alicata chica)
PIC 16F887
Instructor: ING. DEMETRIO MEZA ALDUCIN
MECATRONICA AREA DE CONTROL
8 Resistencias de 470 1/2 w
8 leds
8 Resistencias de 10k 1/2 w
8 sw tipo tecla
8 Resistencias de 330 1/2 w
Programador de pics va USB
Cristal 4MHz
2 capacitores de 27pf
Software PROTEUS
Software PIC SIMULATOR
Instrucciones:
1. Arme los circuitos en la tablilla protoboard y antes de energizarlos pida al instructor verifique las conexiones.
2. La prctica debe contener en el formato proporcionado por el instructor lo siguiente: El diagrama esquemtico, clculos,
mediciones realizadas.
3. anexe su investigacin previa a la prctica realizada e intgrelo a su portafolio de evidencias previamente evaluado por el
instructor.
Desarrollo de la Prctica:
1.- Realice un programa que permita guardar el dato 3AH en la memoria de datos cuya direccin es 20H y el dato 5BH en la
direccin 21H, despus realice un intercambio de datos entre los registros 20H y 21H.
2.- Desarrolle el programa en ensamblador y compilar dicho programa, posteriormente usando el programa PIC SIMULATOR
simule su programa, reprtalo al profesor.
;PRACTICA 2
;ING. DEMETRIO MEZA ALDUCIN
LIST P=16F887
#INCLUDE <P16F887.INC>
__CONFIG _WDT_OFF & _CP_OFF & _CPD_OFF & _LVP_OFF & _XT_OSC
ORG 0
MOVLW 3AH
MOVWF DATO1
MOVLW 5BH
Instructor: ING. DEMETRIO MEZA ALDUCIN
MECATRONICA AREA DE CONTROL
MOVWF DATO2
MOVF DATO1,W
MOVWF AUXILIAR
MOVF DATO2,W
MOVWF DATO1
MOVF AUXILIAR,W
MOVWF DATO2
END
Actividades Complementarias
3. Desarrolla tus propias conclusiones de lo que experimentaste en la prctica, inserta una fotografa de la
evidencia fsica de tu prctica dar credibilidad a tu desarrollo de tus competencias adquiridas.
4. Desarrolla de manera adecuada tu reporte de la prctica observando limpieza en el trabajo realizado, un
excelente reporte habla muy bien de ti pues aprenders a trabajar con pulcritud.
Trabajo previo:
1.- Investigar la hoja de datos del PIC 16F887
Material y equipo:
Tablilla proto board (tablilla de prototipos)
Multmetro digital auto rango
Cables Para Conexiones diversas (cable de interfon)
Fuente de alimentacin 0-30VCD
Pinzas de punta (tipo alicata chica)
PIC 16F887
8 Resistencias de 470 1/2 w
8 leds
8 Resistencias de 10k 1/2 w
8 sw tipo tecla
8 Resistencias de 330 1/2 w
Programador de pics va USB
Cristal 4MHz
2 capacitores de 27pf
Software PROTEUS
Software PIC SIMULATOR
Instrucciones:
1. Arme los circuitos en la tablilla protoboard y antes de energizarlos pida al instructor verifique las conexiones.
2. La prctica debe contener en el formato proporcionado por el instructor lo siguiente: El diagrama esquemtico, clculos,
mediciones realizadas.
3. anexe su investigacin previa a la prctica realizada e intgrelo a su portafolio de evidencias previamente evaluado por el
instructor.
Desarrollo de la Prctica:
1.- Realice un programa que permita guardar el dato 3AH en la memoria de datos cuya direccin es 20H y el dato 5BH en la
direccin 21H, despus realice un intercambio de datos entre los registros 20H y 21H, posteriormente realice los ajustes al
programa de tal manera que el dato del registro con direccin 20H salga por el puerto B y el dato del registro 21H salga por el
puerto D.
2.- Desarrolle el programa en ensamblador y compilar dicho programa, posteriormente usando el programa PIC SIMULATOR
simule su programa, reprtalo al profesor.
;PRACTICA 3
;ING. DEMETRIO MEZA ALDUCIN
LIST P=16F887
#INCLUDE <P16F887.INC>
__CONFIG _WDT_OFF & _CP_OFF & _CPD_OFF & _LVP_OFF & _XT_OSC
ORG 0
BSF STATUS,RP0
CLRF TRISB
CLRF TRISD
BCF STATUS,RP0
CLRF PORTB
CLRF PORTD
MOVLW 3AH
MOVWF DATO1
MOVLW 5BH
MOVWF DATO2
MOVF DATO1,W
MOVWF AUXILIAR
MOVF DATO2,W
MOVWF DATO1
MOVF AUXILIAR,W
MOVWF DATO2
MOVF DATO1,W
MOVWF PORTB
MOVF DATO2,W
MOVWF PORTD
END
Actividades Complementarias
5. Desarrolla tus propias conclusiones de lo que experimentaste en la prctica, inserta una fotografa de la
evidencia fsica de tu prctica dar credibilidad a tu desarrollo de tus competencias adquiridas.
6. Desarrolla de manera adecuada tu reporte de la prctica observando limpieza en el trabajo realizado, un
excelente reporte habla muy bien de ti pues aprenders a trabajar con pulcritud.
Prctica 4 (EJEMPLO)
MONITOREO DEL PUERTO B
Objetivo: El alumno realizara la programacin correspondiente para monitorear el puerto B y el resultado mostrarlo en el puerto D
del pic 16F887 .
Material y equipo:
Tablilla proto board (tablilla de prototipos)
Multmetro digital auto rango
Cables Para Conexiones diversas (cable de interfon)
Fuente de alimentacin 0-30VCD
Pinzas de punta (tipo alicata chica)
PIC 16F887
8 Resistencias de 470 1/2 w
8 leds
8 Resistencias de 10k 1/2 w
8 sw tipo tecla
8 Resistencias de 330 1/2 w
Programador de pics va USB
Cristal 4MHz
2 capacitores de 27pF
Software PROTEUS
Software PIC SIMULATOR
Instrucciones:
1. Arme los circuitos en la tablilla protoboard y antes de energizarlos pida al instructor verifique las conexiones.
2. La prctica debe contener en el formato proporcionado por el instructor lo siguiente: El diagrama esquemtico, clculos,
mediciones realizadas.
3. anexe su investigacin previa a la prctica realizada e intgrelo a su portafolio de evidencias previamente evaluado por el
instructor.
Desarrollo de la Prctica:
1.- Arme el circuito de la siguiente figura en su tablilla de prototipos y calibre el voltaje a 5Vcd y alimente el circuito.
+5Vcd
C1
27pF R1 R2 R3 R4 R5 R6 R7 R8
X1 10k 10k 10k 10k 10k 10k 10k 10k
4MHz
U1
C2 13
OSC1/CLKIN RB0/INT
33
14 OSC2/CLKOUT RB1 34
1 35
MCLR/Vpp/THV RB2
27pF RB3/P GM 36
2 37
RA0/AN0 RB4
3 38
+5Vcd RA1/AN1 RB5
4 39
RA2/AN2/VREF- RB6/P GC
5 40
RA3/AN3/VREF+ RB7/P GD
6
RA4/T0CKI
7 15
RA5/AN4/SS RC0/T 1OSO/T1CKI
16
RC1/T 1OSI/CCP2
R9 8 17
RE0/AN5/RD RC2/CCP1
10k 9 18
RE1/AN6/WR RC3/S CK/SCL
10 23
RE2/AN7/CS RC4/SDI/SDA
24
RC5/S DO
RC6/T X/CK 25
RC7/RX/DT 26
19
RD0/PSP0
20
RD1/PSP1
21
RD2/PSP2
22
RD3/PSP3
27
RD4/PSP4
28
RD5/PSP5
29
RD6/PSP6
30
.
RD7/PSP7
470
PIC16F877
D1 D2 D3 D4 D5 D6 D7 D8
LED-B LUE
LED-B LUE
LED-BLUE
LED-BLUE
LED-B LUE
LED-B LUE
LED-B LUE
LED-BLUE
2.- Desarrolle el programa en ensamblador y compilar dicho programa, posteriormente usando el programa PROTEUS simule su
circuito, si esta correcto transfiera el programa al pic y ejecute el programa.
;PRACTICA 4
/*MONITOREO DEL PUERTO B Y SE DESPLIEGA EN EL PUERTO D*/
void main()
{
ANSEL=0;
ANSELH=0;
while(1)
{
PORTD=PORTB;
}
}
Actividades Complementarias
7. Desarrolla tus propias conclusiones de lo que experimentaste en la prctica, inserta una fotografa de la
evidencia fsica de tu prctica dar credibilidad a tu desarrollo de tus competencias adquiridas.
8. Desarrolla de manera adecuada tu reporte de la prctica observando limpieza en el trabajo realizado, un
excelente reporte habla muy bien de ti pues aprenders a trabajar con pulcritud.
Foto ejemplo
Prctica 5 (EJEMPLO)
OPERACIN DE SUMA
Objetivo: El alumno realizara la programacin correspondiente para monitorear el puerto B y con su contenido realizar la
operacin de suma con el dato 0Ah y el resultado mostrarlo en el puerto D del pic 16F887 .
Trabajo previo:
1.- Investigar la hoja de datos del PIC 16F887
Material y equipo:
Tablilla proto board (tablilla de prototipos)
Multmetro digital auto rango
Cables Para Conexiones diversas (cable de interfon)
Fuente de alimentacin 0-30VCD
Pinzas de punta (tipo alicata chica)
PIC 16F887
8 Resistencias de 470 1/2 w
Instructor: ING. DEMETRIO MEZA ALDUCIN
MECATRONICA AREA DE CONTROL
8 leds
8 Resistencias de 10k 1/2 w
8 sw tipo tecla
8 Resistencias de 330 1/2 w
Programador de pics va USB
Cristal 4MHz
2 capacitores de 27pF
Software PROTEUS
Software PIC SIMULATOR
Instrucciones:
1. Arme los circuitos en la tablilla protoboard y antes de energizarlos pida al instructor verifique las conexiones.
2. La prctica debe contener en el formato proporcionado por el instructor lo siguiente: El diagrama esquemtico, clculos,
mediciones realizadas.
3. anexe su investigacin previa a la prctica realizada e intgrelo a su portafolio de evidencias previamente evaluado por el
instructor.
Desarrollo de la Prctica:
1.- Arme el circuito de la siguiente figura en su tablilla de prototipos y calibre el voltaje a 5Vcd y alimente el circuito.
+5Vcd
C1
27pF R1 R2 R3 R4 R5 R6 R7 R8
X1 10k 10k 10k 10k 10k 10k 10k 10k
4MHz
U1
C2 13
OSC1/CLKIN RB0/INT
33
14 OSC2/CLKOUT RB1 34
1 35
MCLR/Vpp/THV RB2
27pF RB3/P GM 36
2 37
RA0/AN0 RB4
3 38
+5Vcd RA1/AN1 RB5
4 39
RA2/AN2/VREF- RB6/P GC
5 40
RA3/AN3/VREF+ RB7/P GD
6
RA4/T0CKI
7 15
RA5/AN4/SS RC0/T 1OSO/T1CKI
16
RC1/T 1OSI/CCP2
R9 8 17
RE0/AN5/RD RC2/CCP1
10k 9 18
RE1/AN6/WR RC3/S CK/SCL
10 23
RE2/AN7/CS RC4/SDI/SDA
24
RC5/S DO
RC6/T X/CK 25
RC7/RX/DT 26
19
RD0/PSP0
20
RD1/PSP1
21
RD2/PSP2
22
RD3/PSP3
27
RD4/PSP4
28
RD5/PSP5
29
RD6/PSP6
30
.
RD7/PSP7
470
PIC16F877
D1 D2 D3 D4 D5 D6 D7 D8
LED-B LUE
LED-B LUE
LED-BLUE
LED-BLUE
LED-B LUE
LED-B LUE
LED-B LUE
LED-BLUE
2.- Desarrolle el programa en ensamblador y compilar dicho programa, posteriormente usando el programa PROTEUS simule su
circuito, si esta correcto transfiera el programa al pic y ejecute el programa.
;PRACTICA 5
/*SUMA EL CONTENIDO DEL PUERTO B CON 0AH Y EL RESULTADO SE DESPLIEGA EN EL PUERTO D*/
void main()
{
ANSEL=0;
ANSELH=0;
TRISB=0XFF;
TRISD=0X00;
PORTD=0X00;
while(1)
{
PORTD=PORTB+0X0A;
}
}
Prctica 6 (EJEMPLO)
FUNCION ESPEJO
Objetivo: El alumno realizara la programacin correspondiente para obtener la funcin espejo en el puerto D del pic 16F887, el
nibble menos significativo ser de entrada y nibble ms significativo ser salida, permitiendo de esta manera monitorear el estado del
nibble de entrada en el nibble de salida.
Trabajo previo:
1.- Investigar la hoja de datos del PIC 16F887
Material y equipo:
Tablilla proto board (tablilla de prototipos)
Multmetro digital auto rango
Cables Para Conexiones diversas (cable de interfon)
Fuente de alimentacin 0-30VCD
Pinzas de punta (tipo alicata chica)
PIC 16F887
8 Resistencias de 470 1/2 w
8 leds
8 Resistencias de 10k 1/2 w
8 sw tipo tecla
8 Resistencias de 330 1/2 w
Programador de pics va USB
Cristal 4MHz
2 capacitores de 27pF
Software PROTEUS
Software PIC SIMULATOR
2. La prctica debe contener en el formato proporcionado por el instructor lo siguiente: El diagrama esquemtico, clculos,
mediciones realizadas.
3. anexe su investigacin previa a la prctica realizada e intgrelo a su portafolio de evidencias previamente evaluado por el
instructor.
Desarrollo de la Prctica:
1.- Arme el circuito de la siguiente figura en su tablilla de prototipos y calibre el voltaje a 5Vcd y alimente el circuito.
+5Vc d
C1
27pF R5 R6 R7 R8
X1 10k 10k 10k 10k
4MHz
U1
C2 13
OSC1/ CLKIN RB0/INT
33
14 OSC2/ CLKOUT RB1 34
1 MCLR/ Vpp/THV RB2 35
27pF RB3/PGM 36
2 37
RA0/AN0 RB4
3 38
+5Vc d RA1/AN1 RB5
4 39
RA2/AN2/VREF- RB6/PGC
5 RA3/AN3/VREF+ RB7/PGD 40
6 RA4/T 0CKI
7 RA5/AN4/SS RC0/T 1OSO/T 1CKI 15
RC1/T 1OSI/CC P2 16
R9 8
RE0/AN5/RD RC2/CCP1
17
10k 9 18
RE1/AN6/WR RC3/S CK/ SCL
10 23
RE2/AN7/CS RC4/S DI /SDA
RC5/SDO 24
RC6/TX/CK 25
RC7/RX/DT 26
19
RD0/PSP0
20
RD1/PSP1
21
RD2/PSP2
22
RD3/PSP3
27
R14
RD4/PSP4
28 R15
RD5/PSP5
29
R16
100
RD6/PSP6
30 R17
100
RD7/PSP7 100
100
PIC16F877
D1 D2 D3 D4
LED-BLUE
LED-BLUE
LED-BLUE
LED-BLUE
2.- Desarrolle el programa en ensamblador y compilar dicho programa, posteriormente usando el programa PROTEUS simule su
circuito, si esta correcto transfiera el programa al pic y ejecute el programa.
;PRACTICA 6
/*FUNCION ESPEJO EN EL PUERTO D*/
char Dato;
int i;
void main()
{
ANSEL=0;
ANSELH=0;
TRISD=0X0F;
TRISC=0X00;
PORTD=0X00;
while(1)
{
Dato=PORTD;
for (i=0; i<4; i++)
{
Dato <<=1;
}
PORTD=Dato;
}
}
Actividades Complementarias
Instructor: ING. DEMETRIO MEZA ALDUCIN
MECATRONICA AREA DE CONTROL
11. Desarrolla tus propias conclusiones de lo que experimentaste en la prctica, inserta una fotografa de la
evidencia fsica de tu prctica dar credibilidad a tu desarrollo de tus competencias adquiridas.
12. Desarrolla de manera adecuada tu reporte de la prctica observando limpieza en el trabajo realizado, un
excelente reporte habla muy bien de ti pues aprenders a trabajar con pulcritud.
Prctica 7 (EJEMPLO)
SISTEMAS DE ALARMA
Objetivo: El alumno realizara la programacin correspondiente para resolver el problema de una alarma que funciona como
sigue:
Se activa el buzer conectado en RD5 siempre y cuando el sensor RB2 se active y deber mantenerse enclavado, y solo se detendr
cuando se active una accin de reset.
Trabajo previo:
1.- Investigar la hoja de datos del PIC 16F887
Material y equipo:
Tablilla proto board (tablilla de prototipos)
Multmetro digital auto rango
Cables Para Conexiones diversas (cable de interfon)
Fuente de alimentacin 0-30VCD
Pinzas de punta (tipo alicata chica)
PIC 16F887
8 Resistencias de 470 1/2 w
8 leds
8 Resistencias de 10k 1/2 w
8 sw tipo tecla
8 Resistencias de 330 1/2 w
Programador de pics va USB
Cristal 4MHz
2 capacitores de 27pF
Software PROTEUS
Software PIC SIMULATOR
Instrucciones:
1. Arme los circuitos en la tablilla protoboard y antes de energizarlos pida al instructor verifique las conexiones.
2. La prctica debe contener en el formato proporcionado por el instructor lo siguiente: El diagrama esquemtico, clculos,
mediciones realizadas.
3. anexe su investigacin previa a la prctica realizada e intgrelo a su portafolio de evidencias previamente evaluado por el
instructor.
Instructor: ING. DEMETRIO MEZA ALDUCIN
MECATRONICA AREA DE CONTROL
Desarrollo de la Prctica:
1.- Arme el circuito de la siguiente figura en su tablilla de prototipos y calibre el voltaje a 5Vcd y alimente el circuito.
+5Vcd
C1
27pF R1 R2 R3 R4 R5 R6 R7 R8
X1 10k 10k 10k 10k 10k 10k 10k 10k
4MHz
U1
C2 13
OSC1/CLKIN RB0/INT
33
14 OSC2/CLKOUT RB1 34
1 35
MCLR/Vpp/THV RB2
27pF 36
RB3/P GM
2 37
RA0/AN0 RB4
3 38
+5Vcd RA1/AN1 RB5
4 39
RA2/AN2/VREF- RB6/P GC
5 40
RA3/AN3/VREF+ RB7/P GD
6
RA4/T0CKI
7 15
RA5/AN4/SS RC0/T1OSO/T1CKI
RC1/T1OSI/CCP2 16
R9 8 RE0/AN5/RD RC2/CCP1 17
10k 9 18
RE1/AN6/WR RC3/S CK/SCL
10 23
RE2/AN7/CS RC4/S DI/SDA
24
RC5/S DO
25
RC6/TX/CK
26
RC7/RX/DT
19
RD0/PSP0
20
RD1/PSP1
21
RD2/PSP2
22
RD3/PSP3
27
RD4/PSP4
28
BUZ1
RD5/PSP5
29
RD6/PSP6
30
RD7/PSP7
BUZZER
PIC16F877
2.- Desarrolle el programa en ensamblador y compilar dicho programa, posteriormente usando el programa PROTEUS simule su
circuito, si esta correcto transfiera el programa al pic y ejecute el programa.
/* PRACTICA 7
ALARMA EL BIT RD5 SE ACTIVA CUNADO EL BIT RB2 SE ACTIVA
*/
void main()
{
ANSEL=0;
ANSELH=0;
TRISB=0XFF;
TRISD=0X00;
PORTD=0X00;
while(1)
{
if(PORTB.F2==1)
{
PORTD.F5 = 1;
}
}
Actividades Complementarias
13. Desarrolla tus propias conclusiones de lo que experimentaste en la prctica, inserta una fotografa de la
evidencia fsica de tu prctica dar credibilidad a tu desarrollo de tus competencias adquiridas.
14. Desarrolla de manera adecuada tu reporte de la prctica observando limpieza en el trabajo realizado, un
excelente reporte habla muy bien de ti pues aprenders a trabajar con pulcritud.
Se activa el buzer conectado en RD5 cuando cualquiera de los sensores RB0 ---RB7 se active y deber mantenerse enclavado, y solo
se detendr cuando se active una accin de reset.
NOTA: Use la bandera Z del registro STATUS para resolver este ejercicio y utilice la instruccin MOVF f,d
Trabajo previo:
1.- Investigar la hoja de datos del PIC 16F887
Material y equipo:
Tablilla proto board (tablilla de prototipos)
Multmetro digital auto rango
Cables Para Conexiones diversas (cable de interfon)
Fuente de alimentacin 0-30VCD
Pinzas de punta (tipo alicata chica)
PIC 16F887
8 Resistencias de 470 1/2 w
8 leds
8 Resistencias de 10k 1/2 w
8 sw tipo tecla
8 Resistencias de 330 1/2 w
Programador de pics va USB
Cristal 4MHz
2 capacitores de 27pF
Software PROTEUS
Software PIC SIMULATOR
Instrucciones:
C1
27pF R1 R2 R3 R4 R5 R6 R7 R8
X1 330 330 330 330 330 330 330 330
4MHz
U1
C2 13 OSC1/CLKIN RB0/I NT 33
14 OSC2/CLKOUT RB1 34
1 MCLR/Vpp/T HV RB2 35
27pF RB3/PGM 36
2 37
RA0/AN0 RB4
+5Vc d 3 RA1/AN1 RB5 38
4 RA2/AN2/VREF- RB6/PGC 39
5 RA3/AN3/VREF+ RB7/PGD 40
6 RA4/T0CKI
7 15
RA5/AN4/SS RC0/T 1OSO/ T1CKI
RC1/T 1OSI/CCP2 16
R9 8 RE0/AN5/RD RC2/CCP1 17 +5Vcd
10k 9 RE1/AN6/WR RC3/SCK/ SCL 18
10 RE2/AN7/CS RC4/SDI/ SDA 23
24
RC5/SDO
25
1. Arme los circuitos en la tablilla protoboard y antes de energizarlos pida al instructor verifique las conexiones.
RC6/T X/CK
RC7/RX/DT 26
RD0/PSP0 19
20
RD1/PSP1
RD2/PSP2 21
RD3/PSP3 22
27
RD4/PSP4
RD5/PSP5 28
29
RD6/PSP6
30
BUZ 1
RD7/PSP7
PIC16F877
BUZZER
2. La prctica debe contener en el formato proporcionado por el instructor lo siguiente: El diagrama esquemtico, clculos,
mediciones realizadas.
3. anexe su investigacin previa a la prctica realizada e intgrelo a su portafolio de evidencias previamente evaluado por el
instructor.
Desarrollo de la Prctica:
1.- Arme el circuito de la siguiente figura en su tablilla de prototipos y calibre el voltaje a 5Vcd y alimente el circuito.
/* PRACTICA 8
ALARMA EL BIT RD5 SE ACTIVA CUNADO CUALQUIERA DE LOS BITS RB0 -- RB7 SE ACTIVE
*/
char Dato;
void main()
{
ANSEL=0;
ANSELH=0;
TRISB=0XFF;
TRISD=0X00;
PORTD=0X00;
while(1)
{
Dato=PORTB.F0 | PORTB.F1 | PORTB.F2 | PORTB.F3 | PORTB.F4 | PORTB.F5 | PORTB.F6 |
PORTB.F7;
if(Dato==1)
{
PORTD.F5 = 1;
}
Actividades Complementarias
15. Desarrolla tus propias conclusiones de lo que experimentaste en la prctica, inserta una fotografa de la
evidencia fsica de tu prctica dar credibilidad a tu desarrollo de tus competencias adquiridas.
16. Desarrolla de manera adecuada tu reporte de la prctica observando limpieza en el trabajo realizado, un
excelente reporte habla muy bien de ti pues aprenders a trabajar con pulcritud.
Resuelva el mismo problema de la alarma utilizando instrucciones lgicas, y se activara el buzer conectado en RD5 cuando se
presente la combinacin 00001011 en el puerto B y solo un reset fsico podr detener la alarma.
Trabajo previo:
1.- Investigar la hoja de datos del PIC 16F887
Material y equipo:
Tablilla proto board (tablilla de prototipos)
Multmetro digital auto rango
Cables Para Conexiones diversas (cable de interfon)
Fuente de alimentacin 0-30VCD
Pinzas de punta (tipo alicata chica)
PIC 16F887
8 Resistencias de 470 1/2 w
8 leds
8 Resistencias de 10k 1/2 w
8 sw tipo tecla
8 Resistencias de 330 1/2 w
Programador de pics va USB
Cristal 4MHz
2 capacitores de 27pF
Software PROTEUS
Software PIC SIMULATOR
Instrucciones:
1. Arme los circuitos en la tablilla protoboard y antes de energizarlos pida al instructor verifique las conexiones.
2. La prctica debe contener en el formato proporcionado por el instructor lo siguiente: El diagrama esquemtico, clculos,
mediciones realizadas.
3. anexe su investigacin previa a la prctica realizada e intgrelo a su portafolio de evidencias previamente evaluado por el
C1
27pF
instructor. R1 R2 R3 R4 R5 R6 R7 R8
X1 330 330 330 330 330 330 330 330
4MHz
U1
C2 13
OSC1/CLKIN RB0/INT
33
14 34
OSC2/CLKOUT RB1
1 35
MCLR/Vpp/THV RB2
27pF RB3/P GM 36
2 37
RA0/AN0 RB4
3 38
+5Vcd RA1/AN1 RB5
Desarrollo de la Prctica:
4 39
RA2/AN2/VREF- RB6/P GC
5 40
RA3/AN3/VREF+ RB7/P GD
6
RA4/T0CKI
7 15
RA5/AN4/SS RC0/T 1OSO/T1CKI
16 SW1 SW2 SW3 SW7 SW4 SW5 SW6 SW8
RC1/T 1OSI/CCP2
R9 8 17 SW-SPSTSW-SPSTSW-SPSTSW-SPST
SW-SPSTSW-SPSTSW-SPSTSW-SPST
RE0/AN5/RD RC2/CCP1 +5Vcd
9 18
10k RE1/AN6/WR RC3/S CK/SCL
10 23
RE2/AN7/CS RC4/SDI/SDA
24
RC5/S DO
25
RC6/T X/CK
RC7/RX/DT 26
1.- Arme el circuito de la siguiente figura en su tablilla de prototipos y calibre el voltaje a 5Vcd y alimente el circuito.
RD0/PSP0 19
20
RD1/PSP1
21
RD2/PSP2
22
RD3/PSP3
27
RD4/PSP4 BUZ1
28
RD5/PSP5
29
RD6/PSP6
30
RD7/PSP7
BUZZER
PIC16F877
/* PRACTICA 9
ALARMA EL BIT RD5 SE ACTIVA CUNADO EL CODIGO 00001011 SE PRESENTE
*/
char Dato;
void main()
{
ANSEL=0;
ANSELH=0;
TRISB=0XFF;
TRISD=0X00;
PORTD=0X00;
while(1)
{
Dato=PORTB.F0 & PORTB.F1 & PORTB.F3;
if(Dato==1)
{
PORTD.F5 = 1;
}
}
Actividades Complementarias
17. Desarrolla tus propias conclusiones de lo que experimentaste en la prctica, inserta una fotografa de la
evidencia fsica de tu prctica dar credibilidad a tu desarrollo de tus competencias adquiridas.
18. Desarrolla de manera adecuada tu reporte de la prctica observando limpieza en el trabajo realizado, un
excelente reporte habla muy bien de ti pues aprenders a trabajar con pulcritud.
Trabajo previo:
1.- Investigar la hoja de datos del PIC 16F887
Material y equipo:
Tablilla proto board (tablilla de prototipos)
Multmetro digital auto rango
Cables Para Conexiones diversas (cable de interfon)
Fuente de alimentacin 0-30VCD
Pinzas de punta (tipo alicata chica)
PIC 16F887
8 Resistencias de 470 1/2 w
8 leds
8 Resistencias de 10k 1/2 w
8 sw tipo tecla
8 Resistencias de 330 1/2 w
Programador de pics va USB
Cristal 4MHz
2 capacitores de 27pF
Software PROTEUS
Software PIC SIMULATOR
Instrucciones:
1. Arme los circuitos en la tablilla protoboard y antes de energizarlos pida al instructor verifique las conexiones.
2. La prctica debe contener en el formato proporcionado por el instructor lo siguiente: El diagrama esquemtico, clculos,
mediciones realizadas.
3. anexe su investigacin previa a la prctica realizada e intgrelo a su portafolio de evidencias previamente evaluado por el
instructor.
Desarrollo de la Prctica:
1.- Estudie detenidamente los siguientes diagramas de flujo y realice las conexiones que se marcan en el siguiente diagrama y
haga uso del osciloscopio para medir la forma de onda obtenida.
C1
27 pF
X1
4MHz
U1
C2 13 OSC 1/CL KIN RB0 /IN T 33
14 OSC 2/CL KOU T R B1 34
1 35
MCL R/Vp p/TH V R B2
27 pF R B3/P GM 36
2 37
3 RA0 /AN0 R B4 38
+5Vc d RA1 /AN1 R B5
4 39
RA2 /AN2 /VREF- R B6/P GC
5 40
RA3 /AN3 /VREF+ R B7/P GD
6
RA4 /T0C KI
7 15
RA5 /AN4 /SS R C0/T 1OS O/T1C KI
16
RC1 /T1OSI/CCP 2
R9 8 RE0 /AN5 /RD RC2 /CCP 1 17
9 18
1 0k RE1 /AN6 /WR R C3/S CK/SC L
10 23
RE2 /AN7 /CS R C4/S DI/S DA
24
R C5/S DO
25
R C6/T X/CK
26
R C7/R X/DT
19
RD0 /PSP 0
RD1 /PSP 1 20
21
RD2 /PSP 2
22
R1
RD3 /PSP 3
27
RD4 /PSP 4 10 0 A
RD5 /PSP 5 28
RD6 /PSP 6
29 D1
RD7 /PSP 7 30 L ED-B LUE
B
PIC1 6F8 7 7
/* PRACTICA 10
OSCILADOR DE ONDA CUADRADA CON FRECUENCIA DE 50 Hz
*/
void main()
{
ANSEL=0;
ANSELH=0;
TRISD=0X00;
PORTD=0X00;
while(1)
{
PORTD.F5=1;
Delay_ms(10);
PORTD.F5=0;
Delay_ms(10);
}
Actividades Complementarias
19. Desarrolla tus propias conclusiones de lo que experimentaste en la prctica, inserta una fotografa de la
evidencia fsica de tu prctica dar credibilidad a tu desarrollo de tus competencias adquiridas.
20. Desarrolla de manera adecuada tu reporte de la prctica observando limpieza en el trabajo realizado, un
excelente reporte habla muy bien de ti pues aprenders a trabajar con pulcritud.
PORTD
PORTD
PORTB
IRP RP1 RP0 TO PD Z DC C RD7 RD6 RD5 RD4 RD3 RD2 RD1 RD0
RLF f,d
0 0 0 0 0 0 0 1
0 0 0 0 0 0 1 0
0 0 0 0 0 1 0 0
0 0 0 0 1 0 0 0
0 0 0 1 0 0 0 0
0 0 1 0 0 0 0 0
0 1 0 0 0 0 0 0
1 0 0 0 0 0 0 0
PRACTICA 14
IRP RP1 RP0 TO PD Z DC C RD7 RD6 RD5 RD4 RD3 RD2 RD1 RD0
RLF f,d
IRP RP1 RP0 TO PD Z DC C RD7 RD6 RD5 RD4 RD3 RD2 RD1 RD0
RRF f,d
PORTD
0 0 0 0 0 0 0 1
0 0 0 0 0 0 1 0
1 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0
0 0 0 0 0 0 1 0
0 0 0 0 0 0 0 1
PRACTICA 15
IRP RP1 RP0 TO PD Z DC C RD7 RD6 RD5 RD4 RD3 RD2 RD1 RD0
RLF f,d
IRP RP1 RP0 TO PD Z DC C RD7 RD6 RD5 RD4 RD3 RD2 RD1 RD0
RRF f,d
PORTD
0 0 0 0 0 0 0 1
0 0 0 0 0 0 1 1
0 0 0 0 0 1 1 1
1 1 1 1 1 1 1 1
0 1 1 1 1 1 1 1
0 0 1 1 1 1 1 1
0 0 0 0 0 0 1 1
0 0 0 0 0 0 0 1
PRACTICA 16
ORG 00
BSF STATUS,RP0
CLRF TRISB
BCF STATUS,RP0
CLRF PORTB
MOVLW .125
CALL TIMER
INICIO MOVLW .10
MOVWF DATO
CICLO2 MOVLW .4
MOVWF DATO2
LOOP MOVLW 0X0F
MOVWF PORTB
MOVLW .1
CALL TIMER
CLRF PORTB
MOVLW .1
CALL TIMER
DECFSZ DATO2,1
GOTO LOOP
MOVLW .4
MOVWF DATO2
CICLO MOVLW 0XF0
MOVWF PORTB
MOVLW .1
CALL TIMER
CLRF PORTB
MOVLW .1
CALL TIMER
DECFSZ DATO2,1
GOTO CICLO
DECFSZ DATO,1
GOTO CICLO2
MOVLW .10
MOVWF DATO
LOOP2 MOVLW 0XF0
MOVWF PORTB
MOVLW .5
CALL TIMER
MOVLW 0X0F
MOVWF PORTB
MOVLW .5
CALL TIMER
DECFSZ DATO,1
GOTO LOOP2
MOVLW .10
MOVWF DATO
LOOP3 MOVLW 0X3C
MOVWF PORTB
MOVLW .2
CALL TIMER
MOVLW 0X66
MOVWF PORTB
MOVLW .2
CALL TIMER
MOVLW 0XC3
MOVWF PORTB
MOVLW .2
CALL TIMER
MOVLW 0X81
MOVWF PORTB
MOVLW .2
CALL TIMER
CLRF PORTB
MOVLW .2
CALL TIMER
DECFSZ DATO,1
GOTO LOOP3
MOVLW .10
MOVWF DATO
LOOP4 MOVLW 0X18
MOVWF PORTB
MOVLW .2
CALL TIMER
MOVLW 0X24
MOVWF PORTB
MOVLW .2
CALL TIMER
MOVLW 0X42
MOVWF PORTB
MOVLW .2
CALL TIMER
MOVLW 0X81
MOVWF PORTB
MOVLW .2
CALL TIMER
MOVLW 0X42
MOVWF PORTB
MOVLW .2
CALL TIMER
MOVLW 0X24
MOVWF PORTB
MOVLW .2
CALL TIMER
Instructor: ING. DEMETRIO MEZA ALDUCIN
MECATRONICA AREA DE CONTROL
DECFSZ DATO,1
GOTO LOOP4
MOVLW .10
MOVWF DATO
CICLO20 MOVLW .10
MOVWF DATO2
LOOP30 MOVLW 0X0F
MOVWF PORTB
MOVLW .1
CALL TIMER2
CLRF PORTB
MOVLW .1
CALL TIMER2
DECFSZ DATO2,1
GOTO LOOP30
MOVLW .10
MOVWF DATO2
CICLO10 MOVLW 0XF0
MOVWF PORTB
MOVLW .1
CALL TIMER2
CLRF PORTB
MOVLW .1
CALL TIMER2
DECFSZ DATO2,1
GOTO CICLO10
DECFSZ DATO,1
GOTO CICLO20
MOVLW .10
MOVWF DATO
INICIO2 CLRF DATO3
BUCLE MOVF DATO3,0
MOVWF PORTB
RLF DATO3,1
BSF DATO3,0
MOVLW .1
CALL TIMER
movf DATO3,W
ANDLW b'11111111'
Xorlw b'01111111'
BTFSS STATUS,Z
GOTO BUCLE
MOVLW 0XFF
MOVWF DATO3
BUCLE2 MOVF DATO3,0
MOVWF PORTB
RRF DATO3,1
BCF DATO3,7
MOVLW .1
CALL TIMER
movf DATO3,W
ANDLW b'11111111'
Xorlw b'00000000'
BTFSS STATUS,Z
GOTO BUCLE2
DECFSZ DATO,1
GOTO INICIO2
MOVLW .10
MOVWF DATO
BCF STATUS,C
INICIO4 MOVLW 0X01
MOVWF DATO3
BUCLE11 MOVF DATO3,0
MOVWF PORTB
RLF DATO3,1
MOVLW .1
CALL TIMER
movf DATO3,W
ANDLW b'11111111'
Xorlw b'10000000'
BTFSS STATUS,Z
GOTO BUCLE11
MOVLW 0X80
MOVWF DATO3
BUCLE22 MOVF DATO3,0
MOVWF PORTB
RRF DATO3,1
MOVLW .1
CALL TIMER
movf DATO3,W
ANDLW b'11111111'
Xorlw b'00000001'
BTFSS STATUS,Z
GOTO BUCLE22
DECFSZ DATO,1
GOTO INICIO4
MOVLW .10
MOVWF DATO
LOOP6 MOVLW 0X00
MOVWF PORTB
MOVLW .2
CALL TIMER
MOVLW 0X81
MOVWF PORTB
MOVLW .2
CALL TIMER
MOVLW 0XC3
MOVWF PORTB
MOVLW .2
CALL TIMER
MOVLW 0XE7
MOVWF PORTB
MOVLW .2
CALL TIMER
MOVLW 0XFF
MOVWF PORTB
MOVLW .2
CALL TIMER
MOVLW 0XE7
MOVWF PORTB
MOVLW .2
CALL TIMER
MOVLW 0XC3
MOVWF PORTB
MOVLW .2
CALL TIMER
MOVLW 0X81
MOVWF PORTB
MOVLW .2
CALL TIMER
DECFSZ DATO,1
GOTO LOOP6
Instructor: ING. DEMETRIO MEZA ALDUCIN
MECATRONICA AREA DE CONTROL
MOVLW .10
MOVWF DATO
LOOP7 MOVLW 0X00
MOVWF PORTB
MOVLW .2
CALL TIMER
MOVLW 0X18
MOVWF PORTB
MOVLW .2
CALL TIMER
MOVLW 0X3C
MOVWF PORTB
MOVLW .2
CALL TIMER
MOVLW 0X7E
MOVWF PORTB
MOVLW .2
CALL TIMER
MOVLW 0XFF
MOVWF PORTB
MOVLW .2
CALL TIMER
MOVLW 0X7E
MOVWF PORTB
MOVLW .2
CALL TIMER
MOVLW 0X3C
MOVWF PORTB
MOVLW .2
CALL TIMER
MOVLW 0X18
MOVWF PORTB
MOVLW .2
CALL TIMER
DECFSZ DATO,1
GOTO LOOP7
GOTO INICIO
TIMER MOVWF CONTA1
L3 MOVLW .80
MOVWF CONTA2
L2 MOVLW 0XFF
MOVWF CONTA3
L1 DECFSZ CONTA3,F
GOTO L1
DECFSZ CONTA2,F
GOTO L2
DECFSZ CONTA1,F
GOTO L3
RETURN
TIMER2 MOVLW .40
MOVWF CONTA1
L20 MOVLW 0XF0
MOVWF CONTA2
L10 DECFSZ CONTA2,F
GOTO L10
DECFSZ CONTA1,F
GOTO L20
RETURN
END
PRACTICA 17
MOTORES A PASOS
El control de los motores a paso resulta bastante fcil atreves del uso de microcontroladores, ya
que el microcontrolador puede dar fcilmente las secuencias de alimentacin en las bobinas del
motor atreves de un acoplamiento de potencia. La secuencia depende del tipo de motor a pasos,
los hay del tipo unipolar y del tipo bipolar, el ms simple de controlar es el unipolar. Observe la
El modo de alimentar las bobinas del motor puede ser de tres formas; excitacin a 1 fase,
excitacin a 2 fases y excitacin a 1 2 fases. A continuacin se muestran las tablas de los
modos de excitacin:
EXCITACIN 1 FASE EXCITACIN 2 FASES EXCITACIN 1-2 CONTINUACION 1-2
FASES FASES
CK 1 2 3 4 CK 1 2 3 4 CK 1 2 3 4 CK 5 6 7 8
A 0 0 0 1 A 0 0 1 1 A 0 0 1 1 A 1 1 0 0
B 0 0 1 0 B 0 1 1 0 B 0 O 1 0 B 1 0 0 0
A 0 1 0 0 A 1 1 0 0 A 0 1 1 0 A 1 0 0 1
B 1 0 0 0 B 1 0 0 1 B 0 1 0 0 B 0 0 0 1
Una forma muy simple pero muy efectiva de conectar un motor con un microcontrolador es
como se muestra a continuacin. Observe que los diodos se utilizan como dispositivos de
proteccin para drenar y diluir la fuerza contraelectromotriz que se genera en las bobinas del
motor cuando estas son desenergizadas y as evitar que se daen los transistores y como
consecuencia el microcontrolador.
+12 V
C1
27pF
X1
4MHz U1
C2 L1 L2 L3 L4
13
OS C1/CLK I N RB 0/INT
33 D1 1mH D2 1mH D3 1mH D4 1mH
14 OS C2/CLK OUT RB 1 34
1 35
MCLR/V pp/THV RB 2
27pF RB 3/P GM 36
2 37
RA 0/A N0 RB 4
+5Vc d 3 RA 1/A N1 RB 5 38
4 39
RA 2/A N2/ V RE F- RB 6/P GC
5 RA 3/A N3/ V RE F+ RB 7/P GD 40
6 RA 4/T 0CKI Q1 Q2 Q3 Q4
7 RA 5/A N4/ S S RC0/T 1OS O/T1CK I 15 T IP 122 T IP 122 TIP122 TI P 122
RC1/T 1OS I /CCP 2 16
R9 8
RE 0/A N5/ RD RC2/CCP1
17
10k 9 RE 1/A N6/ WR RC3/S CK/ SCL 18 R1 R2 R3 R4
10 23
RE 2/A N7/ CS RC4/S DI /S DA 2. 2K 2.2K 2.2K 2.2K
RC5/S DO 24
25
RC6/T X/ CK
RC7/RX/ DT 26
RD0/P S P0 19
20
RD1/P S P1
RD2/P S P2 21
22
RD3/P S P3
RD4/P S P4 27
RD5/P S P5 28
RD6/P S P6 29
30
RD7/P S P7
P IC16F877
Realice los programas que le permitan controlar los dos motores que
se encuentran conectados en el puerto D del pic16F887, disee el
programa para cada una de las secuencias de giro que se piden en
las siguientes figuras.
NOTA: si es posible puede hacer un solo programa que mediante
lneas de seleccin ubicadas en el puerto B, seleccione cada una de
las secuencias de los motores ( es decir realizar 8 programas dentro
de un programa principal).
PRACTICA 18
Realice un programa que permita controlar la rotacin del motor a pasos nmero 1 de
4 fases en sentido CCW, la rotacin se inicia cuando se presiona el Bit 2 del puerto B y
si se presiona cuando est rotando el motor deber parar, es decir el Bit ser de
arranque y paro.
PORTB
MOTOR 1
PORTD
MOTOR 2 MOTOR 1
PRACTICA 19
Realice un programa que permita controlar la rotacin del motor a pasos nmero 1 de
4 fases conectado al puerto D, de acuerdo al estado del puerto B: el Bit 0 controla el
arranque/paro del motor, el Bit 1 controla el sentido CW, el Bit 2 controla el sentido
CCW.
PORTB
MOTOR 1
PORTD
MOTOR 2 MOTOR 1
PRACTICA 20
Realice un programa que permita controlar la velocidad del motor a pasos nmero 1
de 4 fases conectado al puerto D, que gira en CCW, mediante el puerto B se debe
controlar como sigue: el Bit 0 incrementa la velocidad del motor, el Bit 1 decrementa la
velocidad del motor.
PORTB
INCREMENTA VEL.
DECREMENTA VEL.
MOTOR 1
PORTD
MOTOR 2 MOTOR 1
PRACTICA 21
Realice un programa que permita controlar el nmero de pasos que dar el motor a
pasos nmero 1, con los Bits 0 al Bit 6 se controla el nmero de pasos, y el sentido de
giro se controla con el Bit 7 del puerto B, ejemplo:
PORTB
1 1 1 1 0 1 0 0
PORTB
MOTOR 1
PORTD
MOTOR 2 MOTOR 1
PRACTICA 22
Realice un programa que permita controlar los 2 motores a pasos, mediante seales
de entrada del puerto B, ejemplo:
PORTB
1 1 1 1 0 1 0 0
NUMERO DE PASOS
0 .. DIRECCION CCW
1 DIRECCION CW
MOTOR 1
PORTD
MOTOR 2 MOTOR 1
PRACTICA 23
Realice un programa que permita controlar los 2 motores a pasos, mediante seales
de entrada del puerto B, del PIC16F887 ejemplo:
PORTB
X X X X X X 0 0
0 0 ROTA MOTOR 1 EN CW
0 1 ROTA MOTOR 2 EN CCW
1 0 ROTA MOTOR 1 EN CCW
1 1 ROTA LOS 2 MOTORES EN CW
Instructor: ING. DEMETRIO MEZA ALDUCIN
MECATRONICA AREA DE CONTROL
MOTOR 2 MOTOR 1
PORTD
MOTOR 2 MOTOR 1
PRACTICA 24
cc g f e d c b a
0 0 1 1 1 1 1 1
3 F
Utilice el siguiente diagrama de conexiones y manipule el bit 7 del puerto C para que
encienda el primer digito, recuerde poner en serie una resistencia limitadora a cada
segmento del display.
RC6 - RC0
Q1
Q2
RC7 BC547
BC557
PRACTICA 25
RC6 - RC0
Q1
Q2
RC7 BC547
BC557
PRACTICA 26
Q1
Q2
RC7 BC547
BC557
PRACTICA 27
NOTA: el codigo del programa fue realizado para trabajar con el PIC16F84A, analice dicho
codigo y haga las correcciones ncesarias para que trabaje con el PIC16F887 segn las
conexiones del diagrama esquematico, checa el data sheet para estudiar los registros
+5V
R19
10k
C1
27pF
X1
CRYST AL
C2
U2
27pF +5V 13 OSC1/CLKIN RB0/INT 33
R2 Q4 Q3 Q2 Q1
14 34
1
OSC2/CLKOUT RB1
35 R3 BC557 BC557 BC557 BC557
MCLR/Vpp/THV RB2
36
R4
330
RB3/PGM R5
330
2 37
3
RA0/AN0 RB4
38
R6
330
RA1/AN1 RB5 R7
330 R13 R12 R10 R9
R1 4
RA2/AN2/VREF- RB6/PGC
39
R8
330 1K 1K 1K 1K
5 40
10k RA3/AN3/VREF+ RB7/PGD 330
6 RA4/T 0CKI 330
+5V
PIC16F877
list p=16F84a
#include <p16F84a.inc>
__CONFIG _CP_OFF & _WDT_OFF & _XT_OSC
org 0
goto inicio
org 4
goto interrup
;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
;@@@@@@@@@@@@@@@@@@@@@ RURTINA DE RETARDO PARA INT @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
;
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@
;@@@@@@@@@@@@@@@@@@@@@@@ INTERRUPCION EXTERNA @@@@@@@@@@@@@@@@@@@@@@@@@
;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
PRACTICA 28
C1
22pF
+5v
100K
X1 U1
13 33
CRYST AL OSC1/CLKIN RB0/INT
14 34 POT
OSC2/CLKOUT RB1
C2 1
MCLR/Vpp/THV RB2
35
U2
36
RB3/PGM
4
5
2
3
RA0/AN0 RB4 37
38
R11 R9 2
22pF +5V RA1/AN1 RB5 1k
4 39 6
RA2/AN2/VREF- RB6/PGC 10k
5 40 3
RA3/AN3/VREF+ RB7/PGD +5v
6 RA4/T 0CKI
7 RA5/AN4/SS RC0/T 1OSO/T 1CKI 15 R10
7
1
16
RC1/T 1OSI/CCP2 LM741 10k
R17 8 17 D9
RE0/AN5/RD RC2/CCP1
10k 9 18 LM35
RE1/AN6/WR RC3/SCK/SCL
10 RE2/AN7/CS RC4/SDI/SDA 23
24
RC5/SDO
25
RC6/TX/CK
RC7/RX/DT 26
19 R1
RD0/PSP0 R2
20
RD1/PSP1
21
R3
100
RD2/PSP2 R4
100
22
RD3/PSP3
27
R5
100
RD4/PSP4
28 R6
100
RD5/PSP5
29
R7
100
RD6/PSP6
30
R8
100
RD7/PSP7 100
100
PIC16F877
D1 D2 D3 D4 D5 D6 D7 D8
LED-GREEN
LED-GREEN
LED-GREEN
LED-GREEN
LED-GREEN
LED-GREEN
LED-GREEN
LED-GREEN
C1
22pF
X1 U1
CRYSTAL 13 33
OSC1/CLKIN RB0/INT
14 34
OSC2/CLKOUT RB1
C2 1
MCLR/Vpp/THV RB2
35
36
RB3/PGM
2 37
RA0/A N0 RB4
22pF 3 38
+5V RA1/A N1 RB5
4 39
RA2/A N2/VREF- RB6/PGC
5 RA3/A N3/VREF+ RB7/PGD 40
6
RA4/T 0CKI
7 RA5/A N4/SS RC0/T1OSO/T1CKI 15
16
RC1/T1OSI/CCP2
R17 8 17
RE0/A N5/RD RC2/CCP1
9 18
10k RE1/A N6/WR RC3/SCK/SCL
10 23
RE2/A N7/CS RC4/S DI/SDA
24
RC5/SDO
25
RC6/TX/CK
26
RC7/RX/DT
PRACTICA 30
19
R1
RD0/P SP0
20
R2
RD1/P SP1
21
R3
100
RV1 RD2/P SP2
22
R4
100
RD3/P SP3
27
R5
100
RD4/P SP4
28
R6
100
RD5/P SP5
29 R7
100
RD6/P SP6 100
30
RD7/P SP7 100
PIC16F877
POT
R1 R2 R3 R4 R5 R7 R8 R9
1 0k 10k 1 0k 10 k 10 k 1 0k 10k 1 0k
LCD1
PRACTICA 31
C1
LM016L
U1
27 pF 13 33
OSC 1/C LKIN R B0/INT
X1 14
OSC 2/C LKOUT RB1
34
1 35
C RYS TAL MCL R/V pp/T HV RB2
C2 R B3/ PGM
36
2 37
RA0 /AN 0 RB4
VDD
VSS
VEE
3 38
RW
RS
27 pF 4 39
RA2 /AN 2/ VRE F- R B6/ PGC
5 40
RA3 /AN 3/ VRE F+ R B7/ PGD
1
2
3
4
5
6
7
8
9
10
11
12
13
14
6
RA4 /T0 CKI
7 15
RA5 /AN 4/ SS RC0 /T1OSO/T 1C KI
16
R C1/T 1OS I /C CP2
R6 8
RE0 /AN 5/ RD R C2/C CP1
17
10k 9 18
RE1 /AN 6/ WR RC3/ SC K/SCL
10 23
RE2 /AN 7/ CS RC4 /SD I/SD A + 5V
24
R C5/ SDO
25
RC6 /TX /C K
26
RC7 /RX /D T
19
R D0/P SP0 +12v
20
R D1/P SP1
21
R D2/P SP2
22
R D3/P SP3
27
R D4/P SP4
28
R D5/P SP5
29 + 88 .8
R D6/P SP6
PIC16F87 7
+5v
C1
U1
27pF 13 33
OSC1/CLKIN RB0/INT
X1 14 34
OSC2/CLKOUT RB1
CRYSTAL 1 35 R2 R3
MCLR/Vpp/THV RB2
C2 RB3/PGM
36
10k 10k
2 37
RA0/A N0 RB4
3 38
+5V RA1/A N1 RB5
27pF 4 39
RA2/A N2/VREF- RB6/PGC
5 40
RA3/A N3/VREF+ RB7/PGD
6
RA4/T 0CKI
7 RA5/A N4/SS RC0/T1OSO/T1CKI 15 +12v
16
RC1/T1OSI/CCP2
R6 8 17
RE0/A N5/RD RC2/CCP1
10k 9 18
RE1/A N6/WR RC3/SCK/SCL
10 23
RE2/A N7/CS RC4/S DI/SDA
24
RC5/SDO
25
RC6/TX/CK
26
RC7/RX/DT
RD0/P SP0 19
RD1/P SP1 20
RD2/P SP2 21 ?
22
RD3/P SP3
RD4/P SP4
27
R1 Q1
28
RD5/P SP5 TIP122
29
RD6/P SP6 10k
30
RD7/P SP7
PIC16F877
PRACTICA 33
1.- Al encender el circuito. Se debe desplegar un mensaje "BIENVENIDO" en el LCD 16X2 y debe
durar 8 seg.
3.- Mediante el teclado matricial se debe especificar el nmero de piezas que van desde 1 hasta 10000 y
se deber exhibir en el LCD con una duracin de 5 seg.
4.- Una vez escrita la cantidad, el sistema pedir que se oprima una tecla que funciona como ENTER
mediante el mensaje "OPRIMA ENTER" (esquina inferior derecha del teclado)
5.- Despus de 3 seg. el sistema pondr un 1 lgico en el pin RA3 del pic y mostrara el siguiente mensaje
"TRABAJANDO" en la linea 1 del LCD
6.- Cuando una pieza sea detectada por el sensor conectado a RA4 el sistema registrara un conteo
ascendente mostrndose en el LCD en la linea 2
7.- Cuando el conteo llegue a la cantidad establecida anteriormente el sistema pondr un 0 lgico en RA3 y
8.- Cuando en cualquier momento se oprima el botn conectado a RA5 el sistema se pondr en modo de
pausa poniendo un 0 lgico en RA3 y dejara de contar, y si se oprime nuevamente se restablece el
funcionamiento normal.
+5 V
R8
10k
C1 LCD1
U1 LM016L
9 OSC1/CLKI N RB0 /I NT 21
27pF 10 22
OSC2/CLKOUT RB1
X1 1
MCLR/V pp/T HV RB2
23
24
CRY ST AL RB 3/ PGM
C2 2
RA0/ AN0 RB4
25
3 26
RA1/ AN1 RB5
V DD
V SS
V EE
4 27
RW
RS
D0
D1
D2
D3
D4
D5
D6
D7
27pF 5 28
RA3/ AN3/ VREF+ RB 7/ PGD
6
RA4/ T0 CKI
1
2
3
4
5
6
7
8
9
10
11
12
13
14
7 11
RA5/ AN4/ SS RC0 /T 1OS O/T 1CK I
12
RC1/T 1OS I /CCP 2
13
RC2 /CCP1
R6 RC3/ SCK/ SCL
14
10k 15
RC4/ SDI/ SDA
16
RC5/ SDO +5V
17
RC6/ TX /CK
18
RC7/ RX /DT
P IC 16F873
+5V
+5 V
R3
R7 10k
U2:B
10k
U2:A 5
R5
1 4
33 0
3 6
2 D1
4093 R1 L ED-Y E LLOW
4093 330
D2
LE D-YE LLOW
PRACTICA 34
Realice un programa que mediante un control remoto de televisin SONY,
PANASONIC, SHARP, ETC. Se controle un motor a pasos conectado en el puerto D
de la siguiente manera:
27pF
X1
4MHz
U1
C2 13
OSC1/CLKIN RB0/INT
33
14 34
OSC2/CLKOUT RB1
1 35
MCLR/Vpp/THV RB2
27pF 36
RB3/P GM
2 37
RA0/AN0 RB4
3 38
RA1/AN1 RB5
4 39
RA2/AN2/VREF- RB6/P GC
5 40
+5Vcd RA3/AN3/VREF+ RB7/P GD
6
RA4/T0CKI
7 15
RA5/AN4/SS RC0/T1OSO/T1CKI
RC1/T1OSI/CCP2 16
8 RE0/AN5/RD RC2/CCP1 17
9 18
RE1/AN6/WR RC3/S CK/SCL
R9 10
RE2/AN7/CS RC4/SDI/SDA
23
24
10k RC5/S DO
25
RC6/TX/CK
26
RC7/RX/DT
19
RD0/P SP0
20
RD1/P SP1
21
RD2/P SP2
22
RD3/P SP3
27
RD4/P SP4
28
RD5/P SP5
29
RD6/P SP6
RD7/P SP7 30
PIC16F877
PRACTICA 35
PROYECTO FINAL
Es aqu donde pondrs en prctica tus conocimientos que has adquirido sobre
los microcontroladores, como ya sabes casi cualquier aplicacin se puede
realizar con un microcontrolador, escoge el PIC que se ajuste al proyecto que
has estado imaginando y progrmalo para que satisfaga tus expectativas y lleves
a cabo tu proyecto final, y como te lo dijo el profesor, este proyecto es de
carcter obligatorio para aprobar el submdulo de lo contrario tendrs que
repetir el curso, pues no lograste adquirir la competencia de manejar y programar
los pics.
Toma en consideracin los tiempos que necesitas para realizar este proyecto y
pide a tu profesor te asesore en cuanto a la viabilidad de tu proyecto que has
elegido, y recuerda que EL GRAN DEME no les ensea a sus alumnos solo les
indica el camino para que aprendan.
RECUERDA, la idea solo es el 1 % de un proyecto, el otro 99 % es de