2012-05-16 18 views
5

Estoy usando Visual Studio para escribir aplicaciones de escritorio, y me resulta muy fácil de usar y usar.Desarrollo de código incrustado (especialmente para PIC con C18) en Visual Studio

Si es posible, también quiero escribir código incrustado en Visual Studio. Por ejemplo, ¿es posible generar archivos .hex para la serie PIC18Fxxx con C18 o cualquier otro lenguaje similar basado en C?

+0

Ver también http: // stackoverflow.com/questions/4762268/free-alternative-to-mplab-pic-development – Clifford

Respuesta

1

Desafortunadamente, Visual Studio no cuenta con soporte oficial para PIC. Y, nunca oí que alguien haya hecho esto de una manera "no oficial". Siempre ha habido rumores y especulaciones sobre tal característica, pero nunca tienen la oportunidad de hacerse realidad. Entonces, la respuesta es "no", no hay forma de compilar el archivo .hex con el Visual Studio IDE estándar.

+0

esto no es realmente así, IronRuby e IronPython y muchas otras cosas no se ejecutan con VS "estándar", pero VS está diseñado para extenderse para ser se usa como un IDE para lo que quieras y tiene muchas maneras diferentes de agregar herramientas externas –

+0

Probablemente esta no fue la mejor respuesta: la integración no oficial con compiladores externos es más que especulación, la gente lo ha estado haciendo por años. –

7

Hago mucho desarrollo con sistemas integrados, incluido PIC, y para la mayoría uso Visual Studio, principalmente porque me gusta la ayuda VIsual para el trabajo en C.

Lo que sí es objetivo de varios .... así que compilar el código para las herramientas de prueba de unidad de PC y utiliza para probar el código http://code.google.com/p/seatest/

Esto significa poner los talones en el lugar durante todo el hardware relacionado PIC

Entonces usted puede desencadenar herramientas de construcción a través del menú de herramientas, o cambiar a un IDE nativa (como MPLAB) para la depuración en el dispositivo

+0

También estaba pensando en escribir un pequeño programa que ejecute el compilador y convierta todos sus resultados (advertencias/errores) en formatos comptables de Visual Studio para que pueda hacer clic en los mensajes de error y lo llevará a la línea de código en la pregunta –

+0

Hice exactamente eso por un tiempo, para conducir el código incrustado y capturar sus errores, pero cuando un segundo ingeniero se unió al proyecto y se sentía impotente sin depuración de nivel de fuente, terminé cambiando los IDE a uno que se conectara más fácilmente con gdb. Finalmente cambié por completo las plataformas de desarrollo ;-) –

+0

He visto ese instinto antes, por lo general, una vez que alguien realiza pruebas de unidad, puede depurar algo de nivel de fuente, en la PC, y para la mayoría, puede obtener un montón de software trabajando muy Rápidamente, luego de vez en cuando, debe pasar a las herramientas nativas para depurar en un chip (especialmente con PIC, ya que los compiladores tienen la costumbre de generar el código incorrecto a veces *** cara palma ***) –

2

Visual Studio (específicamente Visual C++) se puede utilizar como un editor de código para cualquier código para cualquier objetivo, pero como IDE completo se queda corto.

MPLAB tiene la capacidad de generar un makefile para el proyecto. Puede usar esto en Visual Studio creando un "Proyecto de Makefile" e ingresando el comando de compilación. El archivo MPLAB generado es compatible con GNU make en lugar de MS nmake, tendrá que instalarlo también. Para hacer un uso completo de la navegación por código y las características intellisense de Visual Studio, debe agregar todos los encabezados y fuentes del proyecto a su proyecto de Visual Studio; estos no afectan la compilación, pero se analizarán para exploración de fuente, autocompletado, etc. de línea de comandos o compilador macros sus usos del proyecto también deben añadirse a los valores de creación predefinido, y el camino a cualquier compilador y carpetas cabecera de la biblioteca adicionales también deben ser añadidos al proyecto incluye.

Esto funciona bien y le permite editar y construir su código, pero probablemente solo valga la pena hacerlo para proyectos grandes. La salida del compilador puede necesitar algún masaje para ubicarlo en el formato que VS comprende, por ejemplo, al hacer clic en un mensaje de error lo lleva al archivo/línea apropiado. He usado la utilidad sed de GNU para hacer eso en el pasado. Aún debe iniciar MPLAB para cargar y depurar su código; si está abierto Visual Studio recogerá automáticamente los cambios que realice en MPLAB (¡simplemente recuerde no hacer cambios no guardados en ambos entornos!).

El problema con este enfoque es que no se puede sincronizar el proyecto MPLAB con el conjunto de archivos VS y la configuración; debe hacerlo manualmente.

Otro problema es que, por algún motivo, el archivo MAKE que genera MPLAB no incluye los pasos de publicación/preinicio en la configuración de un proyecto. Puede modificar el archivo MAKE a mano o crear un archivo por lotes que realice los pasos previos/de creación/publicación y llame a eso en lugar de hacerlo en su proyecto.

Cuestiones relacionadas