Autor Tema: Contar 10 pulsos y encender led  (Leído 23066 veces)

0 Usuarios y 2 Visitantes están viendo este tema.

Desconectado morfeus

  • PIC12
  • **
  • Mensajes: 78
RE: Contar 10 pulsos y encender led
« Respuesta #60 en: 28 de Septiembre de 2005, 21:39:00 »
Hola,

Intente esto y nada


if borra=0 then

lcdout $FE,$C0,dec3 cont
lcdout $FE,$C4,dec3 cont1
lcdout $FE,$C8,dec3 cont2
lcdout $FE,$CC,dec3 Cont4

GOSUB grabar
     
       endif

pero no actualiza el lcd.

morfeus

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
RE: Contar 10 pulsos y encender led
« Respuesta #61 en: 28 de Septiembre de 2005, 21:47:00 »
Hola:

Claro que no pasa nada porque los valores que tienes que encerar son las variables cont, pon ese codigo en la subrrutina grabar

grabar:
"enceramos todos los contadores
    cont=0:cont1=0:cont2=0:Cont4=0
"PON AQUI EL CODIGO ANTERIOR, NOTA QUE EN ESTA LINEA TODOS
"LOS CONTADORES TOMAN EL VALOR DE 0
    write 0,1
    write 1,0
    write 2,0
    write 3,0
    write 4,0
    goto loop

Con esto deberia bastar....!

suerte...!

Desconectado morfeus

  • PIC12
  • **
  • Mensajes: 78
RE: Contar 10 pulsos y encender led
« Respuesta #62 en: 29 de Septiembre de 2005, 09:33:00 »
Hola Lord,

Pues te comento que si funcionò de la manera como me dijiste lo del borrado de la eeprom es que no queria tener que resetear el circuito y por eso te pedi el favor de guiarme con otra idea.

De esta manera puedo decir que el proyecto en mente que tenìa hace unos dìas hoy se ve realizado y finalmente comprobado gracias a tu valiosa colaboraciòn, perdona si fui muy insistente en algun momento con preguntas y cosas parecidas pero cuando uno siente esa necesidad tan grande de aprender puede que en ocasiones se abuse un poco de la buena voluntad de la otra persona.

Tu tienes mucha "madera" para enseñar y eso es una gran virtud que no todas las personas poseen cultivala y aprende mas cada dia, de mi parte hare todo lo posible por aprender mas y mas sobre este que lenguaje que me fascina.

De pronto puedo escribirte para hacerte alguna pregunta sobre algo en especial?, mi correo es lsolano@geo.net.co por si alguna vez decides escribirme.

De mi parte un gran abrazo y suerte en tus proyectos futuros amigo.

morfeus

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
RE: Contar 10 pulsos y encender led
« Respuesta #63 en: 29 de Septiembre de 2005, 09:45:00 »
Hola:

¡¡¡FELICIDADES!!!

Pues lo poco que se de esto lo he aprendido aqui, y leyendo uno que otro libro, y claro que me puedes escribir sin ningun problema o si quieres puedes contactarme en el messenger de msn o yahoo a g_lafebre@yahoo.com...

Saludos:

Giovanni Lafebre.

Desconectado morfeus

  • PIC12
  • **
  • Mensajes: 78
RE: Contar 10 pulsos y encender led
« Respuesta #64 en: 29 de Septiembre de 2005, 21:58:00 »
Hola a todos,

Hasta la fecha hemos realizado con Lord un contador de 4 entradas y 4 salidas con posibilidad de grabar el ultimo conteo en la eeprom, pero siendo mas futuristas y con el animo de recibir aportes queremos ampliar las funciones de este contador de la siguiente manera.

Utilizamos una LCD un 16F877 y un teclado matricial, la idea es poder grabar en la  memoria del pic mediante el LCD (visualizarlo) el numero de pulsos que queremos contar y por consiguiente activar cada salida cuando este llegue al final, para esto utilizamos el teclado matricial.

Esperamos que sea del agrado de todos y por supuesto aportes seran bienvenidos.

saludos

mosfeus

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
RE: Contar 10 pulsos y encender led
« Respuesta #65 en: 29 de Septiembre de 2005, 22:20:00 »
Holas:

Asi es, el dia de mañana pienso subir el esquema para que los que esten interesados puedan seguirlo, y como siempre culaquier sujerencia o comentario sera bienvenido...! Sonrisa Gigante

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
RE: Contar 10 pulsos y encender led
« Respuesta #66 en: 30 de Septiembre de 2005, 12:13:00 »
Holas:

