sábado, 29 de octubre de 2011

Características de los bloques analógicos y digitales

En la publicación anterior se realizo una introducción a los tipos de bloques que poseen los microcontroladores PSoC, ahora corresponde profundizar un poco en el tema y ver que características tienen estos bloques, tanto los analógicos como los digitales y como están compuestos.

Bloques Analógicos:

El sistema analógico está dispuesto en columnas y cada una de ellas a su vez cuenta con bloques de tres tipos (ACB, ASC, ASD), estos bloques están formados en filas con lo cual se tiene una matriz de componentes analógicos configurables, el tamaño de la matriz depende de la referencia del microcontrolador que estemos utilizando, para el caso del CY8C29466 esta matriz tiene un tamaño de 4 * 3, lo cual deja a nuestra disposición un total de 12 bloques analógicos para desarrollar elementos o aplicaciones de tipo análogo.

Cada columna de bloques análogos cuenta con un buffer de salida (línea output buffer) el cual solo puede ser utilizado por uno de los 3 bloques que conforman esa columna, luego la salida de este buffer puede ser conectada a cualquiera de los pines que puedan ser habilitados como salida analógica.

(Sistema Analógico PSoC CY8C29466)

Bloques ACB: Estos bloques son utilizados para elementos cuya respuesta es continua en el tiempo y que su respuesta es lineal con respecto a un nivel de referencia, este es el caso de los amplificadores operacionales en las configuraciones de inversor amplificador (AMPINV), amplificador (PGA) y comparadores.

Bloques ASC y ASD: Estos son bloques del tipo capacidad conmutada (Switched Capacitor), en el interior de estos bloques se puede encontrar multiplexores, amplificadores, condensadores, entre otros. Con ellos se pueden configurar una gran cantidad de dispositivos como convertidores, comparadores, buffers, filtros, etc.

Para poder realizar la conexión del exterior con los bloques ASC y ASD primero hay que conectar a un bloque ACB para poder adaptar la señal proveniente del exterior, este procedimiento se hace como método de seguridad.

Para quienes no sepan que son las capacidades conmutadas y/o esten interesados en consultar o profundizar un poco acerca del tema a continuación dejo unos link donde puede leer unos artículos que encontré acerca del tema.



filtros de elementos conmutados
Realización de resistencias con capacidades conmutadas

Bloques Digitales:

Estos bloques al igual que los análogos vienen dispuestos en forma de matriz y el número de bloques depende de la referencia de microcontrolador con la que se esté trabajando. Los bloques digitales no pueden recibir una señal del exterior de manera directa, para llegar a ellos primero hay que utilizar como intermediario a un bloque análogo, con estos bloques se pueden implementar dispositivos como convertidores, elementos de transmisión UART y SPI, módulos PWM, etc.

(Sistema Digital PSoC CY8C29466)

Como se puede apreciar en la figura anterior los bloques digitales están dispuestos en filas y cada fila está compuesta por dos tipos de bloques digitales, los DBB y DCB.

Bloques DBB: Estos son bloques de propósito general y pueden ser utilizados en la mayoría de tareas.

Bloques DCB: Estos son bloques utilizados para aplicaciones que requieren de comunicación con otros dispositivos como comunicación UART.

Por último cabe destacar que las diferentes aplicaciones que se quieran desarrollar pueden ocupar un número diferente de bloques tanto análogos como digitales y este número depende de la cantidad de recursos de los que requiera la aplicación o dispositivo que se está desarrollando.
Por el momento vamos a terminar la parte teórica de la arquitectura del microcontrolador PSoC, en la siguiente publicación empezaremos revisar que es el PSoC Designer.

lunes, 17 de octubre de 2011

Los bloques de PSoC


Los microcontroladores PSoC tienen dentro de su configuración una cantidad determinada de arreglos de elementos tanto digitales como analógicos, estos arreglos de componentes es lo que se conoce como bloques los cuales pueden ser de tipo digital o analógico dependiendo de los elementos que los conformen. A continuación se va a exponer que tipos de elementos componen y que sistemas se pueden configurar con los bloques que componen tanto el sistema digital como analógico de un PSoC CY8C29466.

El sistema Digital:

Este sistema está compuesto por un total de 16 bloques de 8 bits cada uno, sin embargo pueden ser utilizados tanto individualmente como en conjunto siendo posible así formar bloques de 8, 16, 24 y 32 bits.

Dentro de los módulos de usuario que vienen pre-configurados en el PSoC Designer (Herramienta de desarrollo PSoC) para facilitar la programación y uso de los microcontroladores, encontramos los siguientes módulos que usan los bloques digitales:

• PWM (8 a 32 bits).
• Contadores (8 a 32 bits).
• Temporizadores (8 a 32 bits).
• UART de 8 bits, sin paridad.
• SPI maestro y esclavo.
• I2C esclavo y multi-maestro.
• Comprobador de redundancia cíclica (CRC).

Los bloques digitales pueden ser conectados a cualquier GPIO (Puertos de entrada-salida) por medio de una conexión de buses globales que además permiten la multiplexación de las señales y de esta manera llevar a cabo una gran cantidad de operaciones lógicas.



(Configuración del modulo de usuario PWM8 )

Sistema Analógico:

Este sistema está compuesto por 12 bloques configurables, cada uno está compuesto por diferentes elemento como amplificadores operacionales, filtros de capacidades conmutadas. Con estos bloques se puede configurar diferentes dispositivos, algunos de estos dispositivos ya vienen pre-configurados en los módulos de Usuario del PSoC Designer, una muestra de estos módulos que utilizan los bloques analógicos son los siguientes:

• Convertidor Analógico a Digital.
• Convertidor Digital a Analógico,
• Filtros Pasa-bajo, Pasa-banda y Pasa-altos (2, 4, 6 u 8 polos).
• Amplificadores (ganancia seleccionable hasta 48X).
• Amplificadores de instrumentación (ganancia seleccionable hasta 93X).
• Comparadores.
• Marcadores DTMF.
• Moduladores.
• Detectores de pico.


(Configuración modulo de usuario LPF2 – filtro pasa-bajos de orden 2)


En la siguiente entrada del blog se profundizara acerca de los bloques y como están compuestos internamente.

domingo, 18 de septiembre de 2011

El núcleo de PSoC


El núcleo de los PSoC es un elemento de gran alcance y que apoya a un amplio conjunto de características, el núcleo incluye una CPU, memoria, relojes y GPIO configurables (Entradas y salidas de propósito general).

A medida que la empresa Cypress ha ido desarrollando estos microcontroladores incorpora nuevas características a cada familia de PSoC, entre estas se encuentran los núcleos, los cuales han sido diferentes en las 3 familias de microcontroladores PSoC existentes hasta el momento como se puede ver a continuación:

• Familia CY8C2XXXX (PSoC 1): M8C processor speeds up to 24 MHz
• Familia CY8C3XXXX (PSoC 3): Single cycle 8051 CPU core
• Familia CY8C5XXXX (PSoC 5): 32-bit ARM Cortex-M3 CPU core


familias PSoC y sus núcleos


El M8C es un procesador que puede alcanzar una velocidad de hasta 24 MHz, posee una arquitectura tipo Harvard de 25 hilos con lo cual se logra simplificar la programación de eventos en tiempo real. Otras características que vale la pena resaltar de este núcleo son las siguientes:

• Temporizadores, Sleep y watch Dog (WDT).
• 32 KB de memoria flash para almacenamiento de programas.
• 2 KB de memoria SRAM para almacenamiento de datos.
• 2 KB de memoria EEPROM emulado usando la flash.
• El reloj interno de 24 MHz se puede duplicar a 48 MHz para el uso del sistema digital.
• Reloj de baja velocidad de 32 KHz para el temporizador de apagado y el WDT.
• Las GPIOs permiten conectar el CPU a los recursos digitales y analógicos.
• Cada pin también tiene la capacidad para generar una interrupción del sistema de alto nivel, bajo nivel y el cambio de la última lectura.

El 8051 posee un set de instrucciones tipo RISC, con un gran rendimiento y un promedio de hasta 2 ciclos por instrucción, además puede llegar a tener una velocidad 10 veces mayor que la normal del procesador 8051, otras características importantes son las siguientes:

• 64 KB de memoria flash para almacenamiento de programas.
• 8 KB de memoria SRAM para almacenamiento de datos.
• 2 KB de memoria EEPROM.
• Periféricos HUB (PHUB).
• Interfaz de memoria externa (EMIF).
• Vector programable para el control de interrupciones.

