Tuesday, May 31, 2011

Microcomputadoras en un chip


Hace ya tiempo hablé de los microcontroladores Pic, cuyo fabricante es la empresa Microchip. Estos circuitos electrónicos son computadoras completas en un chip. Tienen  puertos de entrada/salida, unidad lógica aritmética, convertidores analógico digitales, etc. Tiene memoria para programar y aparte de tener una arquitectura RISC (Reduced Instructions Set Computing), hay compiladores de Pascal, C y Basic, para no tener que lidiar con el lenguaje de máquina o con el ensamblador de estas simpáticas microcomputadoras.

Los Pics vienen en diversas presentaciones y dependiendo del tipo de aplicación que se quiera, hay una familia de microcontroladores que pueden hacer la tarea encomendada. La versatilidad de estos circuitos es tal que muchos dispositivos que hay en las casas podrían estar controlados port estos chips, con programas específicos que hacen las tareas encomendadas. Es lo que se ha dado en llamar también embedded computing

Pues bien, con el tiempo he seguido aprendiendo del tema y hoy en día se me han ocurrido dos proyectos en donde un microcontrolador pic, con una serie de botones y pantallas de LCD para desplegar resultados, pueden convertirse en dispositivos útiles. Ya hablaré en otra ocasión de estos proyectos. Lo que aquí quiero hacer es mostrarles la última tarjeta de desarrollo que adquirí, la cual es francamente una maravilla.

Se trata del MPLAB Starter Kit for Pic18 MCUs, hecha por Microchip, que se consigue por menos de 1000 pesos y que contiene botones capacitivos (es decir, de uso táctil, con sólo tocar la placa del circuito se simula el presionar un botón), acelerómetro, lo cual permite saber si hay movimiento en los tres ejes, X, Y y Z. Un displasy OLED de color, de 1/4 de una tarjeta VGA. Un chip Pic de 44 pines (Pic18F46J50) con 64Kbytes de memoria Flash, con tecnología para ser usado con muy poca corriente. Tiene también una microtarjeta SD de 2 gigabytes para guardar datos y programas. El paquete viene con una versión reducida (lite) del compilador de C y el medio ambiente de desarrollo MPLAB IDE. Contiene tutoriales, código de demostración, debugger (depurador) integrado y cable USB. Por lo que trae me parece una ganga.

He aquí un video que explica lo que puede hacerse con este kit de desarrollo:



En algún otro mensaje hablaré de los desarrollos que tengo pensados con este kit. Por lo pronto, es un sistema que sin duda podrá ser muy útil en términos de aprendizaje. Seguiremos informando.

6 comments:

beno said...

Hola,

Suena muy interesante. Pero, sin afán de publicidad, ¿donde conseguiste ese juguete tan atractivo?

Saludos!

Fernando Barajas said...

Oye, Morsa: ¿que tal se compara este kit contra un arduino?

¡Saludos!

Morsa said...

Fernando,

parece ser que el Arduino es un interesante microcontrolador, y quizás más de un ingeniero en electrónica lo considere mejor que los Pic de microchip. Sin embargo, la cantidad de desarrollos que hay en software para el Pic lo hacen una buena elección.

Igualmente, si lo ves en términos de literatura al respecto, de Pic hay mucho más que Arduino, aunque entiendo que su plataforma está cobrando mucho interés.

saludos
Manuel

Morsa said...

Beno,

Lo conseguí con la gente que me da un curso de microcontroladores y USB. Su sitio es: http://www.i-micro.com/version2/index.htm.

Si te interesa te doy los datos de quien me está dando el curso, etc.

saludos
Manuel

Ernesto said...

Cuando programé un controlador en la maestría, me sorprendió que para leer un botón de hardware, tienes que hacer una rutina para amortiguar la señal de botón cuando se cierra o abre el circuito.

Los botones en realidad oscilan cuando cambian de estado y si no tienes una rutina para leer los botones apropiada, puedes detectar lecturas falsas, o lecturas múltiples.

Otra cosa que es una buena práctica, es poner la memoria RAM en un estado conocido antes de usarla, para asegurarse que todo funciona bien.

Esto por lo general es un ciclo que escribe la memoria. Imagino que controladores más avanzados ya hacen esto de forma automática, pero en los más sencillos no.

Morsa said...

Así es, Ernesto. Cuando empiezas a trabajar con estos juguetes te das cuenta de muchas cosas que ni siquiera piensas, pero que están presentes en los sistemas de cómputo que usamos contínuamente.

saludos