PIc luces

Páginas: 5 (1009 palabras) Publicado: 8 de julio de 2013
Si les gusta la electrónica hay esta
LUCES TIPO AUTO FANTÁSTICO CON PIC16F84A
Siguiendo con las prácticas en Pic Basic Pro y utilizando el MicroCode Studio para nuestros Micro controladores PIC, en esta ocasión un circuito es muy fácil de realizar además con una gran armonía visual, su sombre es luces tipo auto fantástico ya que con unos sencillos componentes se puede tener distintos efectosvisualizados en los LEDs. A demás es una pequeña demostración de la gran cantidad de formas en las cuales podemos utilizar el ya conocido PIC16F84A.
En este caso tenemos en el puerto B del PIC conectamos LEDs con sus debidas resistencias de 330Ω, los cuales se encienden de distintas formas y cada sentencia o efecto es activado mediante pulsadores en arreglo pull-up conectados en el puerto A denuestro PIC16F84A. El circuito también cuenta con su botón de RESET conectado al pin designado paro ello en el PIC que en este caso es el pin número 4, también tiene un cristal de cuarzo de 4MHz y sus debidos capacitores de 22pF para establecer la frecuencia de trabajo del PIC. Todo el circuito se alimenta a 5 volts.
El circuito se muestra a continuación:
El código en Basic para este circuito es elsiguiente:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
AllDigital
TRISA = 1
TRISB = 0
digito var Byte
veces var Byte
 
inicio:
    If PORTA.0 = 1 Then
        For veces = 0 To 255
            For digito = 0 To 33                LookUp digito, [$00, $01, $03, $07, $0f, $1f, $3f, $7f, $ff, $fe, $fc, $f8, $f0, $e0, $c0, $80, $00, $80, $c0, $e0, $f0, $f8, $fc, $fe, $ff, $7f, $3f, $1f, $0f, $07, $03, $01, $00], PORTB
                pause 75
            Next digito
        Next veces
    Endif
 
    If PORTA.1 = 1 Then
        For veces = 0 To 255
            For digito = 0 To 8
                LookUp digito, [$00, $81, $42,$24, $18, $24, $42, $81], PORTB
                pause 75
            Next digito
        Next veces
    Endif
 
    If PORTA.2 = 1 Then
        For veces = 0 To 255
            For digito = 0 To 17
                LookUp digito, [$01, $03, $07, $0f, $1f, $3f, $7f, $ff, $80, $c0, $e0, $f0, $f8, $fc, $fe, $ff], PORTB
                pause 75
            Next digito
        Next veces    Endif
 
    If PORTA.3 = 1 Then
        For veces = 0 To 255
            For digito = 0 To 13
            LookUp digito, [$03, $06, $0c, $18, $30, $60, $c0, $60, $30, $18, $0c, $06, $03], PORTB
            pause 75
            Next digito
        Next veces
    Endif
 
    If PORTA.4 = 1 Then
        For veces = 0 To 255
            For digito = 0 To 71
                LookUp DIGITO,[$00, $01, $02, $04, $08, $10, $20, $40, $80, $03, $06, $0c, $18, $30, $60, $c0, $81, $03, $07, $0e, $1c, $38, $70, $e0, $c1, $83, $07, $0f, $1e, $3c, $78, $f0, $e1, $c3, $87, $0f, $1f, $3e, $7c, $f8, $f1, $e3, $c7, $8f, $1f, $3f, $7e, $fc, $f9, $f3, $e7, $cf, $9f, $3f, $7f, $fe, $fd, $fb, $f7, $ef, $df, $bf, $7f, $ff, $fe, $fc, $f8, $f0, $e0, $c0, $80], PORTB
                pause 75            Next digito
        Next veces
    Endif
 
PORTB = 0
Goto inicio
 Explicación del código:
Parte de lo que se tiene en el código ya se ha visto anteriormente así que eso doy por hecho que se tiene comprendido como lo son la inicialización de puertos, el uso de las variables, la instrucción GOTO, entre otros puedes revisar publicaciones anteriores para darse una mejor idea y poder comprender esteejemplo. Pero parte del código tiene instrucciones que hasta el momento no se habían utilizado como lo son el uso de las condicionales IF y FOR, además del uso del LOOKUP.
Al utilizar la condicional IF viene acompañado de la instrucción THEN y ENDIF. En este ejemplo se utiliza para revisar el estado de los pulsadores por ejemplo tenemos lo siguiente:
IF PORTA.0 = 1 THEN...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Luces Estrobosc Picas
  • Pica Pica
  • El pico
  • Pice
  • los picos
  • pico
  • pico
  • Pico

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS