Autor Tema: Pic 18f45j10  (Leído 10566 veces)

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

Desconectado Trino

  • PIC10
  • *
  • Mensajes: 45
Re: Pic 18f45j10
« Respuesta #30 en: 23 de Febrero de 2007, 06:57:45 »
Muchisimas gracias a todos de nuevo no creo que hubiera conseguido programarlo sin vuestra ayuda.
El programa que me paso Maunix funciona de maravilla, pero ahora he añadido un pulsador que cuando esta pulsado enciende los LED's y cuando no que se apaguen pero parece que no funciona el pulsador, el codigo que uso es el siguiente:

     LIST P=PIC18F45J10
       include   <p18F45J10.inc>

config DEBUG   = OFF
config XINST   = OFF
config STVREN  = ON          ; Stack Overflow/Underflow Reset = encendido       
config WDTEN   = OFF         ; Watchdog apagado
config CP0     = OFF         ; Code protection deshabilitados       
config FCMEN   = OFF         ; fail safe clock monitor
config IESO    = OFF
config FOSC2   = ON
config FOSC    = HS          ; Osc section bits
config WDTPS   = 1
config CCP2MX  = DEFAULT

   org     0000H
   goto    INICIO
   org      0100H

      
INICIO
   MOVLW   0xFF
   MOVWF   BSR
   MOVLW   B'00000000'
   MOVWF   OSCCON
   MOVLW   B'00000000
   MOVWF   OSCTUNE
   MOVLW    B'10000000'
   MOVWF   TRISB
   BSF      TRISB,7

LOOP

   BTFSS   TRISB,7
   GOTO    DESACTIVAR
   GOTO   ACTIVAR

ACTIVAR
   BSF      LATB,0
   BSF      LATB,1
   BSF      LATB,2
   BSF      LATB,3
   BSF      LATB,4
   BSF      LATB,5
   BSF      LATB,5
   GOTO   LOOP

DESACTIVAR
   BCF      LATB,0
   BCF      LATB,1
   BCF      LATB,2
   BCF      LATB,3
   BCF      LATB,4
   BCF      LATB,5
   BCF      LATB,5
   GOTO   LOOP

   END

Perdon por no comentarlo pero es bastante simple.
Y el esquema que tengo montado es el siguiente:

Muchas gracias a todos.

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Pic 18f45j10
« Respuesta #31 en: 23 de Febrero de 2007, 08:49:48 »
Me alegro que te funcione.  El capacitor para el reset, es para fuentes lentas, y si usarás un pulsador no le veo la máxima importancia de todas formas es una relación entre R (10K en tu esquema) y C, con eso fijas una constante de tiempo para el retardo en caso de fuentes que tardan algo más para lograr máxima tensión.  En estos casos puede que el pic no resetee bien porque no esté alimentado el mismo cuando recibe el pulso de reset, con lo cual su lógica no se reinicia.

Con este RC, se logra mantener la tensión en MCLR en 0V durante una fracción de tiempo más  permitiendo que el PIC esté con tensión mientras el MCLR está en 0V produciéndose de esa forma el reset.

Si usas R=10K . usa C=.1u

yendo al código, recuerda usar los marcos [ code=asm ] y [ /code ] para tus códigos antes de subirlos.


Código: ASM
  1. MOVLW      B'10000000'
  2.     MOVWF      TRISB
  3.     BSF        TRISB,7

Fíjate que no tiene mayor sentido hacer BSF TRISB,7 si antes ya lo habías dejado en 1, cuando hiciste el MOVWF hacia el TRIS con el bit7 en 1.


Código: ASM
  1. LOOP
  2.     BTFSS      TRISB,7
  3.     GOTO       DESACTIVAR
  4.     GOTO       ACTIVAR

Aquí estas leyendo el TRISB, y debes leer PORTB.  Cambia BTFSS TRISB,7 por BTFSS PORTB,7

Saludos
- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)

Desconectado Trino

  • PIC10
  • *
  • Mensajes: 45
Re: Pic 18f45j10
« Respuesta #32 en: 23 de Febrero de 2007, 14:53:35 »
Vaya tela  :shock: que fallo más tonto el agotamiento y el dolor de cabeza que me ha dado hasta ahora el PIC  no me deja pensar bien, jejejej.
Bueno muchas gracias por tus aclaraciones espero que a partir de ahora vaya todo mejor.
Gracias y un saludo para todo el foro que soys los mejores.

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Pic 18f45j10
« Respuesta #33 en: 24 de Febrero de 2007, 10:26:14 »
Vaya tela  :shock: que fallo más tonto el agotamiento y el dolor de cabeza que me ha dado hasta ahora el PIC  no me deja pensar bien, jejejej.
Bueno muchas gracias por tus aclaraciones espero que a partir de ahora vaya todo mejor.
Gracias y un saludo para todo el foro que soys los mejores.

De nada, "a veces cuando el automóvil no funciona, antes de abrir el capot hay que fijarse si tiene nafta" jeje. 

Lo que quiero decir es que en ocasiones algo no anda y pensamos que es lo más complejo y tal vez sea algo simple.

Me alegro que tu pic funcione y a no desesperarse si algo no sabes como esperas, ten paciencia, trata de buscar las causas y verás cómo aprendes en el proceso!

Saludos
- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)