Microcontrollers
  RETURN    
             
   
     
  Página que contiene: Sobre los siguientes micros:
  — Documentación Fujitsu MB90F543
  — Ejemplos de código Cypress CY8C26443
  — Enlaces indispensables Microchip 16F876, 16C717
    Texas MSP430 de muy bajo consumo
    Motorola 68HC11
     
       
             
   
 
Fujitsu MB90F543 Introducción Documentación Ejemplos Enlaces
 
     
 
Introducción
 
  Microprocesador perteneciente a la familida F²MC-16LX de 16 bits del fabricante.
Su principal ventaja es la de contar con gran variedad de periféricos, unido al buen dimensionamiento de su memoria flash de programa (256 Kbytes).
Existen diversas variantes dentro de la familia, que nos permite elegir según nuestra aplicación particular, pero siempre se debe tener en cuenta que se utiliza uno de los puertos serie disponibles para la depuración, es el único inconveniente de esta familia. Los preferidos son:
      Serie MB90580/85: con 5 UART serie y otros periféricos.
      Serie MB90540G: 2 UART serie, 2 CAN y otros periféricos.
La ventaja del puerto CAN es que permite conectar multitud de dispositivos dentro del mismo bus sin tener que preocuparte del acceso al medio: los puertos CAN se ocupan de resolver los conflictos que ocasionan las colisiones y no hay que preocuparse en realizar por firmware los protocolos tipo polling usuales. Su funcionamiento es tan sencillo que se podría utilizar como bus de comunicaciones entre microprocesadores en una gran placa aplicación. Su velocidad máxima de transmisión es de 1 Mbps.
Todos ellos diponen de un elevado número de pines (100), lo que da de sobra para cualquier aplicación industrial que se nos presente.
 
     
 
Documentacion
 
  No hay mucha documentación de la familia:
Ver en la página de Fujitsu las hojas del fabricante, para la serie MB90540G:
      — Datasheet
      — Manual Hardware  (11Mb)
      — Correcciones al manual anterior.

Lo mejor son los ejemplos, de ellos se aprende rápidamente los registros a manipular dependiendo del periférico que necesitemos.

 
 
Ejemplos
 
  Se presentan a continuación algunos ejemplos que se han realizado con la placa de desarrollo TBR-FDS-2002 presentada en estas páginas:


— Ver CD 41
 
 
Enlaces
 
  El sitio de fujitsu dedicado a esta familia:
Sitio de FUJITSU. Seleccionar Microcontrollers, 16 bit devices.

Foro de discusión de Accemic, donde se ponen en común conocimientos y experiencias acerca de esta familia. El registro es gratuíto.

Foro de discusión Elektroda. Este sitio no es específico de este micro, pero seguro que hay algo sobre él, en realidad, aquí hay de todo.
 
     
       
             
   
 
Cypress CY8C26443  Introducción Documentación Ejemplos Enlaces
 
      
 
Introducción
 
  Microprocesador perteneciente a la familida PsOC (8-Bit Progammable System-on-Chip (PSoC™) Microcontrollers) del fabricante CYPRESS .
No es un microprocesador más, el usuario decide los periféricos de que dispone, ya que su arquitectura está definida a base de bloques digitales y analógicos programables (estos últimos a base de condensadores conmutados), según las necesidades concretas de la aplicación. Funciona a 24 Mhz (oscilador interno, aunque también se puede utilizar un cristal), y por 3 Euros, disponer de 28 pines de Entrada/Salida, bloques analógicos y 16 Kbytes de memoria Flash de programa es un lujo.
El entorno de trabajo es el programa PsOC Designer, descargable de forma gratuíta desde el sitio de Cypress, (se trabaja en ensamblador, aunque también integra un compilador de C del fabricante ImageCraft, pero hace falta número de serie). Mediante este programa se definen gráficamente los módulos a utilizar y se crean todos los ficheros necesarios. Una vez finalizado el trabajo, se necesita el ICE4000 para descargar (también para emular paso a paso el código sobre la placa final de usuario), aunque cada vez hay mas programadores para esta familia hechos por cuenta propia de usuarios (ver los sitios de AristaSistems y mikroelektronika).
La página del fabricante dispone de notas de aplicación y un enlace llamado "Knowledge Base", donde se publican las respuestas a las consultas técnicas de los usuarios. La calidad de este "base de conocimiento" es excepcional, y cuando publicas una duda, te responden de inmediato. Pagan a 250 Euros las notas de aplicación que remitas y también existe un caso abierto en el foro elektroda.
Para daos un ejemplo de la capacidad de esta familia, hay un ejemplo que utiliza reconfiguración dinámica (esto es, cambiar la configuración de los bloques analógicos y digitales del micro en el programa de aplicación durante el tiempo de ejecución), para hacer un modem
 
 

