practica1 senales

Upload: eduardoparra

Post on 06-Jul-2018

226 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/17/2019 PRACTICA1 Senales

    1/13

    “UNIVERSIDAD NACIONAL DE LOJA”

    ÁREA DE LA ENERGÍA, LAS INDUSTRIAS Y LOS RECURSOSNATURALES NO RENOVABLES

    CARRERA DE INGENIERÍA EN ELECTRÓNICA Y

    TELECOMUNICACIONES

    CICLO V

    INFORME DE LA

    PRÁCTICA # 1 DE MICROCONTROLADORES

    PROGRAMACION DE MICROCONTROLADORES PARA ENCENDIDO DE LEDS

    INTEGRANTES:

    Fernanda Macas Torres [email protected]

    Eduardo Parra Celi [email protected]

    DOCENTE:

    Ing. Ximena Acaro

    FEC A:

    !"#!$#%!&'

    Lo(a ) Ec*a+or

  • 8/17/2019 PRACTICA1 Senales

    2/13

    1 TEMA: PROGRAMACION DE MICROCONTROLADORES PARA ENCENDIDO DE LEDS

    2 OB ETI!OS:

    • Conocer el funcionamiento del microcontrolador PIC16F877A.•

    Reconocer los puertos que dispone el PIC16F877A.• Programar el PIC16F877A con las especificaciones mencionadas en la guía.

    3 MATERIALES " REACTI!OS # PorGru$o

    E%ui$os & 'erra(ien)as # Por Gru$o

    • PIC16F877A• 1 cristal de !"#• 8 resistencias de 33$%• 1 resistencia de 1$& %• ' capacitores de ''pF• 8 leds• 1pulsador• (atas)eet PIC16F877A

    • 1 fuente de corriente continua de *+• 1 quemador de PIC ,PIC&it3-• 1 multímetro• 1 proto oard• 1 computadora• ' /a&s• ' puntas de prue a para multímetro• ca le para cone0i n en proto oard• pin#as2 alicates2 corta ca les2 pela ca les

    * INSTR+CCIONES:• Colocar las moc)ilas en los casilleros•

    Pro)i ido consumo de alimentos• Pro)i ido equipo de di ersi n2 celulares etc.• Pro)i ido /ugar • Pro)i ido mo er o intercam iar los equipos de los ancos de tra a/o• Pro)i ido sacar los equipos del la oratorio sin autori#aci n.• 4 icar los equipos 5 accesorios en el lugar dispuesto por el responsa le del la oratorio2 luego de

    terminar las pr cticas.• 4so adecuado de equipos• 4so o ligatorio del mandil• Presentar el preparatorio al docente a cargo de la materia al inicio de la /ornada.

    , ACTI!IDADES POR DESARROLLAR:

    Encendido de led

    1. Reali#ar la programaci n utili#ando el soft are !icro C Pro.'. Construir el circuito electr nico de la Fig. 1.12 utilice el soft are especiali#ado dispuesto en el

    la oratorio.

  • 8/17/2019 PRACTICA1 Senales

    3/13

    RA0/AN02

    RA1/AN13

    RA2/AN2/VREF-4

    RA4/T0CKI6

    RA5/AN4/SS7

    RE0/AN5/RD8

    RE1/AN6/WR9

    RE2/AN7/CS10

    OSC1/CLKIN13

    OSC2/CLKOUT14

    RC1/T1OSI/CCP2 16

    RC2/CCP1 17

    RC3/SCK/SCL 18

    RD0/PSP0 19

    RD1/PSP1 20

    RB7/PGD 40RB6/PGC 39

    RB5 38RB4 37

    RB3/PG 36RB2 35RB1 34

    RB0/INT 33

    RD7/PSP7 30RD6/PSP6 29RD5/PSP5 28RD4/PSP4 27RD3/PSP3 22RD2/PSP2 21

    RC7/R!/DT 26RC6/T!/CK 25

    RC5/SDO 24RC4/SDI/SDA 23

    RA3/AN3/VREF"5

    RC0/T1OSO/T1CKI 15

    CLR/V##/T$V1

    U1

    PIC16F877

    C1

    22#

    C2

    22#

    1

    2

    4 $%CR&STAL

    R1

    330

    D1

    LED-RED

    R610'

    Fi-. 1.1 Encendido de led con PIC1,F/00A

    3. Crear un programa que encienda 5 apague un led2 u icado en la terminal R(7 del puerto (. ltiempo de encendido es de 1$$$ milisegundo 5 el de apagado de *$$ milisegundos .

    Luces secuenciales

    1. Reali#ar la programaci n utili#ando el soft are !icro C Pro.'. Construir el circuito electr nico de la Fig. 1.'2 utilice el soft are especiali#ado dispuesto en el

    la oratorio.

    RA0/AN02

    RA1/AN13

    RA2/AN2/VREF-/CVREF4

    RA4/T0CKI/C1OUT6

    RA5/AN4/SS/C2OUT7

    RE0/AN5/RD8

    RE1/AN6/WR9

    RE2/AN7/CS10

    OSC1/CLKIN13

    OSC2/CLKOUT14

    RC1/T1OSI/CCP2 16

    RC2/CCP1 17

    RC3/SCK/SCL 18

    RD0/PSP0 19

    RD1/PSP1 20

    RB7/PGD 40RB6/PGC 39

    RB5 38RB4 37

    RB3/PG 36RB2 35RB1 34

    RB0/INT 33

    RD7/PSP7 30RD6/PSP6 29RD5/PSP5 28RD4/PSP4 27RD3/PSP3 22RD2/PSP2 21

    RC7/R!/DT 26RC6/T!/CK 25

    RC5/SDO 24RC4/SDI/SDA 23

    RA3/AN3/VREF"5

    RC0/T1OSO/T1CKI 15

    CLR/V##/T$V1

    U1

    PIC16F877A

    12345678

    2019181716151413

    910

    1211

    U2

    LED-BARGRAP$-GRN

    R1

    R8330 O$)*

    C122#

    C222#

    !1

    CR&STAL

    R1010'

    Fi-. 1.2 Luces secuenciales con PIC1,F/00A

  • 8/17/2019 PRACTICA1 Senales

    4/13

    3. Crear un programa que encienda una gama de leds de forma secuencial u icados en losterminales del puerto (2 empe#ando por R($ con un tiempo de *$$ms durante la e/ecuci n encada terminal )asta llegar a R(72 una e# llegado )asta este terminal de e ol er a empe#ar.

    . Reali#ar tipos de rutinas que se e/ecuten de forma secuencial.

    0 MARCO TE RICO:

    El PIC1,F/00Al PIC16F877 es un microcontrolador con memoria de programa tipo F9A:"2 lo que representa

    gran facilidad en el desarrollo de prototipos 5 en su aprendi#a/e 5a que no se requiere orrarlo conlu# ultra ioleta como las ersiones PR;!2 sino que permite reprogramarlo nue amente sin ser

    orrado con anterioridad. l PIC16F877 es un microcontrolador de !icroc)ip line Pin- de $ pines2 propio para usarloen e0perimentaci n. 9a referencia completa es PIC16F877>$ para el dispositi o que utili#a cristaloscilador de )asta !"#2 PIC16F877>'$ para el dispositi o que utili#a cristal oscilador de )asta '$!"# o PIC16F877A>I para el dispositi o tipo industrial que puede tra a/ar )asta a '$ !"#. :inem argo2 )a5 otros tipos de encapsulado que se pueden utili#ar seg=n el dise?o 5 la aplicaci n que sequiere reali#ar. Por e/emplo2 el encapsulado tipo surface mount ,monta/e superficial- tiene unreducido tama?o 5 a/o costo2 que lo )ace propio para producciones en serie o para utili#arlo enlugares de espacio mu5 reducido.

    • Carac)er s)icas $rinci$ales@ !emoria de programa F9A:"2 8 B de instrucciones de 1 its c u.@ !emoria de datos 368 5tes RA!2 '*6 5tes PR;!.@ Pila ,:tac&- 8 ni eles ,1 its-.@ Fuentes de interrupci n 13@ Instrucciones 3*@ ncapsulado (IP de $ pines.@ Frecuencia oscilador '$ !"# ,m 0ima-@

  • 8/17/2019 PRACTICA1 Senales

    5/13

    > Comparaci n 16 its. Resoluci n m 0. G '$$ nseg. > PE! Resoluci n m 0. G 1$ its.@ Con ertidor An logo (igital de 1$ its multicanal ,8 canales de entrada-.@ Puerto serial síncrono ,::P- con us :PI ,modo maestro- 5 us IHC ,maestro escla o-.@ 4:AR< ,4ni ersal :5nc)ronous As5nc)ronous Recei er

  • 8/17/2019 PRACTICA1 Senales

    6/13

  • 8/17/2019 PRACTICA1 Senales

    7/13

    9as constantes literales enteras que empie#an con $ se consideran n=meros octales. Por e/emplo2$3*7.

    9as constantes con el prefi/o $ ,o $ - se consideran n=meros inarios. Por e/emplo2 $ 1$1$$1$1.

    /emplo de las constantes literales

    9611 ,literal )e0adecimal equi ale a literal decimal 17-11 ,literal decimal-911 ,literal octagonal equi ale a literal decimal -9711 ,literal inaria equi ale a literal decimal 3-

    / RES+LTADOS OBTENIDOS.

    Si(ulaci3n reali ada del $ri(er circui)o de la $r;c)ica:

    RA0/AN02

    RA1/AN13

    RA2/AN2/VREF-/CVREF4

    RA4/T0CKI/C1OUT6

    RA5/AN4/SS/C2OUT7

    RE0/AN5/RD8RE1/AN6/WR9

    RE2/AN7/CS10

    OSC1/CLKIN13

    OSC2/CLKOUT14

    RC1/T1OSI/CCP2 16RC2/CCP1 17

    RC3/SCK/SCL 18

    RD0/PSP0 19

    RD1/PSP1 20

    RB7/PGD 40RB6/PGC 39

    RB5 38RB4 37

    RB3/PG 36RB2 35RB1 34

    RB0/INT 33

    RD7/PSP7 30RD6/PSP6 29RD5/PSP5 28RD4/PSP4 27RD3/PSP3 22RD2/PSP2 21

    RC7/R!/DT 26RC6/T!/CK 25

    RC5/SDO 24RC4/SDI/SDA 23

    RA3/AN3/VREF"5

    RC0/T1OSO/T1CKI 15

    CLR/V##/T$V1

    U1

    PIC16F877A

    1

    2

    !1CR&STAL

    C1

    22#

    C2

    22#

    R110'

    D1

    LED-RED

    R2

    330

    Fi-ura *. ncendido 5 Apagado de un 9ed

  • 8/17/2019 PRACTICA1 Senales

    8/13

    Fi-ura ,. ncendido 5 Apagado de un 9ed

    C3di-o reali ado $ara el encendido & a$a-ado de un led.

    #define led PORTD.RD7void main() {

    TRISD = 0x00;// Config !a! lo" ine" de PORTD $omo "alida" PORTD = 0x00;// % aga! lo" &'D" en PORTD do{ led = 0x ; // 'n$iende el &'D en PORTD.RD7

    Dela *m"(+000);// Re,!a"o de n "eg ndo led = 0x00;// % aga el &'D en PORTD.RD7 Dela *m"(-00);// Re,!a"o de medio"eg ndo ile(+);// 1 $le infini,o Si(ulaci3n del se-undo circui)o reali ado en la $r;c)ica:

  • 8/17/2019 PRACTICA1 Senales

    9/13

    RA0/AN02

    RA1/AN13

    RA2/AN2/VREF-/CVREF4

    RA4/T0CKI/C1OUT6

    RA5/AN4/SS/C2OUT7

    RE0/AN5/RD8

    RE1/AN6/WR9

    RE2/AN7/CS10

    OSC1/CLKIN13

    OSC2/CLKOUT14

    RC1/T1OSI/CCP2 16

    RC2/CCP1 17

    RC3/SCK/SCL 18

    RD0/PSP0 19

    RD1/PSP1 20

    RB7/PGD 40RB6/PGC 39

    RB5 38RB4 37

    RB3/PG 36RB2

    35RB1 34

    RB0/INT 33

    RD7/PSP7 30RD6/PSP6 29RD5/PSP5 28RD4/PSP4 27RD3/PSP3 22RD2/PSP2 21

    RC7/R!/DT 26RC6/T!/CK 25

    RC5/SDO 24RC4/SDI/SDA 23

    RA3/AN3/VREF"5

    RC0/T1OSO/T1CKI 15

    CLR/V##/T$V1

    U2

    PIC16F877A

    1

    2

    !2CR&STALC3

    22#F

    R310'

    C4

    22#F

    12345678

    2019181716151413

    910

    1211

    U3

    LED-BARGRAP$-GRN

    Fig*ra - . Encendido de luces secuenciales.

    Fig*ra . Encendido de luces secuenciales.

    C3di-o reali ado $ara el encendido de las luces secuenciales.

  • 8/17/2019 PRACTICA1 Senales

    10/13

    $on", ,ime=-00; n"igned $on,=0; void main() { TRISD = 0x00;// Config !a! lo" ine"de PORTD $omo "alida" PORTD = 0x00;// % aga! lo" &'D" enPORTD

    ile($on,23){

    PORTD.RD0=0x ; // 'n$iende el &'Den PORTD.RD0 Dela *m"(,ime);// Re,!a"o de n"eg ndo PORTD.RD0= 0x00;// % aga el &'D enPORTD.RD0 PORTD.RD+ = 0x ; // 'n$iende el&'D en PORTD.RD+ Dela *m"(,ime);// Re,!a"o de n"eg ndo

    PORTD.RD+= 0x00;// % aga el &'D enPORTD.RD+ PORTD.RD4 = 0x ; // 'n$iende el&'D en PORTD.RD4 Dela *m"(,ime);// Re,!a"o de n"eg ndo PORTD.RD4= 0x00;// % aga el &'D enPORTD.RD4 PORTD.RD5 = 0x ; // 'n$iende el&'D en PORTD.RD5

    Dela *m"(,ime);// Re,!a"o de n"eg ndo PORTD.RD5= 0x00;// % aga el &'D enPORTD.RD5 PORTD.RD3 = 0x ; // 'n$iende el&'D en PORTD.RD3 Dela *m"(,ime);// Re,!a"o de n"eg ndo PORTD.RD3= 0x00;// % aga el &'D enPORTD.RD3 PORTD.RD- = 0x ; // 'n$iende el&'D en PORTD.RD- Dela *m"(,ime);// Re,!a"o de n"eg ndo PORTD.RD-= 0x00;// % aga el &'D enPORTD.RD- PORTD.RD6 = 0x ; // 'n$iende el&'D en PORTD.RD6 Dela *m"(,ime);// Re,!a"o de n"eg ndo

    PORTD.RD6= 0x00;// % aga el &'D enPORTD.RD6 PORTD.RD7 = 0x ; // 'n$iende el&'D en PORTD.RD7 Dela *m"(,ime);// Re,!a"o de n"eg ndo PORTD.RD7= 0x00;// % aga el &'D enPORTD.RD7 $on, ;

    PORTD = 0x00;

    Si(ulaci3n del )ercer circui)o reali ado en la $r;c)ica:

    RA0/AN02

    RA1/AN13

    RA2/AN2/VREF-/CVREF4

    RA4/T0CKI/C1OUT6

    RA5/AN4/SS/C2OUT7

    RE0/AN5/RD8

    RE1/AN6/WR9

    RE2/AN7/CS10

    OSC1/CLKIN13

    OSC2/CLKOUT14

    RC1/T1OSI/CCP2 16

    RC2/CCP1 17

    RC3/SCK/SCL 18

    RD0/PSP0 19

    RD1/PSP1 20

    RB7/PGD 40RB6/PGC 39

    RB5 38RB4 37

    RB3/PG 36RB2 35RB1 34

    RB0/INT 33

    RD7/PSP7 30RD6/PSP6 29RD5/PSP5 28RD4/PSP4 27RD3/PSP3 22RD2/PSP2 21

    RC7/R!/DT 26RC6/T!/CK 25

    RC5/SDO 24RC4/SDI/SDA 23

    RA3/AN3/VREF"5

    RC0/T1OSO/T1CKI 15

    CLR/V##/T$V1

    U2

    PIC16F877A

    1

    2

    !2CR&STALC3

    22#F

    R310'

    C4

    22#F

    12345678

    2019181716151413

    910

    1211

    U3

    LED-BARGRAP$-GRN

    Fig*ra / . Encendido de luces secuenciales (con rutinas diferentes)

  • 8/17/2019 PRACTICA1 Senales

    11/13

    C3di-o u)ili ado $ara el encendido de las luces secuenciales 4con ru)inas di

  • 8/17/2019 PRACTICA1 Senales

    12/13

    C3di-o reali ado $ara el encendido de las luces de los se(;

  • 8/17/2019 PRACTICA1 Senales

    13/13

    Compro ar que el c digo funciones correctamente2 con la a5uda de un simulador.+erificar que el microcontrolador se encuentre correctamente2 quemado2 con el c digo de

    programaci n.

    12 PREG+NTAS DE CONTROL

    18 >Cu;les son los $uer)os de en)rada & salida )iene el PIC1,F/00?"a5 en total puertos de los cuales

    9as entradas 5 salidas del Puerto A son configuradas usando el registro 4p.

    Al igual que todos los puertos el registro