TODOPIC

Microcontroladores PIC => - Niple - => Mensaje iniciado por: Torino_ZX en 30 de Mayo de 2005, 19:08:00

Título: Ventajas y desventajas?
Publicado por: Torino_ZX en 30 de Mayo de 2005, 19:08:00
Cuales serían las ventajas y desventajas de Niple con respecto a asm, u otros idiomas?
Si empiezo con Niple, vale la pena incurcionar en otros idiomas para programar PICs?

Salu2
Título: RE: Ventajas y desventajas?
Publicado por: marmatar en 31 de Mayo de 2005, 08:54:00
Hola Torino ZX... (viendo tu nik no dudo de tu país de origen...Giño )

Si bien en realidad lo ideal sería que ésto te lo responda Canito, te voy adelantando algo...
...el Niple es un lenguage mayormente gráfico, muy amigable, que permite con conocimientos básicos de PIC , crear en base a diagramas de flujo un programa.
ésto significa que, cada parte de éste diagrama es una especie de makro, que combinado con la posibilidad de configurar los puertos del dispositivo en forma gráfica, y algunos datos específicos de cada desarrollo termina generando un código de peso respetable.
Ventajas:
 Tienes rutinas resueltas, como comunicación serie por soft, comunicación serie por USART, manejo de LCD, Comunicación I2C, etc... que aceleran mucho la programación. En definitiva, es muy ameno y sencillo hacer programas de una complejidad media.
Limitaciones:
Si bien se han ampliado la cantidad de dispositivos PIC para los que se puede usar Niple todavía son pocos (16F84 / 16F877 / 16F628 / 627 / 648), sigue habiendo un Niple para dispositivos de 28 pines y otro para los de 40... o sea, no es un Niple general que permite general código para cualquiera de los dispositivos disponibles. (No dudo que la cantidad de dispositivos seguirá creciendo en un futuro próximo)

Conclusión...
...es una muy buena opción para aprender la estructura de programación del PIC y su funcionamiento, es rápido, confiable y seguro para aplicaciónes sencillas hasta medias, pero para aplicaciones complejas deberás incluir subrutinas de código asm, por lo que no podrás zafar de conocer ése lenguaje.

Con respecto a otros lenguajes de programación, por ejemplo ... Pic Basic pro, Pic Basic Plus, ... tienen una complejidad de aprendizaje baja, si has tenido agún contacto con la programación basic para PC, es muy similar, con instrucciones específicas para PICs y con instrucciones tipo makro que permiten tener resueltas ciertas funciones, principalmente de comunicación, representación LCD, conversión A/D, etc.
Se complica cuando hay que utilizar punto flotante o algoritmos complejos para generar gráficas por ejemplo, en éstos casos el código resultante es bastante pesado en comparación al de ASM.-
De los otros lenguajes (hay otros como PIC-Pascal, etc...), el mas común es el C, es mas dificil de aprender, pero para el caso de aplicaciones complejas, uso de GLCD, gráficos, PID, movimientos coordinados de motores, etc... se transforma en muy útil y hasta imprescindible.
Si en el futuro pretendes utilizar PICs de la línea 18Fxxx, o dsPIC, el uso del C , diría yo que es inevitable, la tendencia de los entornos IDE de Microchip es hacia aquí. Además el código resultante es algo mas acotado que en el resto de los lenguajes, por lo que aprovechas mas la memoria.
Con respecto al ASM, te acercas mas al PIC propiamente dicho, por lo que el código resultante de la compilación es bien ajustado.
Es bastante complicado de entender, pero no imposible, y de cualquier manera es necesario (aunque no imprescindible) conocerlo.
En muchas ocasiones es necesario insertar bloques de ASM en lenguajes de alto nivel como PicBasic , C o incluso Niple para para programas específicos, (por ejemplo protocolos de comunicación embebidos, etc), por lo que , tarde o temprano deberás usar algo de ASM.

Cerrando el comentario...
... el Niple es bueno para aprender, pero aún tiene sus limitaciones, es muy bueno para ver resultados casi instantáneos.
El aprendizaje de otros lenguajes es necesario, deberás elejir cual te resulta mas útil, y el ASM deberás al menos conocerlo.

Para terminar, les reproduzco un mensaje que me enviaron de Niple acerca de novedades sobre el producto.


Estimado Usuario,

