Autor Tema: Ejemplos en PBP y PROTEUS  (Leído 210097 veces)

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

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
Re: Ejemplos en PBP y PROTEUS
« Respuesta #45 en: 10 de Abril de 2006, 14:55:36 »
Hola:

Hsen, de eso se trata este foro, de solucionar problemas y sentirse bien, aqui todos somos amigos :mrgreen:

Desconectado enricar883

  • PIC10
  • *
  • Mensajes: 18
Re: Ejemplos en PBP y PROTEUS
« Respuesta #46 en: 15 de Abril de 2006, 16:34:02 »
Hola a todos,

Ya consegui conectar el display LCD. El problema que no convertia el puerto en digital antes de conectarlo, por lo menos eso creo.

Me podria explicar alguien la linea de comando "ADCON1 = 7 ' PORTA y E digital" Como se hace esto y que significa, por las vueltas que le doy no entiendo. Si lo que quiero es convertir el Puerto B en digital que tengo que cambiar?

Saludos
 

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
Re: Ejemplos en PBP y PROTEUS
« Respuesta #47 en: 15 de Abril de 2006, 16:46:56 »
Hola:

Veamos, me imagino que utilizaras un pic 16F877 o similar de 40 pins, los puertos B, C, D son digitales, no necesitas hacer nada para utilizarlos, solo configurar como entrada o salida con TRISX donde X es el puerto, encambio, los puertos A y E son analógicos, por eso se utiliza ADCON1= 7 esto lo que hace es "digitalizar" los puertos, siempre y cuando los quiereas utilizar como digitales, en el datasheet del micro esta la tabla de balores que hara digital o analógico a un pin especifico de dichos puertos.

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
Re: Ejemplos en PBP y PROTEUS
« Respuesta #48 en: 15 de Abril de 2006, 17:15:13 »
Hola:

Bueno, especificamente me referia a esta tabla:



alli puedes ver con que valores haces digital o analogico algunos pines.

Desconectado enricar883

  • PIC10
  • *
  • Mensajes: 18
Re: Ejemplos en PBP y PROTEUS
« Respuesta #49 en: 16 de Abril de 2006, 15:19:01 »
Gracias Lordlafebre

Saludos desde Sevilla


Desconectado enricar883

  • PIC10
  • *
  • Mensajes: 18
Re: Ejemplos en PBP y PROTEUS
« Respuesta #50 en: 20 de Abril de 2006, 09:56:16 »
Hola,

Tengo otra consulta que haceros. La linea

OPTION_REG = $55 ' Set TMR0 configuration and enable PORTB pullups
INTCON = $a0 ' Enable TMR0 interrupts

En vez de usar el puerto B, tengo que usar el puerto D.

Que numero en vez de $55 tengo que utilizar?. He buscado en los datasheed del pic, en concreto el 16f877, y no encuentro relacion.

Te pongo la pagina del datasheed que creo hace referencia

TABLE 4-4:     SUMMARY OF REGISTERS ASSOCIATED WITH PORTB

Value on Value on: Address     Name     Bit 7     Bit 6     Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0     all other POR, BOR
Resets

06h, 106h PORTB     RB7     RB6     RB5 RB4 RB3 RB2 RB1 RB0 xxxx xxxxuuuu uuuu 86h, 186h TRISB     PORTB Data Direction Register     1111 11111111 1111 81h, 181h OPTION_REG RBPU INTEDG T0CS T0SE PSA PS2 PS1 PS0 1111 11111111 1111 Legend: x = unknown, u = unchanged. Shaded cells are not used by PORTB.




Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
Re: Ejemplos en PBP y PROTEUS
« Respuesta #51 en: 20 de Abril de 2006, 12:03:54 »
Hola:

enricar883, en el mismo datasheet, mira el pinout, alli podras ver la descripcion de cada pin y que funcion tiene, las resistencias de pull up las tiene solo el Port B, la caracteristica del Port D es que puede funcionar como paralel slave port.

Mira aqui te describe el registro OPTION_REG:



y aqui la edscripcion de cada uno de los bits:


Desconectado enricar883

  • PIC10
  • *
  • Mensajes: 18
Re: Ejemplos en PBP y PROTEUS
« Respuesta #52 en: 22 de Abril de 2006, 20:12:18 »
Hola

Una vez a punto determinar el programa y gracias a Lordlafebre os hago otra pregunta, una vez que tenga el programa depurado lo expondre en el foro.

El programa es que tenga un temporizador que cuenta de forma reversible por segundos. Para el mismo hay cuatro entradas desde RD 4 a RD 7, en este caso 0,50 €, 1,00 €, 2,00 € y ficha, que normalmente corresponde al euro.

Una vez comenzado el tiempo a descontar, que es el tiempo que dispone el operario para funcionar, va descontando, de forma que si se vuelve a echar otra moneda, el tiempo que esta contando de forma reversible se suma a la moneda que se acabe de echar.

La ultima pregunta es la siguiente:

En esta parte del programa hay una variable llamada moneda, pero el valor que le ha dado a esta variable es el valor de la moneda en concreto, para que aparezca en la pantalla LCD