Aqui pongo el circuito que vamos a utilizar....!

En la noche o mañana pongo unos pequeños ejemplos para confirmar que todo funciona perfectamente....!


Desconectado morfeus

  • PIC12
  • **
  • Mensajes: 78
RE: Contar 10 pulsos y encender led
« Respuesta #67 en: 30 de Septiembre de 2005, 12:59:00 »
Hola Lord,

Perfecto me parece muy bien.


saludos

morfeus

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
RE: Contar 10 pulsos y encender led
« Respuesta #68 en: 02 de Octubre de 2005, 23:54:00 »
Hola:

Aqui esta una perqueña rutina para el LCD:

Codigo:
"rutina para el LCD

"-----CONFIGURACION DEL LCD
DEFINE LCD_DREG PORTB
DEFINE LCD_DBIT 0
DEFINE LCD_RSREG PORTB
DEFINE LCD_RSBIT 5
DEFINE LCD_EREG PORTB
DEFINE LCD_EBIT 4

"-------OSCILADOR-----------
Define OSC 4

Loop:
    lcdout $FE,1,"  LCD FUNCIONA"
    lcdout $FE,$C0,"    MUY BIEN"
    pause 300
    goto loop
end



Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
RE: Contar 10 pulsos y encender led
« Respuesta #69 en: 03 de Octubre de 2005, 01:01:00 »
Hola:

Este pequeño codigo para probar pulsantes y leds....!

Codigo:
"rutina para probar los leds y pulsantes

"-----CONFIGURACION DEL LCD
DEFINE LCD_DREG PORTB
DEFINE LCD_DBIT 0
DEFINE LCD_RSREG PORTB
DEFINE LCD_RSBIT 5
DEFINE LCD_EREG PORTB
DEFINE LCD_EBIT 4

i   var byte

"-------OSCILADOR-----------
Define OSC 4

TRISC=%00001111

Inicio:
    lcdout $FE,1," Probando LEDS"
    for i=0 to 5
        PORTC=%11110000
        pause 150
        PORTC=%00000000
        pause 150
    next i
    lcdout $FE,1,"    LEDS OK"
    pause 1000
    gosub mensaje
loop
    if PORTC.0=0 then
        lcdout $FE,1,"  Pulsante  RC0"
        High PORTC.7
        pause 500
        low PORTC.7
        gosub mensaje
    endif
    if PORTC.1=0 then
        lcdout $FE,1,"  Pulsante  RC1"
        High PORTC.6
        pause 500
        low PORTC.6
        gosub mensaje
    endif
    if PORTC.2=0 then
        lcdout $FE,1,"  Pulsante  RC2"
        High PORTC.5
        pause 500
        low PORTC.5
        gosub mensaje
    endif
    if PORTC.3=0 then
        lcdout $FE,1,"  Pulsante  RC3"
        High PORTC.4
        pause 500
        low PORTC.4
        gosub mensaje
    endif
    goto loop
    end

mensaje:
    lcdout $FE,1,"Probar Pulsantes"
    lcdout $FE,$C0,"  Pulsa Alguno"
    return

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
RE: Contar 10 pulsos y encender led
« Respuesta #70 en: 03 de Octubre de 2005, 01:07:00 »
Hola:

Esta rutina para el teclado lo he tomado de un libro muy bueno...!

Codigo:
DEFINE LCD_DREG PORTB
DEFINE LCD_DBIT 0
DEFINE LCD_RSREG PORTB
DEFINE LCD_RSBIT 5
DEFINE LCD_EREG PORTB
DEFINE LCD_EBIT 4

A VAR PORTD.0       ;nombres para los pines de las filas
B VAR PORTD.1
C VAR PORTD.2
D VAR PORTD.3

UNO VAR PORTD.4    ;nombres para los pines de las columnas
DOS VAR PORTD.5
TRES VAR PORTD.6
CUATRO VAR PORTD.7

Lcdout $FE,1,"Probando Teclado"
 