Tenemos el agrado de dirigirnos a Ud. para  informarle que ya esta disponible la versisn 3.0 de Niple.

Esta nueva versisn incluye los modelos de 40 pines de la lmnea 16F87x y ademas se incorporan nuevos msdulos como el manejo de memorias EEPROM I2C y manejo de reloj/calendario de tiempo real PCF8583 por I2C.
La versisn de Niple para PIC 16F87x le permite importar un proyecto de un micro de 28 pines a uno micro de 40 pines.

Ademas, ya esta disponible la versisn de Niple para PIC16F6xx que incluye los modelos de PIC 16F627, 16F628 y 16F648. Estos modelos (de 18 pines) son compatibles con el PIC16F84 y Niple le ofrece la posibilidad de importar un proyecto de 16F84 a los nuevos modelos de PIC 16F6xx, para que Ud. pueda actualizar sus proyectos con el menor esfuerzo.

Entre las principales caractermsticas de los micros de la lmnea 16F62xx podemos destacar:
-   Memoria Flash de 1, 2 y 4 K.
-   Memoria EEPROM 128 o 256 Bytes
-   16 pines I/O
-   2 msdulos comparadores analsgicos
-   1 Msdulo USART
-   1 Modulo CCP (Comparacisn, Captura y PWM)
-   3 Temporizadores internos: TMR0 de 8 bits, TMR1 de 16 Bits y TMR2 de 8 Bits
-   Frecuencia de oscilacisn maxima de 20 Mhz.
-   Pueden ser configurados para funcionar mediante un oscilador interno prescindiendo del cristal.

Desde nuestro sitio web www.niplesoft.net puede descargar las versiones Demo como asm
tambiin los manuales de usuario actualizados.

En este momento estamos implementando un nuevo sistema de venta mediante el cual ya no requiere tarjeta de cridito para realizar la compra. El pago puede realizarlo mediante un giro por Western Union.

Mediante iste sistema de venta, le enviamos un paquete a su domicilio que contiene:
  - 1 CD que incluye:
        - las licencias del software
        - las versiones Demo
        - manuales en formato PDF listos para imprimir
        - software interfaz de comunicacisn RS232

  - 1 Llave electrsnica: El software funciona en la maquina donde se encuentre
conectada la llave.

  - Guma de instalacisn.


Mediante este sistema de distribucisn ya no se requiere del csdigo de licencia y Ud. puede utilizar el software en cualquier PC donde se encuentra conectada la llave electrsnica y ya no debe solicitar una nueva licencia al actualizar su PC.

El paquete lo enviamos a su domicilio y nosotros nos hacemos cargo del costo envmo.

Aprovechamos la oportunidad para consultarle su opinisn acerca del programa como asm tambiin sus crmticas o sugerencias, las cuales nos permiten seguir mejorando el producto dma a dma.

Ademas puede hacernos llegar su consulta o sugerencia por MSN a niple_software@hotmail.com

Un saludo
Jorge Cano
Niple



Un abrazo...
marmatar

NOTA: Por favor si alguien de Niple quiere hacer alguna corrección sobre mis comentarios, que se  sienta libre de hacerlo para el prendizaje de todos.

Título: RE: Ventajas y desventajas?
Publicado por: Torino_ZX en 01 de Junio de 2005, 10:01:00
Compatriota...... que agradable es ver gente con tantos conocimientos por estos pagos Giño

Son de mucha ayuda los datos que me pasas, te lo agradezco, y espero pronto estar haciendo mis proyectos con Pics........ estoy aprovechando todo el tiempo libre, para irme empapando del tema.
Por lo que tengo entendido, el Niple, es invento de gente de Gualeguaychu Entre Ríos ¿es así?......... en que precio handa el programa?

Saludos
Título: RE: Ventajas y desventajas?
Publicado por: _Canito_ en 01 de Junio de 2005, 23:17:00
Hola a todos,

La idea de Niple es facilitar la programacion de los micros al maximo y resulta especialmente util a quienes recien se inician en esta tecnologia.

Yo creo que Niple es mucho mas que una coleccion de macros con la posibilidad de configurar los puertos de forma grafica y algunos datos especificos de cada desarrollo.

En Niple se puede construir todo un proyecto completo de forma grafica y en "lenguaje humano", modificando todas las variables que hacen al proyecto.

