Autor Tema: ICD con Proton  (Leído 7211 veces)

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

Desconectado PAWA

  • PIC10
  • *
  • Mensajes: 32
ICD con Proton
« en: 27 de Septiembre de 2007, 13:46:38 »
    Estoy empezando con Proton despues de decidir que PBP esta estancado. Pero como nuevo en la materia ya me salieron las dudas.


  Realize este pequeño programa para probar el Bootloader y el ICD de proton pero me marca un error al correr el ICD y ya lei como veinte veces la ayuda y los manuales y la verdad no le encuentro si pudieran ayudarme realmente se los agradeceria. El programa es el siguiente:


Device= 18f452
xtal=    20

output Port B

Inicio:

High Port B
DelayMs 1000
Low Port B
DelayMs 1000
goto inicio


Lo compilo y no marca errores  lo cargo con el Bootloader y todo perfecto. Por cierto utilizo el bootloader de PBP y trabaja perfecto al parecer son el mismo fabricante, yo no sabia.

Encienden y apagan los leds en el Port B.

Despues abro el ICD lo compilo nuevamente y lo programo todo perfecto, al darle Run en el ICD marca
"There are no debugged lines. Make sure you have EBABLE DEBUG for the code you wish to debug".


Entoces antes de inicio en el programa pongo ENABLE DEBUG y lo compilo y ahora marca
"Error ON DEBUG directive not issued in the Basic Program"

si quito el ENABLE DEBUG compila sin errores.


Gracias de antemano.



Saludos desde Mexicali Mexico.





Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
Re: ICD con Proton
« Respuesta #1 en: 27 de Septiembre de 2007, 14:56:39 »
Hola:

Protón tiene una característica que cuando escribes un comando propio de protón, te da enseguida los parámetros necesarios para completarlo, por lo tanto cuando tipeas DEBUG notarás que en realidad es así: ON DEBUG GOTO, el error que te marca es este último, tienes que hacer saltar a la etiqueta a la cual quieres aplicar el DEBUG.

Sin ánimo de ofender, pero no se para que todos los programas tienen ayuda si hay personas que jamás la van a revisar.

Esta duda la hubieras podido solventar mirando la ayuda.

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
Re: ICD con Proton
« Respuesta #2 en: 27 de Septiembre de 2007, 14:59:22 »
Entoces antes de inicio en el programa pongo ENABLE DEBUG y lo compilo y ahora marca
"Error ON DEBUG directive not issued in the Basic Program"

Hola de nuevo:

Otra cosa es que el mensage de error es claro, y tienes que entender los mensajes de errores, si no entiendes el inglés prueba con un traductor y verás que se hace más facil poder depurar los programas.

Desconectado PAWA

  • PIC10
  • *
  • Mensajes: 32
Re: ICD con Proton
« Respuesta #3 en: 27 de Septiembre de 2007, 17:08:31 »
Gracias por tu ayuda Giovanni.

Estoy de acuerdo contigo con respecto a la lectura normalmente trato de sacar yo mismo las dudas y realmente le busque de hecho tambien le trate asi:


Device= 18f452
xtal=    20

output Port B
ON DEBUG GOTO INICIO
Inicio:

High Port B
DelayMs 1000
Low Port B
DelayMs 1000
goto inicio.



Y no marco error al compilar pero el ICD se conectaba y al darle run no se desplegaba las variables ni veias los cambios en el programa.

Voy a tratar nuevamente como tu me indicas, yo creia que me faltaba declarar algo.

Entonces recapitulando solo hay que poner ON debug GOTO variable y no debe de haber problemas.


Saludos desde Mexicali Mexico.

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
Re: ICD con Proton
« Respuesta #4 en: 27 de Septiembre de 2007, 17:39:07 »
Hola:

Prueba así:

Device= 18f452
xtal=    20

Enable Debug

output Port B
ON DEBUG GOTO INICIO
Inicio:

High Port B
DelayMs 1000
Low Port B
DelayMs 1000
goto inicio.

Desconectado PAWA

  • PIC10
  • *
  • Mensajes: 32
