TODOPIC
Microcontroladores PIC => Programadores => Mensaje iniciado por: remi04 en 22 de Febrero de 2022, 06:38:56
-
Muy buenas. Lo estoy intentando con el pickit 3, tanto en modo MPLAB como en modo aplicación Pickit3.
El micro es detectado correctamente. Puedo leer su id y todo.
Puedo leer su flash pero todo se lee a cero, creo que debería leerse a 0xFFFFFF. Especialmente después de hacerse un Full Erase.
Si le hago un Blank Test me da error ( Program Memory is not blank, starting at address 0x000000).
Por muchos ciclos de Erase que le haga siempre pasa lo mismo.
Y por supuesto, grabar un programa pues pasa lo mismo: ( Programming failed at program memory address 0x000000).
Son dos los chips que tengo, los compré en Aliexpress por que no los he conseguido encontrar disponible en ninguna parte. Pero salvo que estos micros tengasn alguna particularidad que desconozco, pues es la primera vez que estoy intentando programar un dspic30, creo que el problema es que los micros van a ser falsos.
¿Alguna sugerencia).
Adjunto imagen del circuito ICSP como lo tengo conectado.
EDIT: Solucionado.
¿Motivo?. Tonto´rculo. No hay más.
Un compañero que usó mi estación de soldadura había puesto 380ºC para algo que necesitó. Yo acostumbrado a que nadie se mete ni toca mi mesa de trabajo pues no me dio en ningún momento por mirar la pantallita, hasta que la he mirado ((:-)) Ole, y ole.
Tras haber tenido problemas serios también con 6 unidades del 18f26k20 y esos si que eran originales entonces es cuando ya me he puesto a buscar el problema dentro del laboratorio y no fuera. :5]
Disculpas al chino que lo he tachado de enviarme pic falsos.. :D. Menos mal que nunca le dije nada ni le di feedback negativo ni nada...
Ay dios mío la cabeza.
!! REVISAD SIEMPRE LOS PARÁMETROS DE ABSOLUTAMENTE TODO !! No deis nada por sentado nunca.
-
Muy buenas. Lo estoy intentando con el pickit 3, tanto en modo MPLAB como en modo aplicación Pickit3.
El micro es detectado correctamente. Puedo leer su id y todo.
Puedo leer su flash pero todo se lee a cero, creo que debería leerse a 0xFFFFFF. Especialmente después de hacerse un Full Erase.
Si le hago un Blank Test me da error ( Program Memory is not blank, starting at address 0x000000).
Por muchos ciclos de Erase que le haga siempre pasa lo mismo.
Y por supuesto, grabar un programa pues pasa lo mismo: ( Programming failed at program memory address 0x000000).
Son dos los chips que tengo, los compré en Aliexpress por que no los he conseguido encontrar disponible en ninguna parte. Pero salvo que estos micros tengasn alguna particularidad que desconozco, pues es la primera vez que estoy intentando programar un dspic30, creo que el problema es que los micros van a ser falsos.
¿Alguna sugerencia).
Adjunto imagen del circuito ICSP como lo tengo conectado.
Ese error me ha pasado cuando he tratado de energizar al MCU con el programador, pero hay otros dispositivos conectados a VDD y VSS, y el voltaje cae a un nivel que no es útil para programar la memoria flash. ¿De donde proporcionas energía para el MCU?
La energía que proporcionas está correctamente filtrada ¿Tienes colocados capacitores electrolíticos conectados a dicho terminales? (VDD y VSS)
-
Muy buenas. Lo estoy intentando con el pickit 3, tanto en modo MPLAB como en modo aplicación Pickit3.
El micro es detectado correctamente. Puedo leer su id y todo.
Puedo leer su flash pero todo se lee a cero, creo que debería leerse a 0xFFFFFF. Especialmente después de hacerse un Full Erase.
Si le hago un Blank Test me da error ( Program Memory is not blank, starting at address 0x000000).
Por muchos ciclos de Erase que le haga siempre pasa lo mismo.
Y por supuesto, grabar un programa pues pasa lo mismo: ( Programming failed at program memory address 0x000000).
Son dos los chips que tengo, los compré en Aliexpress por que no los he conseguido encontrar disponible en ninguna parte. Pero salvo que estos micros tengasn alguna particularidad que desconozco, pues es la primera vez que estoy intentando programar un dspic30, creo que el problema es que los micros van a ser falsos.
¿Alguna sugerencia).
Adjunto imagen del circuito ICSP como lo tengo conectado.
Ese error me ha pasado cuando he tratado de energizar al MCU con el programador, pero hay otros dispositivos conectados a VDD y VSS, y el voltaje cae a un nivel que no es útil para programar la memoria flash. ¿De donde proporcionas energía para el MCU?
La energía que proporcionas está correctamente filtrada ¿Tienes colocados capacitores electrolíticos conectados a dicho terminales? (VDD y VSS)
Hola. Gracias por la respuesta.
El VDD/VSS se lo cuministro directo desde el propio pickit3, pero solamente está conectado el micro y el pickit, nada mas en el circuito. Es prácticamente una placa expansora que yo mismo me hice a través de Jlpcb.
La placa lo unico que tiene es el micro, con su cristal de 20 Mhz, y los condensadores son los que ves en el circuito. de 0,2 uF colocados justo en cada entrada VDD/VSS incluyendo AGND. Puedo probar a suministrarle 5 voltios externos a la placa, eso no lo he probado.
Un saludo.
-
Muy buenas. Lo estoy intentando con el pickit 3, tanto en modo MPLAB como en modo aplicación Pickit3.
El micro es detectado correctamente. Puedo leer su id y todo.
Puedo leer su flash pero todo se lee a cero, creo que debería leerse a 0xFFFFFF. Especialmente después de hacerse un Full Erase.
Si le hago un Blank Test me da error ( Program Memory is not blank, starting at address 0x000000).
Por muchos ciclos de Erase que le haga siempre pasa lo mismo.
Y por supuesto, grabar un programa pues pasa lo mismo: ( Programming failed at program memory address 0x000000).
Son dos los chips que tengo, los compré en Aliexpress por que no los he conseguido encontrar disponible en ninguna parte. Pero salvo que estos micros tengasn alguna particularidad que desconozco, pues es la primera vez que estoy intentando programar un dspic30, creo que el problema es que los micros van a ser falsos.
¿Alguna sugerencia).
Adjunto imagen del circuito ICSP como lo tengo conectado.
Ese error me ha pasado cuando he tratado de energizar al MCU con el programador, pero hay otros dispositivos conectados a VDD y VSS, y el voltaje cae a un nivel que no es útil para programar la memoria flash. ¿De donde proporcionas energía para el MCU?
La energía que proporcionas está correctamente filtrada ¿Tienes colocados capacitores electrolíticos conectados a dicho terminales? (VDD y VSS)
Hola. Gracias por la respuesta.
El VDD/VSS se lo cuministro directo desde el propio pickit3, pero solamente está conectado el micro y el pickit, nada mas en el circuito. Es prácticamente una placa expansora que yo mismo me hice a través de Jlpcb.
La placa lo unico que tiene es el micro, con su cristal de 20 Mhz, y los condensadores son los que ves en el circuito. de 0,2 uF colocados justo en cada entrada VDD/VSS incluyendo AGND. Puedo probar a suministrarle 5 voltios externos a la placa, eso no lo he probado.
Un saludo.
Yo te recomendaría evitar proporcionar energía desde el programador, también creo que deberías utilizar un capacitor grande, 100 uF o más para mantener el voltaje constante siempre aparte de los capacitores que eliminan las frecuencias altas (0.2uF)
-
Y Desde el MPLABX debes indicarle al PICKIT3 que genere el VCC, porque por defecto no suministra el voltaje.
-
Y Desde el MPLABX debes indicarle al PICKIT3 que genere el VCC, porque por defecto no suministra el voltaje.
Creo que si tiene activado eso, ya que detecta al microcontrolador y lee su ID
El micro es detectado correctamente. Puedo leer su id y todo.
-
te falta el diodo para aislar VPP de VDD en MCLR
in_tenta_asi 1N4148
(https://i.ibb.co/MBG2KKf/icspjpg.jpg)
-
te falta el diodo para aislar VPP de VDD en MCLR
in_tenta_asi 1N4148
(https://i.ibb.co/MBG2KKf/icspjpg.jpg)
¿En serio se necesita eso?
¿Es decir que se programa con 12V en MCLR?
-
te falta el diodo para aislar VPP de VDD en MCLR
in_tenta_asi 1N4148
(https://i.ibb.co/MBG2KKf/icspjpg.jpg)
Nosotros comercializamos un producto con un PIC32 y el bus ICD es como se indica en la figura.
Funciona muy bien cuando descargamos el firmware.
Tampoco hay problemas al depurar con el microcontrolador con el PICKit3 o ICD3.
Lo del diodo recuerdo que es cuando algunos microcontroladores necesitan 12V (¿o 13V?) en MCLR para ser programados
El diodo evita que ingrese 12V a la línea VDD y dañe al microcontrolador y otros dispositivos que estén conectados a esa línea.
-
¿En serio se necesita eso?
¿Es decir que se programa con 12V en MCLR?
si se le ha programado previamente un firmware o protocolo , downloader , ICD etc. de AUTO_grabación interno no hay problema .
(https://i.ibb.co/G5CHTTb/vpp.jpg)
-
si se le ha programado un firmware o protocolo , lowloader , ICD etc. de grabación interno no hay problema .
(https://i.ibb.co/G5CHTTb/vpp.jpg)
(https://c.tenor.com/49IB5z-uEZ4AAAAM/tienes-toda-la-razon-armando-mendoza-saenz.gif)
-
Pues nada, no hay manera. Asumo que los micros son falsos. Quería estar seguro antes de poner a parir al chino en Aliexpress.
He probado al ponerlos al aire directamente conectado al pickit3. Únicamente vdd,GND, vpp, pgc, pgd. Pin a pin sin circuitos ni diodos ni resistencias ni condensadores ni nada, Y nada.
Pickit3 reconoce bien el dspic al arrancar.
Puedo darle a leer, pero me lee todo a 0x000000. Debería leer 0xffffff
Erase parece actuar pero sigue todo a 0x000000 por muchos erase que le haga.
Al grabar da error de verificación nada más empezar. En el primer byte.
Al hacer Blank Test da igualmente error at address 0x000000. Dice que el micro no está en blanco.
Da igual si alimento con 5v externos o con el propio pickit3. Hasta he probado acortando el cable icsp que mide 20 cm a ver si es que es muy largo. Nada.
No pierdo más tiempo. Asumo que son falsos y a seguir buscando como loco a ver dónde comprarlos por que no encuentro nada por ninguna parte.
Saludos a todos y gracias por las respuestas.
-
Pues nada, no hay manera. Asumo que los micros son falsos. Quería estar seguro antes de poner a parir al chino en Aliexpress.
He probado al ponerlos al aire directamente conectado al pickit3. Únicamente vdd,GND, vpp, pgc, pgd. Pin a pin sin circuitos ni diodos ni resistencias ni condensadores ni nada, Y nada.
Pickit3 reconoce bien el dspic al arrancar.
Puedo darle a leer, pero me lee todo a 0x000000. Debería leer 0xffffff
Erase parece actuar pero sigue todo a 0x000000 por muchos erase que le haga.
Al grabar da error de verificación nada más empezar. En el primer byte.
Al hacer Blank Test da igualmente error at address 0x000000. Dice que el micro no está en blanco.
Da igual si alimento con 5v externos o con el propio pickit3. Hasta he probado acortando el cable icsp que mide 20 cm a ver si es que es muy largo. Nada.
No pierdo más tiempo. Asumo que son falsos y a seguir buscando como loco a ver dónde comprarlos por que no encuentro nada por ninguna parte.
Saludos a todos y gracias por las respuestas.
Deberías medir los voltajes en VDD, MCLR respecto a VSS cuando realizas la lectura y programación y también mediante un osciloscopio o un analizador lógico determinar se aparecen las señales de datos y reloj en las líneas ICD.
Aunque como indicas que compraste desde un distribuidor chino los elementos y no funcionan, si no son falsos, tal vez sean reciclados defectuosos.
¿Puedes notar cuales son falsos en los siguientes chips?
(https://images.wsj.net/im-368412/12S)
-
Solucionado.
¿Motivo?. Tonto del culo yo. No hay más.
Un compañero que usó mi estación de soldadura había puesto 380ºC para algo que necesitó. Yo acostumbrado a que nadie se mete ni toca mi mesa de trabajo pues no me dio en ningún momento por mirar la pantallita, hasta que la he mirado ((:-)) Ole, y ole.
Tras haber tenido problemas serios también con 6 unidades del 18f26k20 y esos si que eran originales entonces es cuando ya me he puesto a buscar el problema dentro del laboratorio y no fuera. :5]
Disculpas al chino que lo he tachado de enviarme pic falsos.. :D. Menos mal que nunca le dije nada ni le di feedback negativo ni nada...
Ay dios mío la cabeza.
!! REVISAD SIEMPRE LOS PARÁMETROS DE ABSOLUTAMENTE TODO !! No deis nada por sentado nunca.