El programa es muy interactivo, se establece un permanente "dialogo" con el usuario donde no solo se controla la sintaxis de las intrucciones (eso lo hace cualquier lenguaje) sino tambien se actua sobre la misma estructura logica que se esta disenando.

Niple "construye" el codigo assembler teniendo en cuenta el estado actual del micro en tiempo de ejecucion.
Es decir que el mismo bloque (simbolo dentro del diagrama de flujo) no genera siempre el mismo codigo assembler.
De esta menera se genera un codigo mas optimizado.

Niple incluye todas las instrucciones en assembler y permite generar librerias de rutinas que pueden ser reutilizadas en otros proyectos. Es decir que cualquier funcion se puede programar en assembler.

Niple genera un codigo assembler muy claro, incluso con comentarios.
Esto permite a los usuarios que recien se inician, "aprender" el codigo assembler generado, y a los expertos les permite modificar el codigo para optimizarlo aun mas.

Una de las principales caracteristicas de Niple es que se ocupa de todos los "pormenores" del codigo assembler.

Ademas, continuamente se estan disenando nuevos modulos.

Creo que la gran limitacion del software son los calculos matematicos.
Fuera de esto, se puede desarrollar cualquier estructura logica con gran facilidad.

En este momento estamos trabajando para incluir una libreria de calculos mas amplia.

El motivo de que exista un programa para cada familia de micro se debe a que todo el sistema (registros, opciones, modulos disponibles, pantallas, esquemas, etc) se adapta a las caracteriticas del modelo de micro utilizado.
Si el mismo programa incluyera todos los modelos, un usuario que trabaje con un F84 (por ej.) estaria utilizando un programa "sobredimensionado" para sus necesidades, con funciones y modulos que no se utilizan.
Este es el motivo por el cual decidimos desarrollar distintos programas para cada familia de micros.

Muchas veces escuche que Niple no te permite aprender mas sobre los micros y sobre assembler.
Bueno, eso es una cuestion de actitud personal, a nadie se le impide seguir estudiando o investigando, es mas, creo que es necesario seguir profundizando los conocimientos.
Lo que te ofrece el software, es la posibilidad de desarrollar proyectos en menor tiempo y con menor esfuerzo.

Creo que el hecho de considerar a Niple como un entorno en el cual encarar proyectos de gran embergadura y altisima complejidad es cuestion de tiempo.

Estoy de acuerdo con marmatar, cada uno debe seleccionar sus herramientas segun sus necesidades.

Me gustaria leer mas opiniones.

Niple es desarrollado en la ciudan de Gualeguaychu, Entre Rios, Argentina.

Un saludo a todos
Canito


PD: un detalle (si se quiere leguleyo), Niple no es un "lenguaje", sino un "entorno de desarrollo".  Es un medio para llegar al lenguaje assembler.
Título: RE: Ventajas y desventajas?
Publicado por: batmand en 02 de Junio de 2005, 11:37:00
Bueno, yo no soy para  nada experto en lenguajes ni en pic, pero voya  dar mi opinion como usuario.

Yo me compre la version full del Niple, y en poco tiempo pude tener andando varias cosas medianamente complejas, sin demasiados problemas.

Claro que todo eso fue posible gracias a la ayuda de la gente de este foro, los ejemplos ya hechos de otras personas, y demas, (lo cual agradezco infinitamente de paso) pero el Niple me permitio adaptar rapidamente los programas a mis necesidades.

Desde el primer dia que tuve un pic, me compre el curso de CEKIT completo, y un manual de microcontroladores de la revista saber electronica. Pero si hubiera tenido solo eso, hubiera tardado 6 meses en hacer loq eu hice en un par de semanas.

Por eso, como ya menciono marmatar y Cano, todo depende de tus necesidades. Si tenes 5 horas libres por dia para estudiar y otras tantas para probar, metete con el asm, y vas a realizar los mejores programas.

Pero si no dispones de demasiado tiempo, como la mayoria, creo que el Niple es una excelente opcion.

Por supuesto, esto no siginifica que no hay que leer sobre asm, porque aunque el programa haga muchas cosas solo, por lo menos tenes que saber "que" esta haciendo, aunque no enitendas a la perfeccion "como" lo hace.

Bueno, es un comentario nomas,

Saludos a todos.

Ah, y Torino_ZX, todo bien con tu nick, pero....AGUANTE EL CHIVO!!!!!!!!!!!!!!!!!Sonrisa Gigante