SoloCodigo

Programación Específica => Matlab => Mensaje iniciado por: chico_pic en Jueves 27 de Enero de 2011, 06:00

Título: matlab puede?
Publicado por: chico_pic en Jueves 27 de Enero de 2011, 06:00
HOLA BUEN DIA.

Tengo una duda en cuanto a lenguajes de programación

Descripción:
Elabore un programa ejecutable (.exe) en LABVIEW 2009 el cual tiene comunicación con un PIC18F4550 vía USB FULL SPEED  mientras desarrollaba el programa en la PC me solicito un programita adicional y complemento de LABVIEW que se llama NI-VISA y dentro de este entorno pude crear el driver (controlador) para mi dispositivo.

El cual consiste en:

1.- envió 5 bytes al PIC por medio del puerto usb
2.- espero 2 milisegundos y recibo 5 bytes del PIC
3. los primeros 3 bytes los grafico como temperatura y 2 bytes los visualizo en binario (led)
4.- espero 500 milisegundos y de nuevo el paso 1

Cuando finalmente termine mi software me entere que para poderlo ejecutar en alguna otra PC debía tener instalados otros programitas adicionales que se llaman RUN TIME ENGINE y NI-VISA lo cual no me gusto
En resumen tengo que tener:

1.- RUN TIME ENGINE
2.- NI-VISA
3.- DRIVER (controlador)
4.- EL PROGRAMA EJECUTABLE (el que desarrolle)

En lo personal solo esperaba
1.- EL EJECUTABLE
2.- EL DRIVER

 Viendo este pequeño problema que NO me gusto opte por conocer nuevo lenguaje de programación en el cual se cumplieran las condiciones que quiero como puede ser

JAVA, DELPHI, MATLAB, VISUAL (Studio, Basic , c, c++ etc.)  O algún otro.


Las preguntas son para los conocedores de algún otro lenguaje de programación:


Cual programa me recomiendan???
Que programa usan???
En el programa que usan es posible crear lo que quiero???


No se si documente bien mi problema y lo que quiero…

Saludos
Título: Re: matlab puede?
Publicado por: m0skit0 en Jueves 27 de Enero de 2011, 12:04
Para asuntos de bajo nivel como esos, C es el lenguaje más recomendable. Obviamente no uses VB, Java, Delphi, Matlab, C#... Estos lenguajes no fueron diseñados para eso (contrariamente a C que sí fue diseñado para ello).
Título: Re: matlab puede?
Publicado por: Geo en Domingo 13 de Febrero de 2011, 18:33
Cita de: "chico_pic"
Cuando finalmente termine mi software me entere que para poderlo ejecutar en alguna otra PC debía tener instalados otros programitas adicionales que se llaman RUN TIME ENGINE y NI-VISA lo cual no me gusto
Todos los programas que utilizan alguna biblioteca no incluída por defecto en el sistema operativo requieren la instalación de dichas bibliotecas, ya sea que se distribuya la aplicación con dichas bibliotecas o se requiera la instalación por parte del usuario final.

Cita de: "chico_pic"
JAVA, DELPHI, MATLAB, VISUAL (Studio, Basic , c, c++ etc.)  O algún otro.
Por ejemplo, Java requiere que el usuario tenga instalada una máquina virtual de Java para su sistema operativo, MATLAB también necesita de sus bibliotecas en tiempo de ejecución (runtime), Delphi y Visual C++ no requieren nada adicional cuando solamente han utilizado funciones de la API de Windows que ya están instaladas en el sistema, Visual Basic también requiere de los archivos "runtime", generalmente ya instalados por Windows o por algún programa que el usuario instaló antes. Eso en cuanto a las versiones pre .NET, pero en cuanto a las más recientes que usan .NET necesitan la instalación de la versión adecuada del  framework .NET, nuevamente, en muchas ocasiones facilitado porque los sistemas operativos ya la traen instalada por defecto (Windows Vista y Windows 7).

Eso en cuanto a archivos "runtime", recuerda que también necesitarás aquellas bibliotecas con las que se enlace tu programa, por ejemplo, para el caso de aplicaciones que usan la biblioteca MCHPUSB de Microchip para comunicarse con sus microcontroladores por medio de USB, el usuario debe tener el archivo DLL correspondiente, aunque es más sencillo en estos casos distribuirlo al lado de la aplicación.

Cita de: "chico_pic"
Cual programa me recomiendan???
No confundas lenguajes de programación con programas: Visual C++ es un entorno de desarrollo (programa) para desarrollar aplicaciones en lenguaje C++, de manera similar, C# es el lenguaje y Visual C# un entorno para desarrollar aplicaciones en ese lenguaje.
Te recomiendo el lenguaje y herramienta que más te guste o en el que te sientas cómo desarrollando, para algo sencillo como la aplicación que mencionaste sería muy práctico hacerlo por ejemplo en C#, Delphi o Visual Basic.
Cita de: "chico_pic"
Que programa usan???
En el programa que usan es posible crear lo que quiero???
En cuanto a una aplicación similar a la tuya, he usado:
También toma en cuenta que, dependiendo del lenguaje, entorno y bibliotecas con las que hagas tu programa, será más fácil o rápido realizar ciertas cosas, por ejemplo, en LabVIEW o MATLAB es muy fácil desplegar la gráfica de una señal, mientras que en C# tuve que invertir más tiempo en poder hacer esto (aunque tampoco es que haya sido algo demasiado complicado), aquí un previo de la aplicación que hice:

[youtube:18c9gc6j]http://www.youtube.com/watch?v=0u_0ygGCzk0[/youtube:18c9gc6j]

El tiempo invertido sería simliar para una aplicación con Visual Basic.
Las aplicaciones en C++ las hice para realizar pruebas de transmisión y verificación de datos, en modo consola.

Espero que todavía te sean de utilidad mis comentarios.