TODOPIC

Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: leobiofa en 12 de Marzo de 2013, 19:12:07

Título: Picuino bootloader
Publicado por: leobiofa en 12 de Marzo de 2013, 19:12:07
Hola a todos

Resulta que me arme una plaquita de Picuino, debido ya que después de mucho leer y considerar características me di cuenta que es una de las mas completas aprovecho para dar las gracias a Picuino por compartirla, anexo el esquemático con algunas modificaciones que realice para que la observen, pero al conectarla al PC, lógicamente después de grabar el Bootloader  en el pic18F2550 no me entra en modo Boot, es decir el PC no me reconoce el dispositivo HID, yo pense que era el PIC malo, pero probé con el boot de Neoteo y ese si me funciona, por lo tanto queda descartad el pic, los voltajes y todo lo demas esta bien por que yo la revise muy bien antes de conectarlo al PC, el boot que estoy tratando de usar es el USB del picuino guacamole.

Quisiera que me ayudaran dándome algún consejo de que debo verificar o que debo medir para encontrar la falla, yo conecto el pulsador y los leds como se recomienda, pero no me funciona.

Saludos y gracias por la ayuda y respuestas.

Leobiofa 
Título: Re: Picuino bootloader
Publicado por: Picuino en 12 de Marzo de 2013, 20:00:07
Hola leobiofa.
En cuanto pueda voy a probar el bootloader HID y te respondo.

Saludos.
Título: Re: Picuino bootloader
Publicado por: Picuino en 12 de Marzo de 2013, 20:01:59
Un problema que veo en tu placa es que utilizas resistencias de 180 ohmios para conectar el usb al PIC. Es mejor utilizar resistencias de 22 ohmios o ninguna resistencia.
Yo he utilizado resistencias de 180 ohmios a otro puerto diferente para poder utilizar esos pines para el puerto SPI con otro microcontrolador diferente que no tenga usb (PIC18F2525 y PIC16F886)


https://sites.google.com/site/picuino/picuino-18f2550/Schematic_v22.png

Edito: Acabo de ver que tienes el conector USB directamente conectado a D+ y D- sin resistencias. (No me había dado cuenta de que habías puesto los dos conectores)

Saludos.
Título: Re: Picuino bootloader
Publicado por: Picuino en 13 de Marzo de 2013, 14:08:04
Acabo de probar el bootloader en 2 placas diferentes y funciona ok.

C3 debe ser de 330nF o más y estar conectado a  la patilla 14 (Vusb)

Cuando todo funciona, los pines RB0 y RB1 parpadean, el PC reconoce un nuevo dispositivo HID y el programa bootloader para PC reconoce el dispositivo.

Saludos.
Título: Re: Picuino bootloader
Publicado por: Picuino en 13 de Marzo de 2013, 14:40:46
He programado el PIC con el bootloader que adjunto, que es una versión del bootloader HID de Microchip.

Saludos.
Título: Re: Picuino bootloader
Publicado por: leobiofa en 13 de Marzo de 2013, 17:31:30
Hola Picuino

Muchas gracias por su ayuda, voy a probar nuevamente con este nuevo software que me envió y comentare los resultados, espero que me funcione por que este entrenador me parece excelente y muy fácil de usar.

Saludos
Título: Re: Picuino bootloader
Publicado por: leobiofa en 14 de Marzo de 2013, 15:06:20
Hola Picuino

Le comento que ensaye nuevamente este bootloader y no me graba el pic, el MPLAB me arroja un error, yo lo intento grabar con el Picstart Plus, importando el .hex, pero no me funciona. yo borre el pic y volví a grabar el bootloader de Neoteo y ese si me funciona, por lo tanto no se sinceramente que es lo que esta pasando, voy a hacer una prueba con el Pickit3 a ver como me va, luego le comento.

Saludos y gracias por todo.

Leobiofa
Título: Re: Picuino bootloader
Publicado por: Picuino en 14 de Marzo de 2013, 15:53:31
Yo utilizo el Pickit 3 para grabarlo y todo Ok.

De todas formas si tienes problemas con el bootloader anterior, quizás lo mejor es intentar cargar el de Microchip.
Voy a buscarlo y te paso el enlace.

El problema que tiene el de Microchip es que utiliza pines para el pulsador y los leds que son un poco engorrosos porque ocupan el puerto B de la placa. Con mi modificación sólo se utilizan 3 pines de un puerto pequeño y los demás puertos quedan libres.
Título: Re: Picuino bootloader
Publicado por: Picuino en 15 de Marzo de 2013, 11:49:20
¿Está trabajando el microcontrolador a 20 Mhz?

¿Puede alguien cargar el bootloader en un PIC18F2550 a 20Mhz y decirnos si funciona como dispositivo USB?

Saludos.
Título: Re: Picuino bootloader
Publicado por: leobiofa en 15 de Marzo de 2013, 16:16:45
Hola Picuino

Yo le tengo un oscilador de 20 Mhz efectivamente en la placa, sera ese el problema???

Saludos
Título: Re: Picuino bootloader
Publicado por: Picuino en 16 de Marzo de 2013, 06:22:02
El bootloader está pensado para un cristal de 20Mhz. Ese no parece ser el problema.