Por su parte, el ARM cortex contiene un procesador de bajo consumo de potencia de 32 bits y arquitectura Harvard, está diseñado para satisfacer las necesidades de aplicaciones que requieran una gran velocidad en el manejo de interrupciones, además también cuenta con las siguientes características:

• 256 KB de memoria flash.
• 64 KB de memoria SRAM.
• 2 KB de memoria EEPROM.
• Controlador de memoria cache de 128 bytes de memoria.
• Periféricos HUB (PHUB).
• 4 GB de espacio de direcciones.

sábado, 10 de septiembre de 2011

¿Qué es PSoC?

imagen PSoC


La palabra PSoC es el acrónimo de (Programmable System on Chip), estos dispositivos fabricados por la empresa cypress son microcontroladores cuya principal característica y atractivo es el contar con módulos tanto análogos y digitales en un solo chip, así mismo poder reconfigurar dinámicamente las entradas y salidas de estos módulos. De esta manera se obtiene un componente electrónico con una gran flexibilidad en su estructura y que permite una facilidad incomparable hasta el momento, para el desarrollo de sistemas electrónicos embebidos.

Algunas características de la arquitectura de estos microcontroladores son las siguientes:

• Unidad multiplicadora MAC.
• Reloj tanto interno como externo.
• El voltaje de referencia puede ser variado para actuar con distintos sensores.
• Voltaje de funcionamiento de 5 voltios ó 3,3 voltios.
• Posibilidad de reconfiguración.

En cuanto a los bloques que tanto se han mencionado hasta el momento, el numero de estos puede variar dependiendo de la referencia del PSoC con el cual se esté trabajando, por ejemplo el CY8C29466 el cual es el que se va a utilizar para la mayoría de los ejercicios que se realicen en este blog, cuenta con 16 bloques digitales y 12 bloques análogos los cuales pueden ser configurados y programados para implementar un sinfín de aplicaciones. Para revisar más características de diferentes referencias de microcontroladores PSoC y notas de aplicaciones del fabricante por favor dirigirse a la sección hojas de datos y aplicaciones (pestaña parte superior de este mismo blog).

arquitectura PSoC

En la figura anterior se puede observar las cuatro áreas principales que componen un microcontrolador PSoC las cuales son: núcleo, sistema digital, sistema analógico y por último los recursos del sistema. En las siguientes publicaciones iremos profundizando un poco sobre cada una de estas partes.

Los PSoC tienen un programa de desarrollo llamado PSoC designer, en este programa se puede contar con una interfaz grafica en la cual se visualizan los bloques tanto digitales y análogos que posee el microcontrolador, además cuántos de estos bloques estamos utilizando, también desde este programa podemos escribir nuestro código en C ó assembler para realizar nuestras aplicaciones, la selección del lenguaje de programación es según nuestras preferencias y dependiendo de con cual se nos facilite mas la programación, para este blog vamos a trabajar en C. Pero más adelante seguiremos profundizando sobre este programa de desarrollo para los PSoC.

martes, 6 de septiembre de 2011

Presentación de PSoC en Español


Hola a todos, este espacio va a ser dedicado a los microcontroladores PSoC (Programmable System on Chip) fabricados por la empresa Cypress, estos dispositivos ofrecen una gran versatilidad para el desarrollo de sistemas electrónicos embebidos ya que en el mismo chip gracias a su configuración por bloques se pueden desarrollar tanto sistemas digitales como análogos generando así una reducción significativa en el tamaño final de las tarjetas de los circuitos a implementar, entre muchas otras ventajas las cuales se podrán ver con el paso del tiempo en las siguientes publicaciones.

La idea de este blog es aumentar la información existente sobre estos micros y brindar un medio de apoyo a todas las personas que quieren iniciarse en el mundo PSoC, ya que es difícil encontrar información sobre este microcontrolador debido a su aparición relativamente reciente y esta dificultad aumenta si la información la queremos adquirir en el idioma español.

Procurare hacer por lo menos dos publicaciones al mes para así ir aumentando el registro de notas sobre estos componentes, claro está que si me es posible hacer mas publicaciones al mes no dudare en hacerlo.