La tabla siguiente resume las características de la Familia

 
     
 
Documentación
 
  Con estos tres ficheros, y consultas bastante frecuentes a la "Knowledge Base" de Cypress para salir de dudas, el tema está resuelto.
Lo que tienen de pobres los ficheros de documentación, lo tiene de sustancial la Base de Conocimientos de Cypress.
Cypress_CY8C26443 DataSheet.pdf
Cypress_Assem_lang.pdf
Cypress_C_lang.pdf
Knowledge Base. Necesario estar registrado (se hace de forma gratuíta) para acceder.
 
     
 
Ejemplos de código   
 
  Aquí se incluyen algunos ejemplos:
Retransmisor cambiando de velocidad, doble puerto serie . Necesitaba transmitir datos a 76.8 Kbps y no es una velocidad estándar del puerto serie del PC, así que con este montaje, integrando dos UARTS dentro del CY8C26443, lo que recibo por una de ellas a 9600 bps lo transmito por la otra a 76.8 Kbps y viceversa. Ver ejemplo

UART- SPI. En una aplicación grande, para liberar al micro principal de las comunicaciones serie, y también agilizar la respuesta a las peticiones de estado del PC de control, necesitaba una UART externa. Los chips disponibles en el mercado tienen como mucho un buffer de 16 bytes, y los mensajes de control que se recibían eran bastante más largos. En este caso, se integró en el CY8C26443 una UART con un buffer de TX y RX de 50 bytes cada uno, se incluyó el firmware para decodificar los comandos externos, enviando así, por bus SPI, la informacion necesaria al micro principal.

— Un sensor magnético. En este caso se utilizan bastantes bloques analógicos para adquirir la señal entregada por los circuitos que adaptan la señal (Convertidor ADC, amplificador de ganancia controlable y amplificador inversor analógico). Como el sensor consume mucho, el circuito se pasa a modo de bajo consumo cuando no está midiendo, y despierta a la recepción de los comandos de petición de estado del puerto serie desde el controlador principal.

Retransmisor de ocho contactos por fibra óptica. Por un lado se leen ocho entradas digitales optoacopladas, y se codifica su estado para transmitirlo por puerto serie modulando un led de fibra óptica. En el lado del receptor, la salida adaptada del fotodetector se recibe en la UART y se ataca a ocho relés que reproducen el estado de las entradas digitales remotas. El circuito incluye otra salida de relé para indicar el fallo en el enlace. En sí la aplicación no tiene mucho de novedoso, pero seduce un poco el hecho de poder enviar alarmas y salidas paralelo a kilómetros de distancia gracias a la transmisión serie. Ver ejemplo

Activador de 18 relés vía bus I2C. Se utilizan 16 relés DPDT para acoplar la tensión de entrada hacia una de las dos posiciones posibles de cada uno. Los dos relés restantes se utilizan por si se quiere que la tensión acoplada no sea continua, sino pulsante.
 
     
 
Enlaces
 
     
  No hay muchos enlaces que hagan referencia a esta familia de microcontroladores, a pesar de su amplia utilización:
Sitio de CYPRESS.
Notas de Aplicación.
Base de Conocimiento.
Programador serie para la familia PSoC.
Otro programador, éste a través del puerto paralelo.
Foro de discusión Elektroda.
 
     
       
             
   
 
Microchip 16F876 Introducción Documentación Ejemplos Enlaces
 
     
 
Introducción
 
 

