Autor Tema: interesante (proyecto con pic y led)  (Leído 57706 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado sandra

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 374
Re: interesante (proyecto con pic y led)
« Respuesta #15 en: 28 de Julio de 2008, 13:13:55 »
Hola realmente la forma que te comento no tiene complicación  mas que hay que dedicarse un rato no es mas que una variable que suma de a 1 cada ves que presionas un botón.
Por lo que veo  toda vía no comprendes  lo que es una variable (me paso igual  me tarde en entender a las muy malditas.)
Es súper básico que comiences a manejar este concepto te  recomiendo que te leas un tutorial de programación genérica así es como yo a prendí.
Así como pones tu ejemplo tiene inconsistencias graves  la razón de porque tienes que pulsar muy rápido tiene que ver con ello.
Aquí unos tips
1 .Como es que  visualizas led encendido y led a pagado
High portb.0
Delayms  300
Low portb.0 ‘ esta rutina esta mal
2. no le indicas a tu rutina que hacer cuando sueltas el botón únicamente le dices que hacer
Cuando lo presionas.
3. por ningún lado miro que sierres tu  rutina así entre otros errores únicamente se ejecuta una ves deberías tener algo así

Main:    ‘lectura de puertos

If portb.0=1 then
Bla
Bla
Bla

Goto main ’ súper súper importante
 Así que  mi pequeña salta montes a estudiar  y recuerda la fuerza esta con tigo :P :P
 Y de experta nada mi mayor virtud es la terquedad  soy muy cabeza dura pero mi terquedad lo es mas :-/ :-/
 
 
El pesimista se queja del viento
El optimista espera que cambie
El realista ajusta las velas

Desconectado doppel

  • Moderador Local
  • PIC24H
  • *****
  • Mensajes: 1536
Re: interesante (proyecto con pic y led)
« Respuesta #16 en: 28 de Julio de 2008, 15:58:48 »
Hola Karina!!

te dejo un ejemplo de lo que tendrias que hacer con algunas variantes como ser que cada vez que se cumple la condicion el led enciende 5 veces con una frecuencia de 300ms como vos querias.-
Yo programo en Protón pero como veo que tu lo haces en PBP no tendrás mayores complicaciones por que solo hay detalles muy pequeñitos entre uno y otro compilador y mas allá de esto te servirá para ver el funcionamiento del programa y poder modificarlo o adecuarlo a lo que quieras.-
El programa va comentado si tienes dudas consulta  :-)
Código: FreeBasic
  1. '****************************************************************
  2. '*  Name    : 4 pulsadores y 1 led                              *
  3. '*  Date    : 28 de julio de 2008                               *
  4. '*  Notes   :  Doppel 2008 - ejemplo para todopic               *
  5. '*          :  www.todopic.net                                  *
  6. '****************************************************************
  7. Device 16F84A          'pic a usar
  8. XTAL 4                  'frecuencia del cristal que usaremos
  9.  
  10.  '**********************definicion de variables*******************
  11. Dim x As Byte  'variable del for
  12. Dim a As Byte  'variables de los contadores
  13. Dim b As Byte
  14. Dim c As Byte
  15. Dim buffer_boton As Byte  ' buffer usado por el boton
  16. Dim buffer_boton1 As Byte  ' buffer usado por el boton1
  17. Dim buffer_boton2 As Byte   ' buffer usado por el boton2
  18. Dim buffer_boton3 As Byte   ' buffer usado por el boton3
  19.  
  20. '************** defino alias a los diferentes puertos/pines***************
  21. Symbol boton = PORTB.0     'defino boton en el puerto PORTB.0
  22. Symbol boton1 = PORTB.1
  23. Symbol boton2 = PORTB.2       'le pongo alias a los puertos desde B0 hasta B3
  24. Symbol boton3 = PORTB.3
  25.  
  26. Symbol led = PORTB.7      'defino LED en el puerto PORTB.7
  27.  
  28. '**********************definicion de puertos************************
  29. TRISB = %00001111         'defino entrada de botones y todas salidas
  30. PORTB = 0                 ' pongo el puerto a "0"
  31.  
  32. '*********************pongo las variables a "0"**********************
  33. x=0        'inicio todas las variables en "0"
  34. a=0
  35. b=0
  36. c=0
  37. '*************************comienzo del programa********************
  38. inicio:
  39.         DelayMS 10
  40.         Button  boton,0,40,5,buffer_boton,1,titilar   ' si se presiona boton salta a titilar
  41.         Button  boton1,0,40,5,buffer_boton1,1,dos   ' si se presiona boton salta a "dos"
  42.         Button  boton2,0,40,5,buffer_boton2,1,tres   ' si se presiona boton salta a "tres"
  43.         Button  boton3,0,40,5,buffer_boton3,1,cuatro  ' si se presiona boton salta a "cuatro"
  44.         GoTo inicio                                      
  45.        
  46. dos:
  47.       If a=1 Then       'es a = 1 si es verdad me voy a titilar
  48.         GoTo titilar
  49.         Else a=a+1     'sino sumo 1 y vuelvo a inicio esperando que presionen un boton
  50.        EndIf            
  51.     GoTo inicio
  52. tres:
  53.       If b=2 Then
  54.         GoTo titilar
  55.         Else b=b+1
  56.       EndIf            
  57.     GoTo inicio
  58. cuatro:          
  59.         If c=3 Then
  60.           GoTo titilar
  61.           Else c=c+1
  62.         EndIf                
  63.       GoTo  inicio          
  64.  
  65. titilar:
  66.       For x=1 To 5          'enciendo 5 veces el led a 300ms
  67.             High led
  68.             DelayMS 300
  69.             Low led
  70.             DelayMS 300
  71.       Next
  72.          a=0         ' reseteo las variables esperando la proxima pulsacion
  73.          b=0
  74.          c=0
  75.       GoTo inicio   'vuelvo a inicio
  76.                    
  77. End      'fin del programa

