viernes, 26 de junio de 2009

Programando pic's desde linux. (IDE)

Entrando a tema...

El corazón de Pikdev y otros como Piklab, con las herramientas que proporciona GPutils que vimos el post pasado. Por ello veremos como ensamblar desde la línea de comandos.

Abrimos nuestra terminal y nos vamos hasta donde tengamos nuestro archivo '.asm' y tecleamos:

[Sugizo@old practicas]$ gpasm -L -o "/media/disk/escuela/Microcomputadoras/practicas/test01b.hex" -w 2 -I "/usr/share/gputils/header" -p p16f877 -a inhx8m -r hex "/media/disk/escuela/Microcomputadoras/practicas/test01b.asm"

Con ello generaremos el archivo .hex, .cod y .lts que usaremos para GPSim.


Pero si lo que queremos es evitar la terminal, siempre existe el entorno gráfico y sencillo de una IDE como Pikdev.

abrimos nuestro .asm seleccionamos el tipo de pic que deseamos usar y le damos F5 y nos hace lo anterior en un solo click.


y así tenemos los mismos archivos con menos esfuerzo. Hay que aclarar que una de las cosas que debemos cuidar es la sintaxis, ya que gpasm es muy estricto en cuanto a declaraciones. Un error es include, MPLab la reconoce tanto en mayusculas como en minusculas, mientras que gpasm sólo en minusculas.

Ejemplo:

__CONFIG _LVP_OFF & _CP_OFF & _PWRTE_ON & _XT_OSC & _BODEN_OFF & _WDT_OFF
list p=pic16f877
include <p16f877.inc>

Uno siempre se siente realizado cuando se ensambla sin ploblemas... Pero eso no indica que haga lo que debiera y seguramente nos dara dolores de cabeza al ver que pasa nada y lo mismo cuando lo grabamos en el chip. Pero para ello esta GPSim...

Para el programador, solo nos interesa el .hex. Por lo que tomamos como basura todo lo demás. Pero ¿Cómo depuramos?

Desde la terminal tecleamos

[Sugizo@old practicas]$ gpsim -s archivo.cod

Esto nos abre un entorno gráfico simple, aburrido y que parece poco eficiente. Pero su elegancia radica en su simpleza.


En el cual podemos tener todo lo necesario en ventanas independientes y que podemos acomodar en todo el escritorio para poder seguir cada paso de nuestro programa y ver en donde nuestra lógica falla.

Desde esta ventana podemos colocar nuestros breakpoints y seguir línea a línea lo que pasa en nuestro código y lo que tenemos en nuestras librerias auxiliares.


Y en esta esquina tenemos a la maravillosa ventana medidora!! El StopWatch que generosamente nos medirá la cantidad de ciclos y tiempo que tarda una instrucción en ejecutarse.

Y aquí lo tenemos en funcionamiento

Entre sus herramientas tenemos los registros de la RAM como de la memoria EEPROM.


El programa de memoria.

Y una placa gráfica de nuestro integrado donde vienen los puertos y los bits de configuración.


Como dicen: He aquí, todo para el programador. Nos veremos en el siguiente post para seguir descubriendo los horrores de dedo y más código para poder hacer de un pic, una útil herramienta.

Programando pic's desde linux. (Intro)



Ya les había presentado código ensamblador para el 8051 de intel en el cual probaba con un emulador escrito en java y que ensamblaba con nams desde la línea de comandos. Pero ahora es diferente y aquel emulador y mi ensamblador no son suficientes para poder seguir en la recta final.

Ahora estamos probando a la familia de los Pic, el cual ya tenia el gusto de conocer al 16F84. Y para seguir en esa misma línea de trabajo nos topamos ahora con un integrante de la familia mas actual. (Nos referimos al pic16F877)

La compañía que se encarga de fabricar estas bellezas, también se encarga de proporcionar una IDE de forma gratuita para su programación, depuración y grabación en el pic por medio de diferentes programadores, tanto propios como de otras empresas. Pero el problema llega cuando no usas Windows... Ups, te dices y te pones a rezar para que emule vía Wine sin problemas.

Así que me dispuse de tiempo para buscar algún programa para hacer esta tarea de forma nativa en linux, busque y busque y los portales derribe. Encontré un proyecto frances llamado Pikdev que ofrece una IDE sencilla para esta titanica tarea. Pero faltaban las librerías de Microchip para poder hacer mas simple la tarea. Así que pude encontrarlas en el proyecto GPutils, el cual dispone de las herramientas necesarias para poder programar pic y que Pikdev usa.

Pero pronto descubrí un problema mayor y que es el dolor de cabeza de cualquier programador en entorno de producción... bugs... Desgraciadamente, Pikdev no cuenta con un debugger para esto... Cansado de buscar una IDE que me lo dirá, me resigne a emular MPLab de Microchip para poder disponer de la herramienta MPSim para el debuggeo del programa que estaba tronando en el circuito... Pero mis esperanzas murieron cuando active el debugger. Corrió, pero jamás depuro...

Buscando un simulador, di con la pagina de GNUpic que es mantenida por Scott Dattalo. En ella encontré a GPSim, un simulador de pic's y con ello complete el labor de programar y debuggear en un entorno Linux sin necesidad de emular.

lunes, 1 de junio de 2009

Todo para el artista: ArtistX


Una de mis pasiones en esta vida es el audio, todo el mundo de las frecuencias y armónicos. Es algo que me entretiene por horas y horas y que por lo general, salen cosas muy buenas de ellas.