El caso es que ahora yo también estoy teniendo problemas con el bootloader. Primero programé la placa con el bootloader HID y funcionaba. Después volví a programar el bootloader RS232 (el que uso habitualmente) y ahora no funciona.

Las comunicaciones van bien. El RS232 envía y recibe datos, pero no consigo grabar ningún programa.

Creo que si te va bien con el bootloader de Neoteo, pues sigue con el. Ese bootloader hace una modificación al bootloader de Microchip parecida al mío para adaptarle a un 18F2550. Lo que no sé es qué pines utiliza exactamente (porque el artículo en la red está a medias):

http://www.neoteo.com/-19871-bootloader-para-18f2550-entrenador-neoteo

Edito: Ya encontré la página siguiente

http://www.neoteo.com/Article.aspx?briefUrl=-19871-bootloader-para-18f2550-entrenador-neoteo&pgArt=2

El bootloader Neoteo utiliza los pines RC0, RC1 y RC2

El problema que tiene usar esos pines es que son muy utilizados como salidas PWM o como entrada para medir frecuencias o pulsos (T13CKI). Mientras no necesites esos pines, no te dará problemas el bootloader de Neoteo.


Saludos.
Título: Re: Picuino bootloader
Publicado por: Picuino en 16 de Marzo de 2013, 06:43:01
Ahora lo que me gustaría saber es porqué no funciona mi bootloader con tu placa para poder hacer que funcione bien en todas las placas.
Voy a comparar el bootloader de Neoteo con el mío.

https://sites.google.com/site/picuino/picuino-18f2550/bootloader/HID_BootLoader_v11.zip

Saludos.
 
Título: Re: Picuino bootloader
Publicado por: Picuino en 16 de Marzo de 2013, 15:03:56
Por lo que he podido comprobar la única diferencia entre el código del bootloader de Neoteo y el mío consiste en la colocación de los led y el pulsador.
   En mi caso utilizo los pines RC7, RB0 y RB1 que coinciden con el puerto SPI de mi placa.
   El bootloader de Neoteo utiliza RC0, RC1 y RC2

El resto del código parece ser igual.

He vuelto a probar el bootloader HID y a mi me funciona.


Saludos.
Título: Re: Picuino bootloader
Publicado por: leobiofa en 18 de Marzo de 2013, 10:11:56
Hola Picuino

Realmente lo he probado de muchas maneras, inclusive programando el pic con el Pickit 3 pero sigue el problema, el boot de Neoteo es muy bueno también, igual lo estoy usando pero también quiero saber que es lo que pasa con tu boot, es bueno identificar esos problemas para corregirlos.

Saludos y gracias por toda tu ayuda.

Leobiofa
Título: Re: Picuino bootloader
Publicado por: Picuino en 18 de Marzo de 2013, 12:56:05
En cualquier caso te recomiendo que utilices un bootloader RS232.
Con el mismo puerto que utilizas para enviar el programa, puedes enviar y recibir datos para depurar el programa.

Te aconsejo el Tiny PIC Bootloader (http://www.etc.ugal.ro/cchiculita/software/picbootloader.htm).

Con ese bootloader el proceso es muy rápido. Pulsas el boton de escribir el programa y el mismo bootloader resetea el micro, graba el programa de usuario y al cabo de unos segundos se ejecuta el programa y estás recibiendo datos de la aplicación.

Si no tienes puerto RS232, entonces puedes comprar en e-bay un conversor USB a RS232 con niveles TTL:

(http://www.roboticaludica.com/wp-content/uploads/2011/11/PB283025.jpg)

Con este conversor puedes incluso alimentar la placa desde el puerto RS232 con 5 voltios (tercera patilla desde abajo)

Saludos.
Título: Re: Picuino bootloader
Publicado por: Picuino en 18 de Marzo de 2013, 14:43:46
Hola Picuino

Realmente lo he probado de muchas maneras, inclusive programando el pic con el Pickit 3 pero sigue el problema, el boot de Neoteo es muy bueno también, igual lo estoy usando pero también quiero saber que es lo que pasa con tu boot, es bueno identificar esos problemas para corregirlos.

Saludos y gracias por toda tu ayuda.

Leobiofa

Puedes intentar compilarlo con el C18 a ver si tu compilación te funciona. El código fuente en c está disponible en mi página y en la de Neoteo. Sólo necesitas una versión del C18 totalmente operativa (con optimizaciones). Por ejemplo el C18 durante los primeros 60 dias de funcionamiento.

Adjunto fuentes de NEOTEO con el cambio de entradas/salidas:
   PORTC7 = Interruptor
   RB0, RB1 = Leds de estado USB


Saludos.
Título: Re: Picuino bootloader
Publicado por: Picuino en 18 de Marzo de 2013, 15:44:05
Adjunto Bootloader de Neoteo compilado con la modificación de los pines RC7, RB0 y RB1

Saludos.
Título: Re: Picuino bootloader
Publicado por: leobiofa en 19 de Marzo de 2013, 18:56:02
Hola Picuino

N ose como agradecerle su dedicación a estos temas, definitivamente usted es uno de las grandes personas de este foro.

Voy a probar los boot que me envió y le estaré comentando los resultados.

Saludos y gracias.