te adjunto una imagen del circuito de pruebas en proteus

la mayor diferencia es que uso la instruccion BUTTON que es propia de proton y es muy práctica ya que te elimina los rebotes y ademas tiene otras propiedades esto lo puedes sustituir por un simple IF e ir preguntando cuantas veces fue presionado.-
Espero que el ejemplo sea de utilidad

saludos

Hernán
« Última modificación: 28 de Julio de 2008, 18:33:30 por doppel »
" Para ser exitoso no tienes que hacer cosas extraordinarias. Haz cosas ordinarias, extraordinariamente bien "

Desconectado sandra

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 374
Re: interesante (proyecto con pic y led)
« Respuesta #17 en: 28 de Julio de 2008, 16:36:05 »
Exactamente la ida era esa esta es la manera correcta de desarrollar el problema estúdialo muy bien.
Te bas a enredar un poco  al seguir el hilo del programa,  te recomiendo que imprimas el magnifico ejemplo que te han puesto   y con un   marcador sigue el flujo del programa y en cada instrucción pregúntate porque de este punto salta a tal punto porque regresa  aquí tienes un  muy buen ejemplo dedícale tiempo y cuando lo entiendas ya tendrás buenas bases para que entiendas otros. con este ejemplo vas a entender
Que son las  variables
Que son las subrutinas
Que es un bucle
Y sobre todo como se estructura un algoritmo
A  se me olvidaba la instrucción button también la encuentras en el pbp

El pesimista se queja del viento
El optimista espera que cambie
El realista ajusta las velas

Desconectado KARINA83

  • PIC12
  • **
  • Mensajes: 50
Re: interesante (proyecto con pic y led)
« Respuesta #18 en: 28 de Julio de 2008, 23:05:34 »
mira que son unos barbaros el ejemplo? (no eso no es ejemplo es un PROYECTO TERMINADO) funciona a la perfeccion ya le puse los otros RB hasta 8 pulsaciones y oki doki, perfecto,excelente,preciso,magnifico etc etc.
estoy estudiando el ejemplo? y hasta el momento solo quiero saber que dice en esta linea?
Button  boton1,0,40,5,buffer_boton1,1,dos
button=insruccion
boton=portb.0
0=?
40=?
5=?
buffer_boton1=variable
1=?
dos= va a runina? dos?
si me despejan esas dudas se los agradecere toda la vida
sandrita y doppel diganme donde viven  para hir a hacerles sus labores domesticas por puro agradecimiento jajajajajajaja
voy a seguir estudiandolo y si tengo mas dudas( ni modo ya me adoptaron como su pequeña saltamontes) se las platico.
abrazos y besos :-/ :-/ :g)
Las mujeres podemos cambiar al mundo.