MONEDA = " 0,50 €"

pero asi no se lo traga, aunque parezca un problema muy trivial, a ver como se pone esto.



    If update = 1 Then   '*********************************
        if tiempo > 0 then   
            ASPIRA = 1
            LCDOUT $FE,1
            LCDOUT "MONEDA:       ", #MONEDA
            LCDOUT $FE,$C0
            Lcdout "TIEMPO:       ", #TIEMPO," SEG"
       else
            ASPIRA = 0
            LCDOUT $FE,1
            Lcdout "    BIENVENIDOS"         
            LCDOUT $FE,$C0
            LCDOUT " INTRODUZCA MONEDAS"
        endif         
 
saludos


Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
Re: Ejemplos en PBP y PROTEUS
« Respuesta #53 en: 23 de Abril de 2006, 14:52:35 »
Hola:

Perdon, pero me perdi un poco y no me quedo claro lo que quieres hacer  :(, puedes explicarlo de otra forma?  :P

Desconectado enricar883

  • PIC10
  • *
  • Mensajes: 18
Re: Ejemplos en PBP y PROTEUS
« Respuesta #54 en: 23 de Abril de 2006, 16:56:18 »
Hola,

Ya lo he programado de otra forma y lo he solucionado, gracias de todas formas.

Ahora tengo otra consulta para el foro.

Si tengo una variable que por cada paso de moneda me va sumando de 1 en 1 llegará un momento que tendré en esa variable 350, por ejemplo, ahora necesito que ese valor aun cuando se vaya la luz o arranque de nuevo el pic no se pierda.

He leido que con DATA o Write se puede escribir el valor en la eeprom, pero solo al principio de la carga de la programacion, ¿Como podría hacer esto?

El problema consiste en que esos marcadores de pasos de monedas deben de quedar grabados hasta cuando se vaya la luz.

Gracias

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
Re: Ejemplos en PBP y PROTEUS
« Respuesta #55 en: 23 de Abril de 2006, 17:29:06 »
Hola:

Puedes escribir  con EEPROM o WRITE en la eeprom del micro, pero recuerda cada posición de la EEPROM del micro solo es de 8 bits.

Desconectado liminix

  • PIC12
  • **
  • Mensajes: 58
Re: RE: Ejemplos en PBP y PROTEUS
« Respuesta #56 en: 09 de Mayo de 2006, 14:34:47 »
HOLA EL ULTIMO PROGRAMA DE JUEGO DE LUCES NO  SALE
LAS LUCES SOLO SE QUEDAN PRENDIDAS
QUISIERAS HACER ALGO PARECIDO PARA UN TRABAJO
TE ROGARIA QUE LO CORRIGAS


I  var byte
leds    var byte[5]

TRISB=0

leds[1]=%10000001
leds[2]=%01000010
leds[3]=%00100100
leds[4]=%00011000

Leds=1
inicio:
       for i=1 to 4
           PORTB=leds
           pause 100
       next I
       for i=4 to 1 step-1
           PORTB=leds
           pause 100
       next i
       goto inicio
end
 

Desconectado RedPic

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 5538
    • Picmania by Redraven
Re: RE: Ejemplos en PBP y PROTEUS
« Respuesta #57 en: 09 de Mayo de 2006, 14:54:03 »
No soy un especialista en PBP pero ...  :)  :lol:  :P ... ¿No sería algo asi?


I  var byte
leds var byte[4]

TRISB=0

leds[0]=%10000001
leds[1]=%01000010
leds[2]=%00100100
leds[3]=%00011000

inicio:
       for i=0 to 3
           PORTB=leds[ i ]
           pause 100
       next I
       for i=3 to 0 step-1
           PORTB=leds[ i ]
           pause 100
       next i
       goto inicio
end

Edito: Como dice LordLafebre, los paréntesis son corchetes.
« Última modificación: 09 de Mayo de 2006, 18:31:52 por RedPic »
Contra la estupidez los propios dioses luchan en vano. Schiller
Mi Güeb : Picmania

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
Re: Ejemplos en PBP y PROTEUS
« Respuesta #58 en: 09 de Mayo de 2006, 18:16:48 »
Hola:

Efectivamente como dice Redpic, falta el subindice, pero no es con parentesis ( i ) sino es entre corchetes [ i ]

Suerte...!!!  :mrgreen:
« Última modificación: 09 de Mayo de 2006, 18:20:52 por LordLafebre »

Desconectado KALLITOS

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1256
Re: Ejemplos en PBP y PROTEUS
« Respuesta #59 en: 09 de Mayo de 2006, 18:50:06 »
una consulta doctor LORD LAFEBRE los "leds" en el codigo anterior es a lo que se le llama una tabla y mediante los [] se les llama?

A un microcontrolador hay que sacarle hasta el ultimo byte....(YO)

Cómo puede ser que un pic24EP512 me quede corto de memoria, señores de MICROCHIP saquen pics con más memoria flash

Más de 45 mil lineas de codigo y aun no termino el equipo, asu mare!!

S34ML08G1TFI200 no necesito mas memoria externa.


 

anything