TODOPIC

Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: black_flowers en 05 de Octubre de 2010, 10:43:51

Título: herramienta para depurar programa "in circuit".
Publicado por: black_flowers en 05 de Octubre de 2010, 10:43:51
hola llevo unos meses con dolores de cabeza por culpa de un programa de lcd para dspic y otra de cad para dspic. El caso es que no hay manera de dar con la solución y ya estoy saturado de probar, preguntar ect etc...  y he pensado que me sería de gran ayuda una herramienta para saber el estado de los registros internos del pic y un analiador lógico y toda clase de depuradores para pics. He estado leyendo algo en la página de microchip y no es que me aclare demasiado, a lo mejor hay alguien que sabe de alguna herramienta capaz de hacer eso, es decir de hacer una depuración in circuit de un microcontrolador, de manera que pueda ver el estado de los registros internos del pic. Y de paso tambien si vale de analizador lógico pues genial.

un saludo.
Título: Re: herramienta para depurar programa "in circuit".
Publicado por: Nocturno en 05 de Octubre de 2010, 11:47:00
Yo utilizo este:
(http://www.microchip.com/stellent/groups/devtools_sg/documents/devtools/~export/en537580~9~en006096~PressReleaseLayout/108377-1.png) (http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en537580&redirects=icd3)
Título: Re: herramienta para depurar programa "in circuit".
Publicado por: migsantiago en 05 de Octubre de 2010, 18:39:35
Yo depuro mis pics y dspic con el pickit2.

http://www.microchip.com/pickit2

Sólo verifica que tu dspic esté en la lista de los depurables.

(http://img156.imageshack.us/img156/4289/98471620540.jpg)
Título: Re: herramienta para depurar programa "in circuit".
Publicado por: Duende_Azul en 05 de Octubre de 2010, 20:35:49
Yo uso este:
(http://www.microchip.com/stellent/groups/devtools_sg/documents/devtools/~export/en028120~22~en006096~PressReleaseLayout/123366-1.png)
Título: Re: herramienta para depurar programa "in circuit".
Publicado por: MLO__ en 09 de Octubre de 2010, 10:22:11
Yo uso este:

(http://www.petrolia.com/images/gallery/Microchip-ICD2.jpg)
Título: Re: herramienta para depurar programa "in circuit".
Publicado por: black_flowers en 09 de Octubre de 2010, 20:06:39
gracias, la verdad es que hay variedad pero he visto las hojas de datos de los tres y me parecio entender que los tres hacen exactamente lo mismo, cosa que doy por hecho es imposible ya que uno vale 50€ otro 200€ y otro 500€ así que algo tendrán de diferentes. Lo que yo entendí es que los tres son para depurar y que en los tres se pueden leer los registros internos del pic, visuallizar el valor de las variables en tiempo real, y poner breackpoints y esas cosas. Así a primera vista parece que con el pickit3 sería la opción ideal ya que es el más barato. Pero sigo teniendo la duda de qué hacen los otros dos a mayores que el pickit.

un saludo.
Título: Re: herramienta para depurar programa "in circuit".
Publicado por: black_flowers en 11 de Octubre de 2010, 07:44:35
Yo depuro mis pics y dspic con el pickit2.

http://www.microchip.com/pickit2

Sólo verifica que tu dspic esté en la lista de los depurables.

(http://img156.imageshack.us/img156/4289/98471620540.jpg)

¿y puedes ver los registros internos y las variables en tiempo real?
Título: Re: herramienta para depurar programa "in circuit".
Publicado por: Cryn en 11 de Octubre de 2010, 11:37:57
¿y puedes ver los registros internos y las variables en tiempo real?
Claro, eso trata un depurador
Título: Re: herramienta para depurar programa "in circuit".
Publicado por: Duende_Azul en 11 de Octubre de 2010, 11:52:51
¿y puedes ver los registros internos y las variables en tiempo real?

Si con "tiempo real" te refieres a ver el contenido de los registros mientras el programa se esta ejecutando, creo que solamente el Real Ice lo puede hacer y con algunos pic 18Fxxjxx, 24 y 32..  de resto, debes detener la depuración en algun momento para poder ver el contenido de los registros internos de pic o las variables que te interesan.
Título: Re: herramienta para depurar programa "in circuit".
Publicado por: migsantiago en 11 de Octubre de 2010, 14:41:31
Exactamente, con el pickit2 se debe pausar el reloj del PIC para extraer el estado de la memoria y los registros.

No es un depurador en tiempo real.
Título: Re: herramienta para depurar programa "in circuit".
Publicado por: LABmouse en 11 de Octubre de 2010, 14:56:42
Yo este:
(http://elco.crsndoo.com/wordpress/wp-content/uploads/2010/05/pickit3_1.jpg)
Título: Re: herramienta para depurar programa "in circuit".
Publicado por: migsantiago en 11 de Octubre de 2010, 15:07:48
Qué bonita galería de depuradores originales de Microchip hemos creado.  :mrgreen:
Título: Re: herramienta para depurar programa "in circuit".
Publicado por: black_flowers en 11 de Octubre de 2010, 18:33:06
osea que en tiempo real sólo el real ice, pero ese no está a mi alcance, de todas formas no me ha quedado claro, (y eso que me he mirado las hojas de datos) cual es la diferencia y qué venaja tiene el icd3 sobre el pickit3 por ejemplo, ¿alguien sabe alguna diferencia significativa?
Título: Re: herramienta para depurar programa "in circuit".
Publicado por: Duende_Azul en 11 de Octubre de 2010, 20:03:51
Solo el real ice, en algunos pic y con un accesorio que se vende aparte...

La diferencia entre el pickit3 y el icd3 creo que basicamente es la velocidad de transferencia por usb, full speed para el pickit y high speed para el icd3 peeeero...  el pickit2 (no se si el 3 lo tiene) tiene unas funciones bien interesantes como el analizador lógico y la herramienta de puerto serial, además puedes programar los pic sin necesidad del MPLAP pues trae su propio programa para tal fin, y por si fuera poco, tambien puedes programar micros ATMEL  :)

Tengo un pickit2 y un real ice y la verdad es que con el pickit puedes hacer una depuración sin problemas, muy lento si lo comparas con el real ice pero cumple la misión perfectamente. Para mi el pickit2 es una obra maestra, supongo que el 3 sera mucho mejor.
Título: Re: herramienta para depurar programa "in circuit".
Publicado por: Nocturno en 12 de Octubre de 2010, 01:45:00
No sé exactamente las diferencias entre ICD3 y Pickit pero es verdad que la velocidad de programación del ICD3 es una pasada, es como un rayo. Está fabricado con una FPGA y va realmente rápido.

Además, tiene la posibilidad de hacer 3 breakpoints por hardware, además de los que pongas por software. Me suena que esto no lo haga el pickit pero no estoy seguro.

Y también es válido para PIC32, no sé si el Pickit servirá.
Título: Re: herramienta para depurar programa "in circuit".
Publicado por: black_flowers en 12 de Octubre de 2010, 06:55:09
No sé exactamente las diferencias entre ICD3 y Pickit pero es verdad que la velocidad de programación del ICD3 es una pasada, es como un rayo. Está fabricado con una FPGA y va realmente rápido.

Además, tiene la posibilidad de hacer 3 breakpoints por hardware, además de los que pongas por software. Me suena que esto no lo haga el pickit pero no estoy seguro.

Y también es válido para PIC32, no sé si el Pickit servirá.

pues no sé si los tendrá por hardware,, pero en esta tabla pone que por software no los tiene. Pone que tiene breackpoiints simples y el icd3 y realice tienen complejos, pero pone que no tiene breakpoints software.
Entonces, para aclararnos: me imagino que se podrán hacer breakpoints desde el mplab, pero ... cuando hablas de breakpoints por hardware ¿qué son exactamente?

saludos.
Título: Re: herramienta para depurar programa "in circuit".
Publicado por: migsantiago en 12 de Octubre de 2010, 10:45:41
Hola. El número de breakpoints por hardware que pone el Pickit2 depende del PIC que se esté depurando. Hay PICs que sólo tienen 1 breakpoint disponible y otros hasta 3.

El Pickit2 no soporta breakpoints por software.

Los breakpoints por hardware son pausas obligadas que en modo debug se le programan al PIC. Cuando el programa llega a un breakpoint, el PIC se detiene y el Pickit2 obtiene el estado de su memoria y registros.
Título: Re: herramienta para depurar programa "in circuit".
Publicado por: black_flowers en 13 de Octubre de 2010, 06:02:52
osea que el pickit no tiene breakpoints por hardware ni por software?
Título: Re: herramienta para depurar programa "in circuit".
Publicado por: Cryn en 13 de Octubre de 2010, 14:45:06
osea que el pickit no tiene breakpoints por hardware ni por software?
El pickit2 puede usar los breakpoint por hardware que el microcontrolador posea.
Título: Re: herramienta para depurar programa "in circuit".
Publicado por: Suky en 13 de Octubre de 2010, 15:14:57
osea que el pickit no tiene breakpoints por hardware ni por software?

El número de breakpoints por hardware que pone el Pickit2 depende del PIC que se esté depurando. Hay PICs que sólo tienen 1 breakpoint disponible y otros hasta 3.

El Pickit2 no soporta breakpoints por software.


 :mrgreen:

Título: Re: herramienta para depurar programa "in circuit".
Publicado por: black_flowers en 14 de Octubre de 2010, 11:31:21
ah, vale osea que lo que no tiene son breakpoints por software.