Desconectado firepic

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1130
    • JC Servicios
Re: interesante (proyecto con pic y led)
« Respuesta #19 en: 28 de Julio de 2008, 23:34:04 »
Qué tal Karina!
Esto que dice el manual del PBP te puede ayudar:



De manera que los elementos son:
0:   El estado lógico del pin cuando el botón es presionado.
40: El delay (evita los rebotes).
5:   Tasa de repetición.
buffer_buton1: La variable que usa la instrucción para la cuenta de cuántas veces ha sido presionado. Debes ponerla a 0 antes de la instrucción y no usarla en el resto del programa.
1:   La variable incrementará cuando el botón esté accionado o presionado.
dos: La rutina a la que saltará si se cumple el button.

Espero que esto te ayude. Cualquier duda ya sabes donde decirla  :lol:
Saludos a todos, nos leemos!  :mrgreen:
"Por la presunción solo se ocasiona una lucha, pero con los que consultan juntos hay sabiduría" (Proverbios 13:10).
Visita Mi Sitio Web

Desconectado sandra

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 374
Re: interesante (proyecto con pic y led)
« Respuesta #20 en: 29 de Julio de 2008, 13:58:40 »
Así es mi pequeña saltamontes hay que leer el manual del pbp  en  la red hay un manual traducido al español  ya sabes san google.
No se si dentro de tus materias estudies programación pero si no es así antes de leer el manual del pbp como ya te dique es mejor que comiences con un tutorial de programación genérica aunque al Pb. le puedes entrar directamente es mejor hacerlo con bases.

Dale a un hombre un pescado y comerá una ves, enseña a un hombre a pescar y comerá toda la vida
El pesimista se queja del viento
El optimista espera que cambie
El realista ajusta las velas

Desconectado firepic

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1130
    • JC Servicios
Re: interesante (proyecto con pic y led)
« Respuesta #21 en: 29 de Julio de 2008, 16:25:00 »
Dale a un hombre un pescado y comerá una ves, enseña a un hombre a pescar y comerá toda la vida
Venga sandra, ese proverbio chino me encanta!  :-/  Parece simple pero encierra una gran verdad y mucha sabiduría!!  :P
Ojalá más personas entendieran el significado que encierra ese proverbio  :(
Saludos, nos leemos!  :mrgreen:
"Por la presunción solo se ocasiona una lucha, pero con los que consultan juntos hay sabiduría" (Proverbios 13:10).
Visita Mi Sitio Web

Desconectado sandra

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 374
Re: interesante (proyecto con pic y led)
« Respuesta #22 en: 29 de Julio de 2008, 16:58:35 »
Si de repente me pongo mística  :-/ :-/  om  ommmmm  ommmm  :mrgreen:
Pero así es  si  mi paisana esta dispuesta a aprender yo estoy dispuesta a enseñar pero no regalo nada por que en  ves de hacerle un bien le ago un daño 8)

llega un momento en que un maestro elige un discípulo para transferir sus conocimientos y a través del discípulo continuara viviendo el maestro  :D :D :D de que peli es no me acuerdo :P :P
El pesimista se queja del viento
El optimista espera que cambie
El realista ajusta las velas

Desconectado firepic

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1130
    • JC Servicios
Re: interesante (proyecto con pic y led)
« Respuesta #23 en: 29 de Julio de 2008, 17:29:55 »
Si de repente me pongo mística  :-/ :-/  om  ommmmm  ommmm  :mrgreen:
:D  :D  :D

