Programación PIC
Moderador: XRStaff
- alvaro_pasto
- Maestro al volante
- Mensajes: 5082
- Registrado: 04 Sep 2006 00:00
- Volante: Logitech G27
Frex Shift+ - Ubicación: La Coruña
- Contactar:
Re: DisplayXR - Programación PIC
Lo de que los leds de derrape se enciendan al revés también me pasa a mi, supongo que será algo normal. El otro problema es parecido al mío, comprueba que todos los leds estén bien. A mi me venía uno con el ánodo y cátodo al revés, así que compruebalos uno por uno.
Alvaro Vazquez
#15 Top-Racing
#15 Top-Racing
- crobol
- Maestro al volante
- Mensajes: 13867
- Registrado: 28 Abr 2007 00:00
- Volante: DFP
- Ubicación: BCN
- Contactar:
Re: DisplayXR - Programación PIC
Por favor, ya existe un hilo para tratar dudas y problemas de funcionamiento. Este es solo para temas relacionados con la programación del PIC.
Re: DisplayXR - Programación PIC
Tienes razón, lo siento, pasaré mis problemas al otro hilo.crobol escribió:Por favor, ya existe un hilo para tratar dudas y problemas de funcionamiento. Este es solo para temas relacionados con la programación del PIC.
En relación con la programación, ¿es normal que si le das al botón del winpic800 "verificar todo" salga un error de verificación casi al final de la comprobación?.
Saludos
Gelo
Re: DisplayXR - Programación PIC
Otra cosilla con respecto a la programación.
En el winpic800 en la pestaña de configuración me salen estos datos, ¿hay que cambiar algún parámetro, o está bien así?
[img]http://img35.imageshack.us/img35/1492/44147675.th.jpg[/img]
Perdonar por tanta pregunta...
Saludos
Gelo
En el winpic800 en la pestaña de configuración me salen estos datos, ¿hay que cambiar algún parámetro, o está bien así?
[img]http://img35.imageshack.us/img35/1492/44147675.th.jpg[/img]
Perdonar por tanta pregunta...
Saludos
Gelo
Re: DisplayXR - Programación PIC
Sí, eso fue un gambazo mío al hacer el programa de test...alvaro_pasto escribió:Lo de que los leds de derrape se enciendan al revés también me pasa a mi, supongo que será algo normal.
Sí, porque el firmware viene compilado de forma que protege al PIC contra la lectura del mismo. De todas formas, el WinPIC800 va verificando según programa, así que no debería suponer un problema.geloton escribió:¿es normal que si le das al botón del winpic800 "verificar todo" salga un error de verificación casi al final de la comprobación?
Al igual que la protección de lectura, esos parámetros vienen ya configurados en el propio .HEX del firmware. Así que con que cargues el fichero .HEX, te configura automáticamente esos parámetros.geloton escribió:En el winpic800 en la pestaña de configuración me salen estos datos, ¿hay que cambiar algún parámetro, o está bien así?
Saludos!
Re: DisplayXR - Programación PIC
Aquí os dejo un pequeño manual de programación del PIC que he hecho:
_______________________________________________________
Manual de programación del PIC
1. HARDWARE
1.1 El programador
Para programar el PIC18F4550, es necesario disponer de un programador compatible con microcontroladores PIC de Microchip. Los más habituales son los programadores JDM y TE-20, aunque hay más. Estos programadores pueden encontrarse fácilmente, pero si lo deseais, podéis construiros vosotros mismo el vuestro siguiendo las indicaciones de este enlace:
http://perso.wanadoo.es/pictob/jdm.htm
Los programadores JMD y TE-20 utilizan el puerto serie del ordenador para aplicar las señales necesarias para programar el PIC. Un aspecto muy importante es que el programador necesita apróximadamente unos -9V en el puerto serie para poder alcanzar la tensión de programación, por lo que es muy probable que el PIC no pueda ser programado correctamente utilizando un conversor USB-Puerto serie RS-232. Podéis comprobar la tensión de vuestro puerto serie midiendo con un voltímetro entre los pines 3 y 5 del conector DB9 del ordenador. Con un valor de entre -9V y -12V no debería haber problema.
La conexión entre el programador y el ordenador debe realizarse mediante un cable serie plano o punto a punto.
1.2 Equivalencia entre diferentes formatos de PIC
Los PIC de Microchip pueden ser de 18, 28 o 40 patillas en su versión DIP. El PIC18F4550 es un circuito integrado de 40 pines, y es muy probable que nuestro programador sólo disponga de un zócalo de 18 o de 28 pines. Afortunadamente, las señales utilizadas en la programación de los PIC son las mismas en todos los modelos, por lo que podemos programar el PIC utilizando un zócalo diferente.
Para realizar esta adaptación será necesario disponer de una placa de tipo proto-board o similiar en la que podamos pinchar el PIC, y con la que podamos unir los pines del PIC con su equivalente en el zócalo del programador.
Este es el esquema de las equivalencias entre pines de los PIC de 18, 28 y 40 pines:
Y este es un ejemplo de cómo hacer un adaptador para programar el PIC de 40 pines usando un programador JMD con un zócalo del 18 pines:
2. SOFTWARE
2.1 Utilidad de programación
Existen varias utilidades para programar PIC. Nosotros hemos utilizado el programa WinPIC800 y nos ha funcionado correctamente, así que es el que recomendaríamos usar.
Podéis descargar el software aquí: http://www.winpic800.com/
2.2 Configuración del WinPIC800
Tras instalar la aplicación, es necesario configurar el programa para que funcione correctamente con el programador del que dispongamos. Para ello, seleccionamos en el menú: "Configuración" -> "Hardware". Aparecerá una ventana en la que debemos seleccionar el programador del que disponemos, y el puerto serie del ordenador en el que lo tenemos conectado:
A continuación, debemos seleccionar el tipo de PIC que vamos a programar en dos recuadros que aparecen en la parte derecha del programa. Debemos seleccionar "PIC 18F" y "18F4550".
Podemos realizar un test para comprobar que todo está correcto, seleccionando en el menu "Dispositivo" -> "Test Hardware".
2.3 Carga de Firmware en el PIC
Una vez tenemos el programador con el PIC en su sítio, con el cable del puerto serie conectado, y el programa configurado; podemos proceder con la carga del firmware en el PIC.
En primer lugar, seleccionar el fichero .HEX que queremos cargar, eligiendo en el menú la opción "Archivo" -> "Abrir". En la pantalla del programa aparecerá el código hexadecimal, los datos y las opciones con las que se va a programar el PIC. No tocar nada, ya que al cargar el fichero .HEX todo se configura automáticamente.
Para comenzar con el proceso, seleccionar en el menú "Dispositivo" -> "Programar Todo". Aparecerá una barra de progreso que avanzará según se vaya completando la programación del PIC, y en la que aparecerá un mensaje confirmando que el PIC se ha programado correctamente, o bien un mensaje de error en el caso de que algo haya fallado.
___________________________________________
Si encontráis cualquier error o cualquier cosita, decídmelo y lo edito.
Saludos!
_______________________________________________________
Manual de programación del PIC
1. HARDWARE
1.1 El programador
Para programar el PIC18F4550, es necesario disponer de un programador compatible con microcontroladores PIC de Microchip. Los más habituales son los programadores JDM y TE-20, aunque hay más. Estos programadores pueden encontrarse fácilmente, pero si lo deseais, podéis construiros vosotros mismo el vuestro siguiendo las indicaciones de este enlace:
http://perso.wanadoo.es/pictob/jdm.htm
Los programadores JMD y TE-20 utilizan el puerto serie del ordenador para aplicar las señales necesarias para programar el PIC. Un aspecto muy importante es que el programador necesita apróximadamente unos -9V en el puerto serie para poder alcanzar la tensión de programación, por lo que es muy probable que el PIC no pueda ser programado correctamente utilizando un conversor USB-Puerto serie RS-232. Podéis comprobar la tensión de vuestro puerto serie midiendo con un voltímetro entre los pines 3 y 5 del conector DB9 del ordenador. Con un valor de entre -9V y -12V no debería haber problema.
La conexión entre el programador y el ordenador debe realizarse mediante un cable serie plano o punto a punto.
1.2 Equivalencia entre diferentes formatos de PIC
Los PIC de Microchip pueden ser de 18, 28 o 40 patillas en su versión DIP. El PIC18F4550 es un circuito integrado de 40 pines, y es muy probable que nuestro programador sólo disponga de un zócalo de 18 o de 28 pines. Afortunadamente, las señales utilizadas en la programación de los PIC son las mismas en todos los modelos, por lo que podemos programar el PIC utilizando un zócalo diferente.
Para realizar esta adaptación será necesario disponer de una placa de tipo proto-board o similiar en la que podamos pinchar el PIC, y con la que podamos unir los pines del PIC con su equivalente en el zócalo del programador.
Este es el esquema de las equivalencias entre pines de los PIC de 18, 28 y 40 pines:
Y este es un ejemplo de cómo hacer un adaptador para programar el PIC de 40 pines usando un programador JMD con un zócalo del 18 pines:
2. SOFTWARE
2.1 Utilidad de programación
Existen varias utilidades para programar PIC. Nosotros hemos utilizado el programa WinPIC800 y nos ha funcionado correctamente, así que es el que recomendaríamos usar.
Podéis descargar el software aquí: http://www.winpic800.com/
2.2 Configuración del WinPIC800
Tras instalar la aplicación, es necesario configurar el programa para que funcione correctamente con el programador del que dispongamos. Para ello, seleccionamos en el menú: "Configuración" -> "Hardware". Aparecerá una ventana en la que debemos seleccionar el programador del que disponemos, y el puerto serie del ordenador en el que lo tenemos conectado:
A continuación, debemos seleccionar el tipo de PIC que vamos a programar en dos recuadros que aparecen en la parte derecha del programa. Debemos seleccionar "PIC 18F" y "18F4550".
Podemos realizar un test para comprobar que todo está correcto, seleccionando en el menu "Dispositivo" -> "Test Hardware".
2.3 Carga de Firmware en el PIC
Una vez tenemos el programador con el PIC en su sítio, con el cable del puerto serie conectado, y el programa configurado; podemos proceder con la carga del firmware en el PIC.
En primer lugar, seleccionar el fichero .HEX que queremos cargar, eligiendo en el menú la opción "Archivo" -> "Abrir". En la pantalla del programa aparecerá el código hexadecimal, los datos y las opciones con las que se va a programar el PIC. No tocar nada, ya que al cargar el fichero .HEX todo se configura automáticamente.
Para comenzar con el proceso, seleccionar en el menú "Dispositivo" -> "Programar Todo". Aparecerá una barra de progreso que avanzará según se vaya completando la programación del PIC, y en la que aparecerá un mensaje confirmando que el PIC se ha programado correctamente, o bien un mensaje de error en el caso de que algo haya fallado.
___________________________________________
Si encontráis cualquier error o cualquier cosita, decídmelo y lo edito.
Saludos!
- crobol
- Maestro al volante
- Mensajes: 13867
- Registrado: 28 Abr 2007 00:00
- Volante: DFP
- Ubicación: BCN
- Contactar:
Re: DisplayXR - Programación PIC
Pongo una copia del post al principio de este hilo y en el hilo recopilatorio.
Muchas gracias Gabo.
Muchas gracias Gabo.
- willynovi
- Piloto Histórico
- Mensajes: 1177
- Registrado: 17 Mar 2009 01:00
- Volante: 100% DIY, prox. con FFB
- Ubicación: Argentina
- Contactar:
Re: DisplayXR - Programación PIC
Gaboni, termino de leer tu post y me parecio EXPECTACULAR.
Entiendo algo de PIC y esa forma es la que uso para programarlo.
El que siga al pie de la letra ese tutorial no puede tener problemas.
Saludos, y voy a seguir mas de cerca este tema para ver si puedo ayudar en algo.
Entiendo algo de PIC y esa forma es la que uso para programarlo.
El que siga al pie de la letra ese tutorial no puede tener problemas.
Saludos, y voy a seguir mas de cerca este tema para ver si puedo ayudar en algo.
Re: DisplayXR - Programación PIC
Ya está lista la versión 1.1.0 del firmware del PIC, seguramente mañana o pasado estará ya en el topic recopilatorio para que lo podáis bajar. Los cambios con respecto a la versión 1.0.0 son:
Saludos!
- Se corrige el error en los botones 13-24, por el cual los botones se quedaban presionados y no se liberaban.
- Se añade el parámetro 13 para poder deshabilitar los ejes X e Y analógicos. El parámetro 13 puede ser cambiado con la aplicación de Test del Display, pero no se podrá modificar desde los conmutadores desde el volante. Si el parámetro 13 está a 0, no funcionará ninguno de los ejes, quedando fijos en la posición central. Si está a 1, sólo funciona el eje X y si está a 2 sólo funciona el eje Y. Estableciendo el valor a 3, funcionarán los dos ejes, el X y el Y.
Saludos!
- ldtime
- Recien salido a pista
- Mensajes: 74
- Registrado: 17 Dic 2008 01:00
- Volante: g25
- Ubicación: Santiago de Compostela
- Contactar:
Re: DisplayXR - Programación PIC
Pues tendre que hacerme con un programador para ir haciendo pruebas y tal, ya no hay excusa con el pedazo de manual y la nueva revision de firmware. ¡¡Menudo foro de soporte del XRDisplay!!
Re: DisplayXR - Programación PIC
Son necesarias las DOS resistencias, o en el caso de utilizar el zocalo de 28 son necesarias las dos.
Un saludo
[img]http://img.photobucket.com/albums/v188/ ... ia_PIC.png[/img]
Un saludo
[img]http://img.photobucket.com/albums/v188/ ... ia_PIC.png[/img]
Re: DisplayXR - Programación PIC
Un apunte: Si se utiliza un zócalo de 28 pines, no es necesario conectar el pin 24.rafa1978 escribió:Son necesarias las DOS resistencias, o en el caso de utilizar el zocalo de 28 son necesarias las dos.
Un saludo
- willynovi
- Piloto Histórico
- Mensajes: 1177
- Registrado: 17 Mar 2009 01:00
- Volante: 100% DIY, prox. con FFB
- Ubicación: Argentina
- Contactar:
Re: DisplayXR - Programación PIC
Gaboni, pues solo un comentario, que a mi me resulta cómodo a la hora de trabajar con los PIC.
Seguramente el XRDisplay no llevara muchas mas actualizaciones ya que veo lo has pensado muy bien, o almenos esta en sus etapas finales de desarrollo, pero me queda por hacerte una pregunta:
Has pensado en incorporar un BootLoader (como el que yo configuré la controladora) para que la actualización del Firmware del PIC sea mas sencilla y no sea necesario retirar el micro de la placa? Si es así como ahora se hace?
Simple comentarios, de todas formas el laburo que te has tirado pues es EXPECTACULAR!!!
Saludos,
Seguramente el XRDisplay no llevara muchas mas actualizaciones ya que veo lo has pensado muy bien, o almenos esta en sus etapas finales de desarrollo, pero me queda por hacerte una pregunta:
Has pensado en incorporar un BootLoader (como el que yo configuré la controladora) para que la actualización del Firmware del PIC sea mas sencilla y no sea necesario retirar el micro de la placa? Si es así como ahora se hace?
Simple comentarios, de todas formas el laburo que te has tirado pues es EXPECTACULAR!!!
Saludos,
Re: DisplayXR - Programación PIC
Hola willy,
No he probado nunca a cargar el firmware del PIC a través de USB (sí por RS232), ni siquiera se si se podrá hacer o no. Pero si se puede y es relativamente sencillo hacerlo, podría ser una mejora bastante interesante.
Gracias por la propuesta.
Un saludo!
No he probado nunca a cargar el firmware del PIC a través de USB (sí por RS232), ni siquiera se si se podrá hacer o no. Pero si se puede y es relativamente sencillo hacerlo, podría ser una mejora bastante interesante.
Gracias por la propuesta.
Un saludo!
- willynovi
- Piloto Histórico
- Mensajes: 1177
- Registrado: 17 Mar 2009 01:00
- Volante: 100% DIY, prox. con FFB
- Ubicación: Argentina
- Contactar:
Re: DisplayXR - Programación PIC
Gaboni, pues si es mucho mas comodo, de todas formas creo que no se necesitaran muchas mas actualizaciones del firmware.
Date una vuelta por la pagina de microchip y bajate el Framework MCHPUSB que esta todo ahi dentro.
aunque creo te tu trabajas con el compilador CCS y no el C18, pues creo hay tb versiones de bootloader para varios compiladores.
Si necesitas una mano, avisame.
Saludos
Date una vuelta por la pagina de microchip y bajate el Framework MCHPUSB que esta todo ahi dentro.
aunque creo te tu trabajas con el compilador CCS y no el C18, pues creo hay tb versiones de bootloader para varios compiladores.
Si necesitas una mano, avisame.
Saludos
Re: DisplayXR - Programación PIC
Ok, le echaré un vistazo en cuanto saque un ratillo.
Gracias
Gracias
Re: Programación PIC
Saludos a todos...
Me he encontrado el siguiente adaptador para los que tenemos el Te-20, y de este modo aprovecharlo para programar el pic del Display
http://webs.ono.com/cucaracha/adaptadorTE20.htm
Me preguntaba, si habia alguna diferencia al no incluir la resistencia de 1 k, que en el esquema de Gaboni aparece.
Un saludo.
inigohe
Me he encontrado el siguiente adaptador para los que tenemos el Te-20, y de este modo aprovecharlo para programar el pic del Display
http://webs.ono.com/cucaracha/adaptadorTE20.htm
Me preguntaba, si habia alguna diferencia al no incluir la resistencia de 1 k, que en el esquema de Gaboni aparece.
Un saludo.
inigohe
Re: Programación PIC
Ese vale perfectamente, ya que la resistencia sólo es necesaria si se adapta de uno de 18 pines al de 40.
Un saludo!
Un saludo!
Re: Programación PIC
una pregunta tontisima... esta bien conectado? ¿seleccionaste el COM apropiado?
un saludo
un saludo
- jamapa
- Aprendiendo a cambiar manual
- Mensajes: 281
- Registrado: 20 Jun 2006 00:00
- Volante: G25
- Ubicación: Asturias
- Contactar:
Re: Programación PIC
Pues si.noalone escribió:una pregunta tontisima... esta bien conectado? ¿seleccionaste el COM apropiado?
un saludo
Y cuando le doy al test de hardware,con el win800,es lo que me pone,es como si no me reconociera el programador.
- willynovi
- Piloto Histórico
- Mensajes: 1177
- Registrado: 17 Mar 2009 01:00
- Volante: 100% DIY, prox. con FFB
- Ubicación: Argentina
- Contactar:
Re: Programación PIC
en tu PC tienes un puerto RS232 o usas un adaptador de USB a RS 232?
Si es asi, que usas un adaptador, entonces el programador no te funcionará, porque necestita mas tension desde la PC para programar el micro .
Cualquier cosa avisa
Si es asi, que usas un adaptador, entonces el programador no te funcionará, porque necestita mas tension desde la PC para programar el micro .
Cualquier cosa avisa
Re: Programación PIC
otra cosa, usas portatil o sobremesa... los portatiles que traen com, no funciona porque no le suministra la tension adecuanda... hay que andar con convertidores TTL y demas. Si usas conversor USB-RS232 tampoco funciona por lo que dice willy
- jamapa
- Aprendiendo a cambiar manual
- Mensajes: 281
- Registrado: 20 Jun 2006 00:00
- Volante: G25
- Ubicación: Asturias
- Contactar:
Re: Programación PIC
El ordenador es de sobremesa:
La placa es esta http://www.giga-byte.es/products/mb/spe ... 5-dq6.html
Y el cable RS232 va directo sin ningun adaptador Usb
El SO es XP
La placa es esta http://www.giga-byte.es/products/mb/spe ... 5-dq6.html
Y el cable RS232 va directo sin ningun adaptador Usb
El SO es XP
Re: Programación PIC
Saludos a todos...
Os pongo el link de un sencillo programador, de hasta pics de 40 patillas, alguno de vosotros ya lo conocereis, se llama Pipo2, y aparentemente es muy sencillo de realizar y con una flexibilidad en cuanto a opciones de programación, digamos asombrosa.
[img]http://213.97.130.124/progs/pipo2/img/foto1.JPG[/img]
http://213.97.130.124/progs/pipo2/pipo2.htm
Por cierto, muy barato .
inigohe
Os pongo el link de un sencillo programador, de hasta pics de 40 patillas, alguno de vosotros ya lo conocereis, se llama Pipo2, y aparentemente es muy sencillo de realizar y con una flexibilidad en cuanto a opciones de programación, digamos asombrosa.
[img]http://213.97.130.124/progs/pipo2/img/foto1.JPG[/img]
http://213.97.130.124/progs/pipo2/pipo2.htm
Por cierto, muy barato .
inigohe