Pero ahora que mi enanicima anda jugando con los gráficos en 3D, pensé en hacerle un regalo bastante lindo lleno de software para dicho trabajo y me puse a trabajar secretamente en ello. Buscando programas para 3D y demás, recordé que existe una distribución que se había creado para ello y me puse a buscarla. Para mi sorpresa, acaba de sacar su nueva versión 0.7.

Pasemos al tema

ArtistX es una distribución basada en Ubuntu 8.10 (intrepid) con el Kernel 2.6.27, Compiz Fusion, Genome 2.24, KDE 4.2 y una gran cantidad de aplicaciones para el mundo de los gráficos y multimedia, el cual es una gran alternativa para todo esos fanáticos como mi hermosa niña que se quieren pasar un buen rato creando cosas gráficamente hermosas.

Esta distribución en formato live-cd (Bueno, es un DVD... que genio!!!) puedes descargarla vía torrent y si te preguntas que puede traer ArtistX, aquí les dejamos una probadita de su contenido:

  • Software para gráficos en 2D: Gimp, Inkscape, Nip2, Krita, Cinepaint, Synfig, Rawstudio, Skencil, Hugin.
  • Softwares para gráficos en 3D: Blender, Wings3D, Kpovmodeler + Povray 3.6, K3D.
  • Softwares para video: Cinelerra, Kino, Openmovieeditor, Kdenlive, Pitivi, Avidemux, Devede, y muchos más.
  • Reproductores de mísica y video: Mplayer, Helix Player, Videolan, Xine, Kaffeine, Kmplayer, LastFM y muchos más.
  • Sofware para edición de audio: PD and externals, Rosegarden, Ardour, TerminatorX, Cecilia/Csound, Gnusound, Mixxx y muchos más.
Ahora si: Felices trasos!

jueves, 14 de mayo de 2009

Extra!!! El causante de la pandemia

Después de varias semanas de investigación, se ha dado con el verdadero culpable de la pandemia del nuevo VIH (Virus de la influenza humana)


Ni que hacer.

miércoles, 13 de mayo de 2009

De la música y sus recuerdos.

Ya varios lectores me han pedido que regrese la entrada de recuerdos y música. Hoy les he hecho caso ya que no veo el por que no deba subir mis memorias que son libres.

De la entrada original le he cambiado algunas cosas dejando la idea integra.

A lo largo de mi vida he tenido la fortuna de conocer a varias personas con las cuales he podido hablar de música y de otros temas más que son muy interesantes. Entre muchas platicas con estas personas, uno de estos artistas he llegado a ser Bjork, una cantante y compositora islandesa que desde hace ya varios años he seguido.

Cuando entre a trabajar a la Ford, que se encuentra en Santa Fe, frente a la universidad Ibero Americana.

Cada día me hacia un tour para poder entrar a las 8 de la mañana. Entre microbuseros y metro, lograba llegar al trafico de Vasco de Quiroga hasta el entronque de la autopista México-Toluca. Del cual hemos de decir que es de medio salvaje a muy intenso en las mañanas y tardes. No olvidemos los días de lluvia, por que nadie sale de Santa Fe con eso. Durante ese viaje de cada mañana siempre iba escuchando el iPod (o iPot o aipol) y me hice muy amigo de muchas melodías, algunas que me ponían nostálgico, otras que me llenaban de vigor y otras que solo me hacían pasar un buen rato.


Una vista al presente
Pero entre todas esas canciones, rescatemos una de ellas. “Pagan poetry” de Bjork, cuyos armónicos son tan agradables que es como tener un purgatorio portátil, algo imposible escucharla sin recordar algún dolor en el corazón. Pero a la par te relaja por esos graves que maneja tan acordes que de un zarpazo de suben el ritmo cardíaco y los agudos te hacen caer en un mood muy relax por el simple hecho del sonido de la arpa.


La letra es tan incomprensible como cualquier acto amoroso que uno pueda generar de buenas a primeras. Justificas cualquier cosa durante casi toca la canción, cualquier idea y tratas de purificar y purificarte con ideas, sueños, recuerdos para eliminar cualquier mal sabor de boca. Y todo esto para terminar de golpe aceptando lo que ya sabes y lo que es la realidad. Amas y estas herido, te hieres por amor y solo quieres esperar algo que ni tu mismo sabes.


corazón de ...

Y esto te hace terminar escuchando un track de 3 horas mientras dices: ¿Por qué te haces eso a ti mismo?

Seguiremos en la próxima recordando mas canciones y experiencias de vida.

viernes, 8 de mayo de 2009

Arreglando la vida. (Carpe diem)

Cuando un griego se pone a planear su vida, se sienta a hacer nada, sin hablar con nadie. Cuando le preguntas que hace, te responde "Arreglando mi vida" y sigue en su mismo mood. Después de una semana, se levanta a hacer su vida normal, pero en claro con lo que quiere de ella ya que no hay una chimenea como tu propia chimenea: La casa está donde el corazón.

Desde ayer, quizá desde un día antes algo del viejo pasado regresa para recordarme que el hombre teme el paso del tiempo y no han aprendido que es mejor encender una luz que maldecir la oscuridad que prevalece en sus vidas. Hoy me pongo a planear mi vida, a ver que quiero de ella y que no. A decirle adiós a los trolls amargados de las navidades pasadas y enfocarme a las personas que durante dos años han dado mas que tiempo a mi vida y me ha logrado sacar del hoyo donde me meti por 3 años.

"Lo pasado ha huido, lo que esperas está ausente, pero el presente es tuyo."

La historia se ha terminado.

JE!JE!JE!