Bueno pues buena decisión esa que has tomado Sandrita, de transmitir conocimientos y no regalar nada.
Pues los maestros del foro como que también vieron esa película, porque están quedando inmortalizados de tanto que nos enseñan!  :-/
Es excelente en verdad.

Y pues yo creo que sí, tu paisana tiene muchas ganas de aprender! Así que ya tienes a tu discípula  :lol:
Saludos, nos leemos!  :mrgreen:
"Por la presunción solo se ocasiona una lucha, pero con los que consultan juntos hay sabiduría" (Proverbios 13:10).
Visita Mi Sitio Web

Desconectado KARINA83

  • PIC12
  • **
  • Mensajes: 50
Re: interesante (proyecto con pic y led)
« Respuesta #24 en: 30 de Julio de 2008, 14:28:15 »
buenos dias a todas y todos ustedes(aaaay como que me acorde de alguien de guanajuato "chiquillas y chiquillos"jajajajaja)
Sandrita,doppel,firepic son unos malvados anoche tuve pesadillas  con los buttons,if__then,var y has un pic16f628 me queria tragar pero gracias muchisisisisimas gracias no saben el montos de cosas que he aprendido en estos dias gracias a mis shen shei .
bueno pasando a otra cosa (por que ya se me quieren salir mis lagrimitas).
por lo que he visto quiere decir que el cidigo de juanchiripiorcas esta mal hecho?
veanlo:


'****************************************************************
'*  Name    : destellos.BAS                                                       *
'*  Author  : [set under view...options]                                *
'*  Notice  : Copyright (c) 2008 [set under view...options]     *
'*          : All Rights Reserved                               *
'*  Date    : 20/07/2008                                        *
'*  Version : 1.0                                               *
'*  Notes   :                                                   *
'*          :                                                   *
'****************************************************************


                     ;E=ENTRADA     S=SALIDA
TRISB = %00011111   ;COFIGURO EL PORTB RB0=E,RB1=E,RB2=E,RB3=E,RB4=E,RB5=S,RB6=S,RB7=S

         ;enciende un vez
        if PORTB.0 = 1 then     ;AQUI ACTIVO A RB0 CON ALTO
        High 5                   ;PONE ALTO RB5 (ENCIENDE LED)
        pause 300                ;DURANTE 300MS
        low 5                    ;PONE BAJO A RB5(APAGA LED)
        pause 300                ;DURANTE 300MS
        ENDIF

      ;enciende 2 veces
        if PORTB.1 = 1 then     ;AQUI ACTIVO A RB1 CON ALTO
        High 5                   ;PONE ALTO RB5 (ENCIENDE LED)
        pause 300                ;DURANTE 300MS
        low 5                    ;PONE BAJO A RB5(APAGA LED)
        pause 300                ;DURANTE 300MS
        High 5                   ;PONE ALTO RB5 (ENCIENDE LED)
        pause 300                ;DURANTE 300MS
        low 5                    ;PONE BAJO A RB5(APAGA LED)
        pause 300                ;DURANTE 300MS
        ENDIF

       ;encinde 3 veces
        if PORTB.2 = 1 then     ;AQUI ACTIVO A RB2 CON ALTO
        High 5                   ;PONE ALTO RB5 (ENCIENDE LED)
        pause 300                ;DURANTE 300MS
        low 5                    ;PONE BAJO A RB5(APAGA LED)
        pause 300                ;DURANTE 300MS
        High 5                   ;PONE ALTO RB5 (ENCIENDE LED)
        pause 300                ;DURANTE 300MS
        low 5                    ;PONE BAJO A RB5(APAGA LED)
        pause 300                ;DURANTE 300MS
        High 5                   ;PONE ALTO RB5 (ENCIENDE LED)
        pause 300                ;DURANTE 300MS
        low 5                    ;PONE BAJO A RB5(APAGA LED)
        pause 300                ;DURANTE 300MS
        ENDIF

        ;enciende 4 veces   
        if PORTB.3 = 1 then     ;AQUI ACTIVO A RB3 CON ALTO
        High 5                   ;PONE ALTO RB5 (ENCIENDE LED)
        pause 300                ;DURANTE 300MS
        low 5                    ;PONE BAJO A RB5(APAGA LED)
        pause 300                ;DURANTE 300MS
        High 5                   ;PONE ALTO RB5 (ENCIENDE LED)
        pause 300                ;DURANTE 300MS
        low 5                    ;PONE BAJO A RB5(APAGA LED)
        pause 300                ;DURANTE 300MS
        High 5                   ;PONE ALTO RB5 (ENCIENDE LED)
        pause 300                ;DURANTE 300MS
        low 5                    ;PONE BAJO A RB5(APAGA LED)
        pause 300                ;DURANTE 300MS
        High 5                   ;PONE ALTO RB5 (ENCIENDE LED)
        pause 300                ;DURANTE 300MS
        low 5                    ;PONE BAJO A RB5(APAGA LED)
        pause 300                ;DURANTE 300MS
        ENDIF

    ;enciende 5 veces   
        if PORTB.4 = 1 then     ;AQUI ACTIVO A RB4 CON ALTO
        High 5                   ;PONE ALTO RB5 (ENCIENDE LED)
        pause 300                ;DURANTE 300MS
        low 5                    ;PONE BAJO A RB5(APAGA LED)
        pause 300                ;DURANTE 300MS
        High 5                   ;PONE ALTO RB5 (ENCIENDE LED)
        pause 300                ;DURANTE 300MS
        low 5                    ;PONE BAJO A RB5(APAGA LED)
        pause 300                ;DURANTE 300MS
        High 5                   ;PONE ALTO RB5 (ENCIENDE LED)
        pause 300                ;DURANTE 300MS
        low 5                    ;PONE BAJO A RB5(APAGA LED)
        pause 300                ;DURANTE 300MS
        High 5                   ;PONE ALTO RB5 (ENCIENDE LED)
        pause 300                ;DURANTE 300MS
        low 5                    ;PONE BAJO A RB5(APAGA LED)
        pause 300                ;DURANTE 300MS
        High 5                   ;PONE ALTO RB5 (ENCIENDE LED)
        pause 300                ;DURANTE 300MS
        low 5                    ;PONE BAJO A RB5(APAGA LED)
        pause 300                ;DURANTE 300MS
        ENDIF