BARRIDO:    
        LOW A                      
    IF UNO    = 0 THEN lcdout $FE,$C0," 7"  
    IF DOS    = 0 THEN lcdout $FE,$C0," 8"    
    IF TRES   = 0 THEN lcdout $FE,$C0," 9"
    IF CUATRO = 0 THEN lcdout $FE,$C0,"10"
        HIGH A                      
        LOW B                      
    IF UNO    = 0 THEN lcdout $FE,$C0," 4"    
    IF DOS    = 0 THEN lcdout $FE,$C0," 5"
    IF TRES   = 0 THEN lcdout $FE,$C0," 6"
    IF CUATRO = 0 THEN lcdout $FE,$C0,"11"
        HIGH B                      
        LOW C                      
    IF UNO    = 0 THEN lcdout $FE,$C0," 1"
    IF DOS    = 0 THEN lcdout $FE,$C0," 2"
    IF TRES   = 0 THEN lcdout $FE,$C0," 3"
    IF CUATRO = 0 THEN lcdout $FE,$C0,"12"
        HIGH C                      
        LOW D                      
    IF UNO    = 0 THEN lcdout $FE,$C0,"14"
    IF DOS    = 0 THEN lcdout $FE,$C0," 0"  
    IF TRES   = 0 THEN lcdout $FE,$C0,"15"
    IF CUATRO = 0 THEN lcdout $FE,$C0,"13"
        HIGH D                      
    pause 10                      
    GOTO BARRIDO                
END


Si hasta aqui no hemos tenido problemas estamos listos para continuar...!

PD: Pueden cambiar si no coinciden las posiciones de las teclas, solo tienen que ver cuando se este ejecutando el programa que tecla presionan y que valor se ve en el LCD.

Desconectado morfeus

  • PIC12
  • **
  • Mensajes: 78
RE: Contar 10 pulsos y encender led
« Respuesta #71 en: 03 de Octubre de 2005, 06:41:00 »
Hola Lord,

Que bueno, ya con esto estamos practicamente listos. Podemos ir comenzando mientras algunos de los integrantes del foro se animan a participar.

saludos

morfeus

Desconectado morfeus

  • PIC12
  • **
  • Mensajes: 78
RE: Contar 10 pulsos y encender led
« Respuesta #72 en: 05 de Octubre de 2005, 12:03:00 »
Para los que hasta ahora leen este post les explico el funcionamiento del proyecto que iniciamos con Lord.

Inicialmente queriamos contar (y visualizar en el LCD) una determinada cantidad de pulsos desde cada pulsador ubicados en RC0, RC1, RC2 y RC3 y que cuando estos pulsos fueran contados a su final se encendiera de forma independiente RC4, RC5, RC6 y RC7. Si quieren ver mas detalles pueden ver toda la información desde su comienzo en el post.

Finalizamos dicho proyecto pero pensando en hacerlo mas vistoso decidimos adicionarle un teclado y la propuesta es la siguiente:

Mediante el teclado poder modificar el valor de conteo y visualizar este dato en el LCD y poder confirmar el numero de pulsos y enviarlo a la eeprom.

Esto es con el fin de no tener que reprogramar el pic cada vez que necesitemos cambiar el numero de pulsos a contar.

Se debe tener en cuenta que se debe modificar la cantidad de pulsos a contar y grabarlos en la eeprom pero tambien este dato se debe enviar a la variable Cont por ejemplo para que esta sepa hasta cuanto debe contar.

He realizado estas pruebas de grabar y enviar a la variable Cont (sin utilizar el lcd) ni el teclado y no he tenido muy buenos resultados, el codigo lo pondre en el proximo post para ver si logro algo mejor.

Cualquier sugerencia o aporte al respecto sera bienvenido, agradezco a Lord por la ayuda que me ha brindado.

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
RE: Contar 10 pulsos y encender led
« Respuesta #73 en: 05 de Octubre de 2005, 12:11:00 »
Hola:

Pues lamentablemente como todo tiene sun fin sucedio eso con mis vacaciones y regrese a trabajar y los primeros dias estoy un poco liado... pero para mañana a mas tardar tendre algo de codigo para probar con el teclado ingresar el numero hasta donde se quiera contar y guardarlo en la eeprom, es un poco dificil ahora, ya que como digo regrese a trabajar y los primeros dias son matadores... Sonrisa Gigante

Desconectado morfeus

  • PIC12
  • **
  • Mensajes: 78
RE: Contar 10 pulsos y encender led
« Respuesta #74 en: 05 de Octubre de 2005, 12:20:00 »
Hola Lord,

Es muy entendible lo de tu trabajo y el solo hecho de aportar tus ideas y conocimientos es de gran valor para el foro.

saludos


morfeus