Autor Tema: Necesito código para el 16f819 que funcione  (Leído 1910 veces)

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

Desconectado haizetara

  • PIC10
  • *
  • Mensajes: 2
Necesito código para el 16f819 que funcione
« en: 18 de Septiembre de 2004, 06:04:00 »
Hola Amigos,
Acabo de comprarme un programador de tipo JDM de la página http://www.todotarjetas.com.

Estoy probando el programdor con un 16f819 y con el program icprog 1.05c

Al programar to obtengo ningún error. Tampoco muestra ningún error mplab ide. Pero no funciona.

He simplificado el código de forma que lo único que tiene que hacer es poner a 1 todos los pines del puertoB.

Código:
DDRB    equ 0x06 ; banco 1
PORTB   equ 0x06 ; banco 0
STATUS  equ 0x03 ; banco 0 y 1
TMR0    equ 0x01 ; banco 0
OPTIO   equ 0x01 ; banco 1
INTCON  equ 0x0b ; banco 0 y 1
OSCCON   equ   0x8f ; oscilador
 
 
 
        org 0
 
 
; Accedemos al segundo banco de RAM de Datos
       
        bsf     STATUS,5      
 
; Configuración puertos
 
        movlw   0
        movwf   DDRB  ; TRISB = 0  -> puerto B de salida
 
; configuracion del timer
 
;        movlw   b"01010111"  ; divisor = 256, timer
;        movwf   OPTIO
 
; config osc interno 4Mhz
      movlw   b"01100100"
      movwf   OSCCON

; Accedemos al primer banco de RAM
 
        bcf     STATUS,5
 
; Pongo a cero el puerto B
;        clrf    PORTB
 
; empieza el programa principal
 
inicio
        movlw   0xff
        movwf   PORTB
      goto   inicio

 
        END


Muchas gracias

Desconectado migsantiago

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8257
    • Sitio de MigSantiago
RE: Necesito código para el 16f819 que funcione
« Respuesta #1 en: 19 de Septiembre de 2004, 11:18:00 »
Hola

Nunca he usado ese pic, pero dando un simple vistazo a tu código fuente veo que pones punto y coma al principio de algunos códigos:

; movlw b"01010111" ; divisor = 256, timer
; movwf OPTIO

y

; clrf PORTB

Al parecer lo hiciste para simplificar el programa como dices, hasta ahora creo que no hay problema.

Lo que se me ocurre es que te fijes si habilitaste el watchdog, mejor deshabilítalo porque es probable que te esté reseteando el programa, aunque al ser un programa tan pequeño, dudo que lo reinicie antes de que se enciendan los leds.

Bueno, a ver si alguien más encuentra otro error, porque por ahora sólo veo al watchdog como culpable.

Desconectado Anakinnn

  • PIC10
  • *
  • Mensajes: 2
RE: Necesito código para el 16f819 que funcione
« Respuesta #2 en: 22 de Septiembre de 2004, 01:09:00 »
Yo estoy teniendo el mismo probleba que tu, pero con el 16F818, al final he conseguido que funcione conectando MCLR" internamente a VDD dejando la patilla como I/O y usando el oscilador interno que trae el micro, en micaso 8 mhz en el tuyo 4 mhz. Selecciona IntRC en el icprog y prueba de nuevo (quitando el cristal de la placa)


Por cieto estoy intentando usar el modulo CCP para hacer el micro I2c slave pero por ahora no consigo nada alguien tiene un codigo que funcione y que sirva para leer datos a traves del i2c?


 

anything