a continuacion le pongo el que yo modifique de doppel  y de adecua a este
Las mujeres podemos cambiar al mundo.

Desconectado KARINA83

  • PIC12
  • **
  • Mensajes: 50
Re: interesante (proyecto con pic y led)
« Respuesta #25 en: 30 de Julio de 2008, 14:38:00 »
amigo doppel espero no te enoje  la modificacion a tu codigo y espero me corrijan lo que este mal.




'****************************************************************
'*  Name    : destellador.BAS                                      *
'*  Author  : Doppel 2008 - ejemplo para todopic                    *
'*  Notice  : Doppel 2008 - ejemplo para todopic *
'*          : www.todopic.net                               *
'*  Date    : 30/07/2008                                        *
'*  Version : 1.0                                               *
'*  Notes   :   modificado karina83                                                *
'*          :                                                   *
'****************************************************************
'**********************definicion de variables*******************
 x var Byte  'variable del for
 a var Byte  'variables de los contadores
 
 
buffer_boton var Byte  ' buffer usado por el boton
buffer_boton1 var Byte  ' buffer usado por el boton1
buffer_boton2 var Byte   ' buffer usado por el boton2
buffer_boton3 var Byte   ' buffer usado por el boton3
buffer_boton4 var Byte   ' buffer usado por el boton4
buffer_boton5 var Byte   ' buffer usado por el boton5
buffer_boton6 var Byte   ' buffer usado por el boton6

 
'************** defino alias a los diferentes puertos/pines***************
Symbol boton = PORTB.0     'defino boton en el puerto PORTB.0
Symbol boton1 = PORTB.1
Symbol boton2 = PORTB.2       'le pongo alias a los puertos desde B0 hasta B3
Symbol boton3 = PORTB.3
Symbol boton4 = PORTB.4
Symbol boton5 = PORTB.5
Symbol boton6 = PORTB.6

 
Symbol led = PORTB.7      'defino LED en el puerto PORTB.7
 
