Autor Tema: Novato intentando programar un 16F877A  (Leído 8261 veces)

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

Desconectado bj73_horta

  • PIC10
  • *
  • Mensajes: 12
Novato intentando programar un 16F877A
« en: 12 de Diciembre de 2008, 19:09:41 »
Soy un aficionado a la electrónica que en el mundo de los microcontroladores ha hecho algo con microprocesadores de Atmel y quiero conocer los PICs sobre todo por entretenimiento.
El caso es que he empezado con el PIC 16F84A y un par de pruebas que he hecho con él, encender leds y sacar mensajes por pantalla de 2x16 carácteres han sido exitosas. Para programar el archiconocido 16F84A me ha bastado un programador Pablin y también he obtenido buenos resultado con un JDM que adquirí desesperado por no obtener el mismo exito con el 16F877A que que cl 16F84A.
Como programas "programadores" dispongo del WinPic800 y del ICPROG, en ambos casos escribo en el 16F877A con el programador JDM y después compruebo el código y me dice que es correcto, pero los programas no funcionan con este PIC.

La primera pregunta es: ¿Si con el programador JDM, es fiable en la comparación del código entre el PIC y lo que hay escrito?

La segunda pregunta es: En caso de ser afirmativa la primera pregunta, ¿donde me puedo informar en castellano sobre la programación del PIC 16F877A?

Gracias de antemano por vuestras respuestas y mi mas sincera enhorabuena por este foro.

Desconectado Leon Pic

  • Colaborador
  • DsPIC30
  • *****
  • Mensajes: 3610
    • Impresiones en 3D
Re: Novato intentando programar un 16F877A
« Respuesta #1 en: 12 de Diciembre de 2008, 19:28:09 »
Lo que seguro te está pasando es que tenés habilitada la opción LVP el cual, lo que hace, es habilitar la opción para que pueda ser programado en baja tansión. Entónces, al ponerle 5 volts, el pic entra en modo programación.
Jesús dijo, yo soy el CAMINO, la VERDAD y la VIDA, nadie llega al PADRE si no es por mi.

Desconectado bj73_horta

  • PIC10
  • *
  • Mensajes: 12
Re: Novato intentando programar un 16F877A
« Respuesta #2 en: 13 de Diciembre de 2008, 07:34:58 »
Lo que seguro te está pasando es que tenés habilitada la opción LVP el cual, lo que hace, es habilitar la opción para que pueda ser programado en baja tansión. Entónces, al ponerle 5 volts, el pic entra en modo programación.

Gracias Leon por tu rápida respuesta, pero tengo deshabilitadas todas las opciones, el cristal es correcto, y nada, no me hago con él.

Desconectado jfmateos2

  • Moderador Local
  • DsPIC30
  • *****
  • Mensajes: 3145
Re: Novato intentando programar un 16F877A
« Respuesta #3 en: 13 de Diciembre de 2008, 09:18:58 »
Bienvenido bj73.

Si al verificar la grabación con el software de programación te dice que es correcta, seguramente se habrá programado bien y habrá que buscar el problema en otro sitio.

¿Podrías poner el código del programa que no te funciona para que le echemos un vistazo? Imagino que sabrás que los programas para el 16F84 no te van a funcionar directamente en el 16F877, sino que hay que adaptarlos ¿verdad?

Saludos y suerte

Desconectado bj73_horta

  • PIC10
  • *
  • Mensajes: 12