Dentro de la amplia gama de microprocesadores del fabricante Microchip, en un primer momento se escogió como punto de partida el 16C717. Era el de mejor relación calidad-precio teniendo en cuenta que además es de reducido número de pines y funciona a los 20Mhz estandar de la mayoría de las familias. El omnipresente 16F84 tiene el inconveniente de que no tiene convertidor Analógico/Digital, lo que lo invalida para aplicaciones industriales si se tienen que monitorizar variables analógicas para el control o medida en sistemas de supervisión. Evidentemente, el 16C717 tenía el enorme invonveniente de ser OTP (programable una sóla vez), aunque con algunos trucos se podía reutilizar el mismo chip para varias pruebas durante la fase de desarrollo, aprovechando la memoria que quedaba libre (sin utilizar) en programaciones anteriores.

 
   Tabla de características de la familia 16C717
 
 
  Esquema de pines del 16C717:           
  Dada la innumerable cantidad de reprogramaciones que se producen durante el desarrollo de un diseño (incluso aún con la disponibilidad de un emulador), se hace obligatorio el uso de micros con memoria de tecnología Flash (borrable y reprogramable por medios eléctricos), de manera que con un simple chip se puede acomenter toda la fase de desarrollo.
El inconveniente de los micros de este fabricante, en mi opinión, es su elevado precio.
 
  Esquema de pines del 16F876.  
  Al margen del inconveniente del precio, se escogió el micro 16F876 al no ser el monstruo de pines que es el F877 (es prácticamente el mismo micro con el número de canales A/D reducido por la falta de pines externos), pero sin embargo, dispone de la máxima memoria de programa, 8K, que permiten hacer aplicaciones de gran entidad
.
Se incluye un cuadro resumen con las características principales de la familia 16F87x :
 
   
     
  Documentación
 
  Las hojas de datos del fabricante junto con las notas de aplicación disponibles en el sitio de MicroChip proporcionan la información necesaria:
— Notas de aplicación
— Hojas características del 16F876. (Descargar)
— Hojas características del 16C717. (Descargar)
 
     
  Ejemplos
 
     
  Algunos de los proyectos disponibles se incluyen a continuacion:
Sistema de alarma simple.
Se trata de una pequeña tarjeta que admite dos entradas digitales, una temporizada a un valor seleccionable mediante DIP switches, y la otra de alarma inmediata. Además el circuito dispone de dos salidas para sendos indicadores de activación-desactivación del sistema (leds o relés), y otras dos entradas para activar-desactivar el mismo.
En la placa donde se realizó este circuito se insertaron dos salidas con relés para activar una sirena externa. Ver ejemplo

Generador de ruido blanco.
Se utiliza un convertidor Digital/Analógico seguido de un filtro anti-aliasing para generar ruido plano en la banda de audio. La entrada del convertidor D/A recibe la salida en paralelo de 8 bits generados a partir de un sistema de registros de desplazamiento implementados en firmware dentro del PIC, empleándose un esquema de realimentación correspondiente a un polinomio primitivo de orden ______. El periodo de repetición de la secuencia resulta ser de ___ segundos.

Generación de tonos de audio con técnicas DDS.
Con un 16C717, y empleando el mismo esquema hardware del ejemplo anterior, se puede llegar a generar tonos de audio limpios (no a partir de señales cuadradas) con una resolucción de 3 Hz y una relación señal ruido de 50 dB. Ver ejemplo
 
 
  Enlaces
 
     
  En este caso, sí que podemos decir que hay infinidad de sitios donde se trate de estos micros, dada su amplia popularidad.
Sitio de MICROCHIP
http://www.workingtex.com/htpic/                                       Programación en C de PICs
http://www.workingtex.com/htpic/Hi-Tech_C_tutorial.htm

ENSAMBLADOR:
MPLAB   El entorno para programar en ensamblador, suministrado gratuítamente con el PICStart
COMPILADORES DE C PARA PIC:
Bytecraft PIC C
HiTech     Definitivamente, el mejor (aunque la aplicacion corra en MS-DOS)

Para comprar, distribuidores:
Sagitron
Farnell
Future Electronics Spain

Ejemplos de código y lista de distribución:
http://www.piclist.com/techref/piclist/index.htm
http://pw2.netcom.com/~fastfwd/answers.html                 Preguntas mas frecuentes sobre PICs
http://people.man.ac.uk/~mbhstdj/piclinks.html                Gente que programa
http://www.interstice.com/~sdattalo/technical/software/software.html

Productos a base de PICs
http://www.propix.hu/mainframe.html?http%3A//www.propix.hu/references/PICref.html

 
       
             
   
 
Texas MSP430 Introducción Documentación Ejemplos Enlaces
 
     
 