'**********************definicion de puertos************************
TRISB = %01111111         'defino entrada de botones y todas salidas
PORTB = 0                 ' pongo el puerto a "0"
 
'*********************pongo las variables a "0"**********************
x=0        'inicio todas las variables en "0"
a=0


'*************************comienzo del programa********************
inicio:
       pause 10
     
       Button  boton,0,40,5,buffer_boton,1,uno   ' si se presiona boton salta a titilar
       Button  boton1,0,40,5,buffer_boton1,1,dos   ' si se presiona boton salta a "dos"
       Button  boton2,0,40,5,buffer_boton2,1,tres   ' si se presiona boton salta a "tres"
       Button  boton3,0,40,5,buffer_boton3,1,cuatro  ' si se presiona boton salta a "cuatro"
       Button  boton4,0,40,5,buffer_boton4,1,cinco  ' si se presiona boton salta a "cinco"
       Button  boton5,0,40,5,buffer_boton5,1,seis  ' si se presiona boton salta a "seis"
       Button  boton6,0,40,5,buffer_boton6,1,siete  ' si se presiona boton salta a "siete"
       GoTo inicio
       
       
uno:
     For x=1 To 1          'enciendo 1 veces el led a 300ms
           High led
           pause 500
           Low led
           pause 300
     Next
        a=0         ' reseteo las variables esperando la proxima pulsacion
        GoTo inicio   'vuelvo a inicio     
dos:
     For x=1 To 2          'enciendo 2 veces el led a 300ms
           High led
           pause 500
           Low led
           pause 300
     Next
        a=0         ' reseteo las variables esperando la proxima pulsacion
        GoTo inicio   'vuelvo a inicio         
       
tres:
     For x=1 To 3          'enciendo 3 veces el led a 300ms
           High led
           pause 500
           Low led
           pause 300
     Next
        a=0         ' reseteo las variables esperando la proxima pulsacion
        GoTo inicio   'vuelvo a inicio       
cuatro:
     For x=1 To 4          'enciendo 4 veces el led a 300ms
           High led
           pause 500
           Low led
           pause 300
     Next
        a=0         ' reseteo las variables esperando la proxima pulsacion
        GoTo inicio   'vuelvo a inicio       
cinco:
     For x=1 To 5          'enciendo 5 veces el led a 300ms
           High led
           pause 500
           Low led
           pause 300
     Next
        a=0         ' reseteo las variables esperando la proxima pulsacion
        GoTo inicio   'vuelvo a inicio       
seis:
     For x=1 To 6          'enciendo 6 veces el led a 300ms
           High led
           pause 500
           Low led
           pause 300
     Next
        a=0         ' reseteo las variables esperando la proxima pulsacion
        GoTo inicio   'vuelvo a inicio       
siete:
     For x=1 To 7          'enciendo 7 veces el led a 300ms
           High led
           pause 500
           Low led
           pause 300
     Next
        a=0         ' reseteo las variables esperando la proxima pulsacion
        GoTo inicio   'vuelvo a inicio       
 end



espero  aprovacion o desaprovacion de mis shen shei s.
abrazos y besos  :g)   
Las mujeres podemos cambiar al mundo.

Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: interesante (proyecto con pic y led)
« Respuesta #26 en: 30 de Julio de 2008, 18:04:51 »
Perdon la intrusion ahora solo depuralo quita el uso de LOw y HIGH por 1 y 0 declarando el puerto como salida
"Mi tercer deseo, que otra cosa podría ser, poner un final a todo el sufrimiento, que sólo con mi propia extinción el planeta podrá ser aliviado. Pobre de mí, Si tuviera tres deseos hoy, la elección no sería dificil para mí, Sólo tres deseos serían suficientes, No tendría uso para más."

"He sido un hombre que busca y aun lo sigo siendo, pero ya no busco en las estrellas y en los libros, sino en las enseñanzas de mi sangre."

Desconectado firepic

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1130
    • JC Servicios