Re: Novato intentando programar un 16F877A
« Respuesta #4 en: 13 de Diciembre de 2008, 16:03:59 »
Primero que nada, darte las gracias jfmateos2. Si como tu dices la comprobación del código realizada por el programador es de fiar, ya tengo algo claro y donde cogerme y además evidentemente el problema está en el código. Por desgracia no lo puedo copiar ahora porque estoy con una máquina que funciona en linux, pero en resumidas cuentas, tanto los leds (conectados con resistencias pull-up externas) como el control de la pantalla, en el caso del 16f84a los monté sobre el puerto B, definiendo este puerto como salidas y el A como entradas. Por supuesto han sido dos circuitos diferentes. En el caso del 16F778A, los leds los he montado sobre el puerto B con resistencias Pull-Up externas que desmonto para programar el chip (en realidad estoy trabajando con tarjetas tipo prototipo que me he preparado yo mismo) y la pantalla sobre el puerto C, difiniendo los puertos B,C,D y E como salidas y el A como entradas. Por supuesto he adaptado el código a los puertos que he utilizado y esa ha sido la única adaptación de código que he hecho.

Creo que en el 16F778A hay lo que se llaman palabras de configuración, pero por mas que leo o mejor dicho intento leer (porque el inglés no es mi fuerte) el data shet, no he podido encontrarlas, por eso mi segunda pregunta de donde podría encontrar al al respecto en castellano.

Otra vez gracias por tu ayuda jfmateos2

Desconectado jfmateos2

  • Moderador Local
  • DsPIC30
  • *****
  • Mensajes: 3145
Re: Novato intentando programar un 16F877A
« Respuesta #5 en: 13 de Diciembre de 2008, 16:11:29 »
¿Qué lenguaje de programación estás usando? ¿ASM?

Desconectado bj73_horta

  • PIC10
  • *
  • Mensajes: 12
Re: Novato intentando programar un 16F877A
« Respuesta #6 en: 15 de Diciembre de 2008, 16:13:50 »
¿Qué lenguaje de programación estás usando? ¿ASM?
Hola otra vez jfmateos, mis conocimientos de programación se reducen al basic y de momento para programar estoy usando el microBasic para PIC

El código que he escrito y compilado sin errores es este:

program LCD4b1_877A


dim j as word
dim text as string[20]
dim i as byte

 main:
     trisb=0         'Puerto b como salidas
     trisc=0
     trisd=0
     trise=0
     trisa=255       'Puerto a como entradas
 portb=0
 delay_ms(500)
 portb=1
 delay_ms(500)
 portb=3
 delay_ms(500)
 portb=0

Lcd_Config(PORTD,7,6,5,4,PORTD,1,2,3)

Lcd_Cmd(Lcd_CURSOR_OFF)    ' Turn off cursor
lcd_cmd(lcd_clear)
    text = "Hola Mundo "
    Lcd_Out(1, 1, text)
    Lcd_out (2,2, "Reholasss")


for i=0 to 255
    delay_ms(200)   'Espera 100 milisegundos
    portb=i
next i


goto main

end.


Aunque dije mas arriba que el display lo tenía conectado al puerto C, en realidad lo tengo conectado al D tal y como está programado.

Otra vez gracia por tu ayuda

Desconectado jfmateos2

  • Moderador Local
  • DsPIC30
  • *****
  • Mensajes: 3145
Re: Novato intentando programar un 16F877A
« Respuesta #7 en: 15 de Diciembre de 2008, 19:19:28 »
Hola bj, no tengo ni idea de mikrobasic, pero quizás este enlace te ayude: http://www.mikroe.com/en/books/picbasicbook/07.htm#7.3

Desconectado bj73_horta

  • PIC10
  • *
  • Mensajes: 12
Re: Novato intentando programar un 16F877A
« Respuesta #8 en: 20 de Diciembre de 2008, 15:35:31 »
Hola bj, no tengo ni idea de mikrobasic, pero quizás este enlace te ayude: http://www.mikroe.com/en/books/picbasicbook/07.htm#7.3
Muy interesante el enlace jfmateos2 y ante todo muchas gracias. Al final ha resultado ser un problema de placa, pues me he preparado otra totalmente pelada, o sea el micro, la fuente de alimentación, el sistema de reset, el cristal y los pines de cada puerto y así ha funcionado. Lastima no tener el icono que se pone colorado, porque asi es como me siento.
Ahora solo dar nuevamente las gracias por todo y desearos a todos unas felices fiestas.