Introducción
 
       La familia de 16 bits MSP430 de bajo consumo de Texas reune varias ventajas: la de ser micros medianamente rápidos al funcionar hasta 8 Mhz, la de ser baratos (menos de 3€ por pieza), pero lo que los hace imbatibles es su bajo consumo: 350 uA / MHz a 3 voltios de alimentación. Esto quiere decir que podemos hacer un dispositivo portatil que contenga uno de estos micros con un programa ejecutándose a, por ejemplo 4 KHz, con un consumo de 18 uA máximo en total: ¡¡ Del mismo orden de lo que consume nuestro reloj de pulsera !!.

     Con todo esto, sumando su rápido convertidor A/D mas el multiplexor de 8 entradas de que disponen, el fabricante publica aplicaciones de filtros de audio y codecs, lo cual da una idea de su gran capacidad de procesamiento.

      La única pega que se me ocurre es la baja memoria RAM en los dispositivos de perfil medio. Para seleccionar el dispositivo adecuado revisar esta tabla en la página de Texas.

     Es muy rápido empezar a trabajar con éstos microcontroladores: por 99€ se puede conseguir en EBV la herramienta Flash Emulation Tool, MSP-FET430P120.
 
 
Documentacion
 
  En el caso particular del que suscribe, se ha escogido como dispositivo base el MSP430F1232, que es el mayor de la gama baja. A continuación se puede ver su patillaje:



Las hojas características las podemos encontrar en el siguiente enlace:
http://focus.ti.com/docs/prod/folders/print/msp430f1232.html

 
 
Ejemplos
 
  Se presentan algunos de los proyectos realizados con este mocrocontrolador:
 Reloj.
Mantiene la hora en una gran placa que gestiona un display LCD y una matriz de teclas de membrana. El dispositivo se comunica con 3 hilos y un protocolo desarrollado para la aplicación.Ver ejemplo

Generador/Detector de tonos de prueba.
Se utilizan diversos recursos dentro del micro para generar dos señales cuadradas estables. Por un lado se aprovechan los divisores internos del oscilador maestro para sacar a un pin un todo de 1MHz; por otro lado, aprovechado el temporizador de 16 bits se genera automáticamente otro tono de 1KHz. Estas dos señales se filtran y suman para pasar a un amplificador que adapta el nivel de impedancia al de la línea telefónica. Al mismo tiempo, se utiliza la función de captura de pulsos para medir en dos de sus pines la llegada de cada uno de los tonos, después de haber pasado sendas etapas de filtrado y acondicionamiento de nivel en recepción. El resultado de la detección se presenta en dos leds.

 Simulacion de protocolo ALOHA Ranurado.
Es un ejemplo pendiente de terminar, pero interesante desde el punto de vista práctico. Surge como evolución personal después de haber hecho multitud de aplicaciones con protocolos de intercambio de información entre dispositivos funcionando en modo interrogación-respuesta. Se trata de comprobar en realidad los límites teóricos de caudal en una red funcionando con las especificaciones del protocolo Aloha ranurado, a la vez que se implementa por software la sincronización de los slots de tiempo en los nodos "esclavos" en cada transmisión de un nodo "maestro". El ejercicio propone tres nodos, uno maestro que envía aleatoriamente información a otro nodo esclavo (el cual a su vez también envía datos al nodo maestro), junto con un tercer nodo que genera tráfico dirigido a nadie emulando el resto de la carga de la red. A medida que vaya trabajando iré actualizando las páginas de código. Actualmente funcionan las rutinas de sincronismo y poco mas.Ver detalles

 
 
Enlaces
 
  - Texas también dispone de una Base de Conocimientos donde encontramos todo tipo de notas de aplicación y respuestas a las preguntas mas comunes. No se han encontrado por el momento ningún otro foro de discusión referente a este dispositivo.
- Herramienta de desarrollo para MSP430F1232 e inferiores:
http://focus.ti.com/docs/toolsw/folders/print/msp-fet430p120.html

 
       
             
   
 
Motorola 68HC11 Introducción Documentación Ejemplos Enlaces
 
     
 
Introducción
 
     
 
Documentacion
 
     
 
Ejemplos
 
     
 
Enlaces
 
     
     
     
     
       
    RETURN