Re: interesante (proyecto con pic y led)
« Respuesta #27 en: 31 de Julio de 2008, 11:04:19 »
Te ha quedado fino karina, felicitaciones!  :-/
Lo único que yo le arreglaría serían los for... hay muchos que hacen lo mismo, la única diferencia es el número de repeticiones.
Entonces yo declararía una variable que defina el número de repeticiones, y en las etiquetas uno, dos, tres, cuatro, etc... darle el valor correspondiente. Luego el for quedaría así:
Código: FreeBasic
  1. nVeces Var BYTE                 'esto lo declaras al inicio
  2. '
  3. '
  4. '
  5.      For x=1 To nVeces          'enciendo n veces el led a 300ms
  6.            High led
  7.            pause 300
  8.            Low led
  9.            pause 300
  10.      Next

De esa forma optimizas un poco más el código, aparte de lo que te mencionó Navaismo. Si no me he explicado bien avisas y trato de colocar el ejemplo de forma más clara.
Ok Kari, sigue adelante, te deseo mucho éxito en tu aprendizaje!  :lol:
Saludos, nos leemos!  :mrgreen:
"Por la presunción solo se ocasiona una lucha, pero con los que consultan juntos hay sabiduría" (Proverbios 13:10).
Visita Mi Sitio Web

Desconectado sandra

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 374
Re: interesante (proyecto con pic y led)
« Respuesta #28 en: 31 de Julio de 2008, 17:46:30 »
Así es mi pequeña flor de  loto :mrgreen:,  poco  a poco iras tomando el detalle fino que es  optimizar código es ilógico y consume mucha memoria el repetir n veces una tarea, si el micro a de hacer muchos veces determinada líneas de código lo que procede es crear una subrutina (gosub) que llamaremos las n veces que sea necesario además que es mas fácil hacer cambios, haber que pasa si te pido que cambies el delay a 1000  tendrás que cambiar 7 veces  el maldito delay  y que tal si en lugar de 7 fueran 100 asta con copi and paste estaría cansado no,en cambio si lo tratas como sub rutina solo cambias una ves.
También como ya te mencionaron es momento de ir cogiendo buenos modales de programación a parte de que en algunos casos también optimizas código   cambia el
High por  portb.0=1, low por  portb.0=0   claro setiando correctamente como entrada o salida el registro tris esto tiene su razón de ser por que al utilizar el high y el low obligas al compilador an que cada ves que se encuentra con estas instrucciones genere código para asegurarse que el tris corresponde con la instrucción que va a ejecutar.
Te reto a que  remplaces la instrucción button  por  if then  independiente mente de que si  optimizas o no te quedara mas claro que estas asiendo.
En la medida de lo posible reduce al máximo la instrucción goto   en esto de la programación no es bien vista, independiente mente de que existe un gran debate en el uso del mismo, las niñas bien no usamos muchos goto, es una mala palabra. :P
Y pues si no quiero a adelantar las golondrinas pero existe la posibilidad de que deje de estar entre ustedes :? :? :( así que  en lo posible intentare ayudar en lo que pueda  para retribuir de alguna manera todo lo que me andado. haaaaa me invade la nostalgia al recordar la primera ves que entre por aquí buscaba de forma desesperada algún otro modo de programar que no fuera asm por que nunca le entendí ni p… m……
El pesimista se queja del viento
El optimista espera que cambie
El realista ajusta las velas

Desconectado KARINA83

  • PIC12
  • **
  • Mensajes: 50
Re: interesante (proyecto con pic y led)
« Respuesta #29 en: 31 de Julio de 2008, 20:35:00 »
nooooooooooooo mi madrina no me puede abandonar noooooooo



Y pues si no quiero a adelantar las golondrinas pero existe la posibilidad de que deje de estar entre ustedes :? :? :( así que  en lo posible intentare ayudar en lo que pueda  para retribuir de alguna manera todo lo que me andado. haaaaa me invade la nostalgia al recordar la primera ves que entre por aquí buscaba de forma desesperada algún otro modo de programar que no fuera asm por que nunca le entendí ni p… m……

Las mujeres podemos cambiar al mundo.


 

anything