Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
diferencias programar pinguino con respecto a arduino?
18-02-2014, 03:12 PM,
#1
diferencias programar pinguino con respecto a arduino?
Hola

¿Alguien sabe donde puedo ver cuales son las diferencias de programación del lenguaje pingüino con respecto a arduino?

Mi intención es portar el código del proyecto http://openenergymonitor.org/emon/buildi...gy-monitor

Gracias!
Reply
20-02-2014, 12:41 AM,
#2
RE: diferencias programar pinguino con respecto a arduino?
Para comentar que he estado haciendo algo de programación cruzada entre ambos entornos, y en lo básico funcionan igual: Hay muchos programas que pasan directamente (copiar y pegar). Otro tema es cuando los programas usan bibliotecas, donde las cosas pueden ser igual, parecidas o diferentes, ver la wiki de Pinguino [1]. Es interesante ver que hay librerias propias de Pinguino mas allá de las de Arduino.

A mi parecer la gran diferencia al programar es en los compiladores: En Arduino es un C++ "rebajado" o "simplificado" que lo hace parecer quizás algo a Java, y en Pinguino de 8 bits es C puro, no hay nada de C++ (debido al compilador SDCC). Esta situación es completamente distinta en Pinguino 32 porque usa GCC y si es posible programar en C++. Por el lado de Arduino, algunas bibliotecas están planteadas en C puro (como la TWI - Two wire interface) y otras en C++ (como la Wire - basada en la anterior).

Mirando el proyecto que mencionas primero habría que convertir la clase EnergyMonitor en variables y funciones globales. No parecen haber dependencias raras ni complicadas, pero si parecer ser necesario un buen conocimiento de los ADC y de los timers del lado de los PICs.

Saludos, Mario


[1] http://wiki.pinguino.cc/index.php/Compatibility
Reply
20-02-2014, 04:09 PM,
#3
RE: diferencias programar pinguino con respecto a arduino?
Gracias Mario78

Estoy traduciendo a español el link http://forum.pinguino.cc/showthread.php?tid=4194&page=2 a español :-) con ayuda de google para aprender como tradujeron la libreria del IRremote a pinguino.
si sabes de mas ejemplos te lo agradeceria. y si fuera un tutorial... eso seria una pasada:-D

no seria posible hacer que pinguino reconociera las librerias de arduino ya que este tambien es libre?
He visto que la carpeta win32\p8\bin hay un archivo llamado sdcpp.exe ese no seria o serviria para compilar las librerias en cpp?

Pinguino para mi tiene una gran ventaja y es que puedes montar uno con muy pocos componentes (si lo montas sin cristal) y hace la placa mas pequeña y facil :-)

Sabes donde puedo aprender sobre ADC y los timers, espero que no sea en los datasheet :-P no los entiendo.

Gracias otra vez
Reply
24-02-2014, 02:09 AM,
#4
RE: diferencias programar pinguino con respecto a arduino?
Hola mirasu:

* Por lo pronto no se de tutoriales para pasar de Arduino a Pinguino. De todas formas, entiendo que la idea de los creadores de Pinguino fue hacer un entorno y un lenguaje compatible, de modo que las diferencias no debieran existir o debieran ser las menores posibles.

* Estuve viendo lo del sdcpp, y la pp es de pre-procesador (no de plus-plus). Es un programa de utilidad llamado por el propio compilador sdcc, entiendo que para pre-procesar las macros y otras directivas al compilador que pudieran haber en el programa C.

* Ahora bien, el proyecto que mencionas EnergyMonitor usa en Arduino una lectura directa del ADC sin pasar por las rutinas normales de Arduino, usando características del micro AVR (que seguro están es su hoja de datos). En los fuentes, en la rutina readVcc menciona justamente dos links [1] y [2] donde se muestran técnicas para hacer esas lecturas directas. Esa rutina no es traducible directamente a PIC, sino que hay que entender porque hizo esto (¿mas precisión? ¿estabilidad? ¿mas rapidez?), y tratar de hacer lo mismo con el PIC (consultando esta vez la hoja de datos del PIC).
Por ejemplo, buscando en google este tema encontré los enlaces [3], [4], [5] que se aplican para los PIC.
En el EnergyMonitor la única rutina "rara" parece ser la readVcc, y no veo otra forma mas que esa: Entender que quisieron hacer en el AVR y hacer lo mismo con el PIC, y si, mirando las hojas de datos.

Saludos, Mario.

[1] AVR http://hacking.majenko.co.uk/making-accu...on-arduino
[2] AVR http://provideyourown.com/2012/secret-ar...ry-voltage
[3] PIC http://www.tigoe.net/pcomp/pic/pic-analog.shtml
[4] PIC http://www.ccsinfo.com/forum/viewtopic.p...hlight=adc
[5] PIC http://es.ciencia.electronica.micros.nar...pic16f877a
Reply
24-02-2014, 04:45 PM, (This post was last modified: 25-02-2014, 03:52 PM by mirasu.)
#5
RE: diferencias programar pinguino con respecto a arduino?
Gracias lo explicas muy bien.

voy a ver bien los links que me has indicado, de momento he echo algunos cambios como indican en el post IRremote pero da algun error al compilar y mucho menos creo que funcione. Pero la pondre aqui cuando no sepa que mas hacerle :-)

Gracias otra vez

edito:

Bueno ya los he leido y por lo poco que entiendo de ADC y el traductor de google :-D veo que el arduino tiene un sistema de "calibrado" de la tension, pero este sistema tiene una tolerancia del 10% asi que como dicen en un link solo es interesante si el arduino se alimenta con bateria. Si usas una fuente de alimentacion estabilizada no es tan necesario.

asi que creo que un problema menos. ahora solo tengo que ver como quitar esa parte y si la tengo que sustituir por algo.
Reply
27-02-2014, 12:40 AM,
#6
RE: diferencias programar pinguino con respecto a arduino?
Referido al tema de la lectura de ADC, hace un tiempo que estuve viendo algunos proyectos para hacer algo asi como un osciloscopio, y encontré estos 2 para Arduino [1] [2], y algo para Pinguino [3]. Al parecer todos trabajan con Processing del lado de la PC.
Cuando disponga de tiempo voy a tratar de implementarlos, tratando de obtener un osciloscopio con código Arduino/Pinguino lo mas idéntico posible, y lo comunicaré por este medio.

[1] http://www.instructables.com/id/Arduino-...illoscope/
[2] http://www.instructables.com/id/Girino-F...illoscope/
[3] http://pinguino.walii.es/?p=169
Reply
08-03-2014, 02:14 AM,
#7
RE: diferencias programar pinguino con respecto a arduino?
muy interesantes, lastima que el que hace referencia a pinguino estan rotos los links :-( me habria gustado verlo

avisa cuando tengas algo para probarlo :-)
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)