Desconectado jfmateos2

  • Moderador Local
  • DsPIC30
  • *****
  • Mensajes: 3145
[*]Re: Novato intentando programar un 16F877A
« Respuesta #9 en: 20 de Diciembre de 2008, 16:35:50 »
Me alegro del desenlace bj73 ¿Por cierto, el 73 es por tu año de nacimiento? Si es así, somos de la misma quinta...

Y respecto a la cariga roja, haz clic en el botón [más] que hay a la derecha de los emoticonos  :oops: :oops: :oops:

Desconectado bj73_horta

  • PIC10
  • *
  • Mensajes: 12
Re: Novato intentando programar un 16F877A
« Respuesta #10 en: 20 de Diciembre de 2008, 17:28:06 »
je je, ni para encontrar los emoticones......  :oops: :oops: :oops: :oops:, menudo "socio" os ha salido.....

Hace un par de años empecé a participar en foros de todo terrenos y bj73 es un modelo de Toyota Land Cruiser, que va a ser mi primera "víctima" con los pics, ya que necesito un cuentarevoluciones, un sistema de control de precalentadores mas sofisticado que el condensador que lleva y alguna que otra cosita mas que ya iré haciendo poco a poco y seguro que pidiendo auxilio mas de una vea. El horta hace referencia a mi lugar de nacimiento, la Huerta de Valencia.... y bueno, no somos quintos jfmateos2..... nací en el 58 así que ya penio alguna que otra cana.....

Desconectado jfmateos2

  • Moderador Local
  • DsPIC30
  • *****
  • Mensajes: 3145
[*]Re: Novato intentando programar un 16F877A
« Respuesta #11 en: 20 de Diciembre de 2008, 17:47:35 »
Pues pese a no ser quintos ni paisanos, sí compartimos algo: el motivo que nos trajo a este foro.

Yo llegúe aquí buscando fabricarme un velocímetro y cuentarevoluciones digital para mi automóvil y, con la ayuda de la gente de por aquí, lo conseguí.

Te deseo el mismo éxito.

Desconectado bj73_horta

  • PIC10
  • *
  • Mensajes: 12
Re: [*]Re: Novato intentando programar un 16F877A
« Respuesta #12 en: 20 de Diciembre de 2008, 18:58:15 »
Pues pese a no ser quintos ni paisanos, sí compartimos algo: el motivo que nos trajo a este foro.

Yo llegúe aquí buscando fabricarme un velocímetro y cuentarevoluciones digital para mi automóvil y, con la ayuda de la gente de por aquí, lo conseguí.

Te deseo el mismo éxito.
Gracias compañero, yo ahora voy a ir haciendo cositas para ver como van comunicaciones, CAD's, cálculos, etc. De momento tengo un buen surtido de pics, 16f84a, 16f873a, 16f877a, 18f2550, 18f4550, y alguno de 8 patillas. De momento me falta probar el 18f2330 y los de 8 patillas..... y los resultados hasta ahora han sido "satisfactorios"

Desconectado jhozate

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1698
Re: Novato intentando programar un 16F877A
« Respuesta #13 en: 20 de Enero de 2009, 20:25:58 »
hola estuve leyendo el post,,,psss no se si sea tarde,,pero yo tengo unos manuales del PIC16F877 en español,,y tambien unos pdf con varias aplicaciones..por si les interesa pss me avisan los subo....saludos
Ser Colombiano es un Premio, Saludos desde CALI-COLOMBIA

Desconectado jfmateos2

  • Moderador Local
  • DsPIC30
  • *****
  • Mensajes: 3145
Re: Novato intentando programar un 16F877A
« Respuesta #14 en: 21 de Enero de 2009, 08:17:41 »
Bienvenido jhozate... si esos manuales y pdf son de libre distribución (no protegidos por derechos comerciales de distribución o autor) serán bien recibidos.

En caso contrario no los publiques en este foro.

Saludos.