Re: ICD con Proton
« Respuesta #5 en: 28 de Septiembre de 2007, 12:41:45 »
  Ahora que estoy convencido que el programa no es, creo que el problema es el software del ICD porque cuando le doy run al ICD se queda esperando algo y marca que esta conectado pero no hace nada.



Te agradesco de antemano tu ayuda voy a conseguir el software a ver si lo puedo hechar a volar.



Por cierto es mas estable programar serialmente con el Proton Ya que  con el MIcroestudio plus (PBP) a cada rato me fallaba la programacion.



Saludos desde Mexicali Mexico.



Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
Re: ICD con Proton
« Respuesta #6 en: 28 de Septiembre de 2007, 15:59:21 »
Hola:

Intentaste con el debugger de Protón?

Desconectado RALF2

  • Moderador Local
  • PIC24H
  • *****
  • Mensajes: 2062
Re: ICD con Proton
« Respuesta #7 en: 28 de Septiembre de 2007, 16:09:24 »
Hola amigos!
Leyendo sus comentarios respecto al ON DEBUG, me surgieron unas dudas, a ver si me las pueden aclarar.
Lorlafebre mira estuve revizando la ayuda del proton y el manual y no me aparece nada respecto al comando, por llamarlo de alguna manera, On Debug???  :?  de hecho no se muy bien como utilizarlo.  :(
Probe escribiendolo en el proton y como dices arriba aparece la instruccion con sus parametros, ahora bien y es lo que me molesta un poco del manual y la ayuda del proton  es porque ese tipo de cosas no las publican en la ayuda? sino no es porque el amigo hace esa pregunta no me hubiera enteredo que ese comando existe y yo me he leido el manual sientos de veces de arriba abajo.
En que pajina esta la informacion amigo lordlafebre como la consigo?
Asi como por ejemplo el comando pprint si lo buscas en la ayuda no esta por ningun lado yo me entere de que existia gracias a que tu colocaste algo al respecto en el foro!
Y tuve que entrar en el foro del proton para bajar el data sheet que explica como utilizar el comando. Y entonces porque no colocan la informacion en el manual cuando uno actualiza el programa, por desgracia mi ingles no es muy bueno para escribirle una carta al desarrollador del programa, para hacerle referencia a esos detallitos  :mrgreen:

saludos

 

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
Re: ICD con Proton
« Respuesta #8 en: 28 de Septiembre de 2007, 16:40:12 »
Hola:

Veamos, el debug, si no estoy mal, no lo soportan todos los pics, y tambien
si no estoy mal es como un fusible, en el caso del 16F877

; Configuration Word1

DEBUG_ON                    EQU     0X1FFF
DEBUG_OFF                   EQU     0X3FFF

noten las configuraciones por defecto que tiene, el archivo 16f877.LBP

ifdef DEBUG@REQ ; Do we require DEBUG ?
   __CONFIG _CONFIG1, HS_OSC & WDT_ON & DEBUG_ON & FCMEN_OFF & IESO_OFF & BOR_OFF & CPD_OFF & CP_OFF & MCLRE_ON & PWRTE_ON
else
   __CONFIG _CONFIG1, HS_OSC & WDT_ON & DEBUG_OFF & FCMEN_OFF & IESO_OFF & BOR_OFF & CPD_OFF & CP_OFF & MCLRE_ON & PWRTE_ON
endif

por lo tanto, se nombra superficialmente el debug en la ayuda, ya que es una parte del micro (corrijanme si hablo piedras)

Es lo mismo que si se hablase de cualquier otro fuse, por eso solamente se nombra

ON DEBUG GOTO

creo yo que es una parte de la ayuda que no tiene, así como muchas cosas en cuanto a configuraciones de los fusibles.

Pero si siguen revisando la ayuda verán algo como esto:

Config HS_OSC, WDT_OFF, PWRTE_ON, BODEN_OFF, LVP_OFF,WRTE_ON, CP:OFF,DEBUG_OF

entonces, tampoco se habla en la ayuda de PWRTE, que nisiquiera se que es, por lo tanto corresponden a fuses de los micros,

y miren esto:

The list below highlights the requirements for the ICD2 with some of the most recent PICmicros that support it.

Device              RAM Usage

P12F675      $54 - $5F
P12F629      $54 - $5F
P16F627A     $70 - $7F
P16F628A     $70 - $7F
P16F648A     $70 - $7F
P16F630      $54 - $5F
P16F676      $54 - $5F
P16F87       $70 - $7F
P16F88       $70 - $7F
P16F818      $65 - $7F
P16F819      $65 - $7F
P16F870      $70 - $7F, $B5 - $BF
P16F871      $70 - $7F, $B5 - $BF
P16F872      $70 - $7F, $B5 - $BF
P16F873/873A $74 - $7F
P16F874/874A $74 - $7F
P16F876/876A $70 - $7F
P16F877/877A $70 - $7F
P18F242/442  $02F4 - $02FF
P18F252/452  $05F4 - $05FF
P18F248/448  $02F4 - $02FF
P18F258/458  $05F4 - $05FF
P18F1220     $F4 - $FF
P18F1320     $F4 - $FF
P18F2220/4220 $01F4 - $01FF
P18F2320/4320 $01F4 - $01FF
P18F2331/4331 $02F4 - $02FF
P18F2431/4431 $02F4 - $02FF
P18F2680/4680 $0CF4 - $0CFF
P18F6520/8520 $0EF4 - $0EFF
P18F6620/8620 $0EF4 - $0EFF
P18F6720/8720 $0EF4 - $0EFF

Whenever ICD2 compatibility is enabled, the compiler will automatically deduct the reserved RAM from the available RAM within the PICmicro, therefore you must take this into account when declaring variables. Remember, there aren't as many variables available with the ICD enabled. If the ICD is enabled along with hardware interrupts, the compiler will also reserve the RAM required for context saving and restoring. This also will be reflected in the amount of RAM available within the PICmicro.

Por eso no se puede debuggear cualquier micro, y tambien por eso solo se nombra lo necesario.

En resumen, para entender mas sobre debug, a leer el data del pic que se use, y tener en cuenta que el que usemos
esté dentro de la lista de arriba.

Y si mal no recuerdo, algo así sucedia con Pprint que ya no recuerdo claramente por que la uso.  :D

Espero no haber cometido equivocaciones en lo expresado, y si es así me gustaría que me corrijan por favor.  :mrgreen:

Desconectado PAWA

  • PIC10
  • *
  • Mensajes: 32
Re: ICD con Proton
« Respuesta #9 en: 28 de Septiembre de 2007, 18:37:27 »


[Intentaste con el debugger de Protón?]

Me imagino que tu pregunta es si estoy utilizando el debugger de proton.

Si es el que estoy utilizando pero creo que me falta la licencia del ICD de proton para que funcione.


Desconectado RALF2

  • Moderador Local
  • PIC24H
  • *****
  • Mensajes: 2062
Re: ICD con Proton
« Respuesta #10 en: 28 de Septiembre de 2007, 19:38:53 »
Hola lordlafebre!
Gracias por tu comentario, ya me esta tirando los pocos pelos que me quedan buscando la instruccioncita :mrgreen:

Deberas es como tu dices el debug depende del tipo de pic y me parece que es para utilizar el icd2 de microchip o cualquier otro creo  :mrgreen:

Bueno esa son algunas de las cositas que trae el proton y que no explica muyyy bien.

El pwrte on es el fuse para habilitar el retardo de 75ms para estabilizar el oscilador del pic.

El pprint deshabilita las rutinas propias del comando print, y carga una nueva libreria la cual permite trabajar con distintos tamaños de letras entre otras cosas.

Saludos

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
Re: ICD con Proton
« Respuesta #11 en: 29 de Septiembre de 2007, 00:20:21 »
Hola:

Pues es hata ahora que lo mencionas que recuerdo para que era el pprint. buena aclaración  :wink:

Desconectado RALF2

  • Moderador Local
  • PIC24H
  • *****
  • Mensajes: 2062
Re: ICD con Proton
« Respuesta #12 en: 29 de Septiembre de 2007, 12:20:17 »
De nada lordlafebre!

La semana que viene me llegan los pic18f2550 para comenzar a explorar lo de la comunicacion por usb y unas tarjetas con el FT232R.

Si se me tranca el cerrucho estare por aqui pidiendo S.O.S.

Saludos

Desconectado raraavis

  • PIC10
  • *
  • Mensajes: 47
Re: ICD con Proton
« Respuesta #13 en: 10 de Noviembre de 2007, 20:07:06 »
Hola PAWA:

No me gusto la contestacion que te dio este muchacho Ecuatoriano, ( y menos mal que fue sin animo de ofender).
encima parece que el tampoco leyo correctamente la ayuda porque lo que dijo es INCORRECTO !   :mrgreen: :mrgreen: :mrgreen:

Esto es lo que dice la Ayuda:

Code Overhead



When you build a project using the Compile for ICD   button, a special header is included during the build (you won't see this normally, unless you examine the ASM file). This additional code is used to enable your microcontroller and the PC running P-ICD to communicate with each other. In addition, Proton™ will add a special set of instructions before every line of your PICBasic code in order to inform the P-ICD Explorer  of its current address and status of the stack.

As a result, your final hex file size will be larger than a program compiled normally. File sizes will vary, depending on the processor selected and the length of your source code.

Therefore the amount of overhead instructions added to your actual code will be 3-4 for the PIC™ 16 series and down to only 1 for the PIC™ 18 series. Obviously, as your program size increases, so does the size of the code inserted during an P-ICD compile .

Fortunately, you can control the amount of debugging information added to your P-ICD build by using the PROTON™ PICBasic ENABLE DEBUG and  DISABLE DEBUG directives. For example, within the sample.bas program, comment the ENABLE DEBUG on line 6 (see Note ) then add the following Enable Debug .. Disable Debug  directives as in commented lines below :


FLOAT_SIN:
   SIN_ACC = 0
   SIN_N = 0
   Repeat
      VALUE = -1
      N = SIN_N
      GoSubPOWER
      XSTEP = ACC
      VALUE = SIN_VALUE
      N = (SIN_N * 2) + 1
      GoSubPOWER
      Enable Debug                       '<<<< ADD THIS LINE
      XSTEP = XSTEP * ACC
      N = (SIN_N * 2) + 1
      GoSub FACTORIAL
      XSTEP = XSTEP / ACC
      If XSTEP > 0 Then If XSTEP < 0.00000001 Then Return
      If XSTEP < 0 Then If XSTEP > -0.00000001 Then Return
      SIN_ACC = SIN_ACC + XSTEP
      IncSIN_N
      Disable Debug                     '<<<< ADD THIS LINE
   Until SIN_N > 5
   Return



By doing this, the build size will be smaller, because the debugging code generated will be that between the ENABLE DEBUG and  DISABLE DEBUG directives. By default Debugging is Disabled so just wrap the code you want the P-ICD to control with ENABLE DEBUG and DISABLE DEBUG.  Keeping debugging to just the sections you actually require will provide a considerable reduction in code overhead for large programs.

In the example above, the P-ICD debug code is only added between the ENABLE DEBUG and DISABLE DEBUG compiler directives.




Saludos y suerte.

Desconectado Marioguillote

  • Moderador Local
  • PIC24H
  • *****
  • Mensajes: 1926
    • Servisystem
Re: ICD con Proton
« Respuesta #14 en: 11 de Noviembre de 2007, 12:20:50 »
 :-/ Bingo !  :-/

"Dos pájaros de un sólo tiro", le diríamos por aquí !

Aprovechando tus conocimientos de Inglés (te confieso que no sé leer más de dos palabras seguidas), sumado a tu dominio del Protón, podrías traducir el texto que expusiste, pero en castellano ?
Muchos que no sabemos Inglés y estamos iniciándonos con el Protón Lite, te vamos a estar agradecidos.

Además por lo visto, tú tienes una versión muy nueva y seguramente completa de Protón. Cuánto lo has pagado ? Ése es el que viene con llave USB ?

Una última cosita.
Si puedes detallar la ayuda, y lo haces en base al ejemplo del amigo PAWA, estaría bárbaro.

Saludos.
Mario