Вы находитесь на странице: 1из 9

MICROPROCESADORES PSOC (Program System On Chip)

JAVIER CORTES BOLIVAR 20042005023 WILLIAM VARGAS MEDINA 20042005115 ALVARO ANDRES BARBOSA 20051005007

ING. JULIAN CAMARGO LOPEZ

DIGITALES III

UNIVERSIDAD DISTRITAL FRANCISCO JOS DE CALDAS FACULTAD DE ING. ELECTRNICA BOGOT D.C

Introduccin. Actualmente existe un gran auge por los microprocesadores, encontrndose entre los ms utilizados los microcontroladores PIC, AVMEL, AVR. Los cuales son muy diversos y dan soluciones a muchas necesidades. Pero tienen la limitante de que el usuario debe utilizar los recursos estticos de cada uno de ellos, es decir si el microprocesador seleccionado posee un dispositivo de comunicacin serial, este no puede ser aumentado a 2, ante lo cual debemos de cambiar el dispositivo o comprar otro de mejores prestaciones, tambin debemos utilizar dispositivos externos para amplificar la seal, filtrarla entre otros procesos aumentando por tanto el tamao de nuestro circuito final. Hoy en da ha llegado una tecnologa revolucionaria a muy bajo costo, desarrollado por la empresa Cypress, nos referimos a los microprocesadores PSOC. PSOC. PSOC es la abreviacin de Program System On Chip el cual es un microprocesador muy verstil, el que se asemeja a un lego, totalmente dinmico ya que podemos disponer de sus componentes a nuestra voluntad, cuanta con innumerables dispositivos electrnicos, los cuales se pueden modificar para crear de forma interna, filtros anlogos y digitales, amplificadores, comparadores, conversores analgicos digitales de varios tipos y resolucin, moduladores de ancho de pulso (PWM) de 8, 16, 32 Bits, contadores de 8, 16, 32 Bits entre muchos otros.

Fig.1 Generalidades del PSOC. Diseo. El PSOC consta de 2 tipos de bloques para desarrollo, anlogos y digitales; la cantidad puede variar de acuerdo a la familia del microprocesador seleccionado, la ms comn es la CY8C27443, la cual consta de 9 bloques anlogos y 9 digitales, adems posee una unidad multiplicadora MAC de 8X8 pudiendo almacenar resultados de 32 bits. Este puede funcionar con un clock interno que mltiple configuracin pudiendo operar con 48Mhz, 24Mhz, 12Mhz, 6Mhz, 3Mhz o hasta 32 Mhz. Si el usuario lo desea puede operar con un cristal externo. Tambin cuanta con una unidad de referencia de voltaje mltiple la cual permite variar el voltaje de referencia para trabajar con sensores y otros dispositivos. Es alimentado con 0.5V - 3.0V hasta 1.0V.

Caractersticas Generales. Las caractersticas principales de los microcontroladores PSOC son: Unidad multiplicadora MAC. Multiplicacin por hardware de 8x8 con almacenamiento de 32 bits. Funciona con 5.0 volt o 3.3 volt o hasta con 1 volt. Clock interno o externo (Frecuencia Variable). Voltaje de referencia Variable para adaptarse a distintos. Caractersticas de los Bloques: La cantidad de bloques vara de acuerdo a la familia de microcontroladores seleccionada ya sea CY27443-CY27699 entre otras, la cantidad de bloques que consume depende del tipo de dispositivo montado. En cada bloque se pueden Montar: 16 kbytes de memoria programable 256 Mb de Ram Conversores Anlogos digitales con una resolucin de hasta 14 bits Conversores Digitales-Anlogos con resolucin de hasta 9 bits Amplificadores de ganancia variable Amplificadores inversores Comparadores Filtros Anlogos Timers de 8-16-32 bits Moduladores de ancho de pulso (PWM) DE 8-16-32 BITS Interfaces de comunicacin UARTS, SPTI, I2C Tipos de bloques. Al seleccionar un dispositivo y colocarlo este puede tomar distintas posiciones dentro de los bloques, ya que los estos estn asociados en columnas y cada columna posee 3 tipos de bloque, como se aprecia en la fig.2:

Fig.2 Tipos de Bloque del PSOC.

Se puede apreciar que existen bloques ACB, ASC, ASC los cuales: ACB: Son bloques utilizados para colocar dispositivos que poseen una respuesta lineal respecto a su referencia, es el caso por ejemplo de los Amplificadores Operacionales para ser usados como Amplificadores (PGA), amplificadores inversores(AMPINV) y/o comparadores. Otra ventaja de este micro es que se pueden unir bloques en cascada para una mayor amplificacin.

ASC-ASD: Son bloques del tipo de capacidad Conmutada y en su interior encontramos Amplificadores con entrada y salidas lineales (Tericamente), multiplexores y condensadores. En estos bloques se pueden montar una serie de dispositivos como conversores anlogos - digitales, Buffer, comparadores etc. Si observan la figura anterior pueden ver, que desde el exterior no se puede conectar directamente una seal a los bloques ASC-ASD, sino que deben pasar previamente por un Bloque ACB, esto es como norma de seguridad ya que se debe adaptar en primera instancia la seal desde el exterior para luego procesar su informacin. Bloques Anlogos. Los bloques Anlogos estn agrupados en columnas, la cantidad de estas dependen de la familia del microprocesador usado pueden ser 3, 4 o 5 y cada columna posee 3 bloques. Cada uno tiene una entrada, una referencia y una salida. Estos bloques tienen la ventaja que se puede acceder directamente a ellos desde el exterior.

Fig.4 Output Buffer.

Fig.3 Bloques anlogos. La lnea comparadora o de Output Buffer (Fig.4) es nica por columna y solo puede ser usada por un bloque en cada columna. A travs de este Output Buffer se puede direccionar la salida a un pin especfico del microcontrolador o bien enviarla hacia los bloques digitales, adems se pueden sumar de forma lgica la salida de 2 columnas diferentes. Bloques Digitales. Dentro de los bloques digitales, hay 2 tipos de bloques: DCB (la C del medio indica que es para componentes de comunicacin como Uart) y los DBB que son de tipo general. De igual forma que los bloques anlogos, la cantidad de bloques depende de la familia del microcontrolador seleccionada (Modelo). Estos bloques a diferencia de los anteriores no pueden ser accesados directamente desde el exterior, sino que por una seal proveniente de los bloques anlogos. Ellos se pueden montar Uart (TX y RX), IRDA, PWM, SPI. Algunos componentes como los conversores anlogos-digitales consumen ambos tipos de bloques.

Fig.5 Bloques digitales.

Al seleccionar un componente digital, como se muestra en la Fig.5 dependiendo de sus caractersticas, puede ocupar 1, 2 o 3 bloques, los cuales pueden asentarse en cualquier bloque disponible y stos se denominan por la sigla DB o DC ms el nmero de su ubicacin. Esto es importante tenerlo en cuenta ya que posteriormente definir la ubicacin de su interrupcin en software. Estos bloques tienen como agregado el hecho que pueden programar su salida mediante bloques lgicos, a travs de operaciones lgicas AND, OR, XOR. Como lo muestra la Fig.6.

Fig.6 Son las lneas globales de entrada para la comunicacin de sistemas digitales entre las lneas de entrada y los multiplexores. Estas se encuentran divididas en 2 grupos las cuales se separan en las lneas pares (GIO) tales como P1(2) y lneas impares (GIE), como por ejemplo, P1(3)de acuerdo a la fig7.

Fig.7 Unidad generadora de frecuencia. Esta etapa es una unidad de vital importancia para la CPU debido a las mltiples funciones que permite desarrollar y escoger al usuario, adems de poder seleccionar diferentes frecuencias en forma simultnea de acuerdo a la Fig.8 , las cuales son derivadas de la alimentacin principal de frecuencia de 24MHz, pudiendo escoger de acuerdo a requerimientos del programador, entre ellas: SYSCLK: 24 MHz SYSCLKx2: 48 MHz 24V1: SYSCLK dividido por un parmetro entre 1 a 16. 24V2: Equivale 24V1 divido por un parmetro entre 1 a 16 24V3: Equivale a dividir la frecuencia principal 24V2, 24V1, SYSCLK o SYSCLKX2, con un nmero entre 1 a 256. CPU_CLK: Es usado por la CPU unidad de frecuencia principal lo cual tiene directo impacto en la velocidad de ejecucin de las instrucciones del programa. Puede variar entre 93 MHz y 24 MHz CLK32K: Es la menor frecuencia interna que puede ser seleccionada.

Fig.8 Unidad generadora de frecuencia. Voltajes de referencia. El microprocesador del tipo PSOC permite escoger diferentes tipos de referencia de acuerdo a la utilidad y aplicacin a desarrollar. Se consideran tres tipos de voltajes estables REFHI, AGND, REFLOW. AGND (Analog Ground): Es seleccionado para componentes anlogos indicando valores positivos con voltajes sobre AGND y voltajes negativos bajo AGND. REFHI-REHLO (reference high- reference low): Estos parmetros son seleccionados para voltajes positivos (REFHI) y para voltajes negativos (REFLO). Es importante destacar que este procesador posee una gran cantidad de configuraciones para distintas aplicaciones por lo cual en este captulo slo se trat las caractersticas principales. En la Tabla 1 se muestran las mltiples referencias escoger Ref Mux
Vdd/2 Vbg Vdd/2 Vdd/2 Vbg Vbg 1.6Vbg 1.6Vbg 2Vbg Vbg 2Vbg P2[6] P2[4] Vbg P2[4] P2[6]

AGND [V]
2.5/1.65 2.5/1.65 1.3 2.08 2.6 2.6 2.2 2.2

RefLo [V]
1.2/3.5 0 0 0 1.3 1.6 0.9 1.2

RefHi [V]
3.8/2.95 5.0/3.3 2.6 4.16 3.9 3.6 3.5 3.2

Tabla 1 Voltajes de referencia.

Pines de entrada y salida. Puertas de entrada y salida. Las puertas juegan un papel importante ya que permiten la comunicacin con el mundo exterior, el microcontrolador CY27443 posee 3 puertas de 8 bits cada una enumeradas desde el 0 al 2 las cuales permiten leer y escribir datos y se accede a ellas de forma grfica o por software a travs de los registros PRT0D, PRT1D, PRT2D, en este caso se escogieron los 8 bits de la puerta 2 para el uso del LCD, y los 8 bits de la puertas 0 y 1 para propsito generales. Cada puerta puede tomar la configuracin mostrada en la Tabla 2:

DM2 bit 0 0 0 0 1 1 1 1

DM1 bit 0 0 1 1 0 0 1 1

DM0 bit 0 1 0 1 0 1 0 1

Mode Resistive Pull Down Strong Drive High Impedance Resistive Pull Up Open Drain,Drive High Show Strong Drive High Impedance Analog Open Drain, Drives Low

Data=0 Resistive Strong Hi-Z Strong Hi-Z Strong(show) Hi-Z Strong (Slow)

Data=1 Strong Strong Hi-Z Resistive Strong (Slow) Strong (Slow) Hi-Z Hi-Z

Tabla 2 Configuracin de puertas. Configuracin pines de entrada y salida. A las puertas se puede acceder por los bloques anlogos o digitales, todos los pines de la puerta 0 y los 4 pines ms bajos de la puerta 2 pueden ser usados como entrada de puertas anlogas para lo cual se configuran como Hi-AnalogZ. Los pines 6 y 4 de la puerta 2, pueden ser usados como referencia externa para los conversores A/D, entre otras funciones.

Fig.9 Configuracin

pines de entrada y salida.

Software e Interface. Desarrollo del Software. Para el desarrollo del software, el microcontrolador posee una aplicacin de desarrollo denominada PSOC designer , la cual es gratis, que permite escribir el programa en lenguaje de mquinas Assembler, y cuenta con un conjunto de 256

instrucciones, de 1 ,2 o 3 bytes. Tambin se puede usar un compilador de lenguaje C, de la empresa Imagecraft cuya versin no es gratis, es decir, tiene un costo de licencia. Cada bloque que es seleccionado debe ser programado, junto con sus interrupciones si es necesario, las cuales siempre deben ser programadas en Assembler. Cada aplicacin, al crearla, genera automticamente dos archivos: el archivo principal o "main" donde se escribe el cuerpo del programa y, el archivo "Boot asm", donde queda especificada la configuracin general, como por ejemplo ubicacin de las interrupciones. Es importante destacar la versatilidad del programa que permite compartir instrucciones en ambos lenguajes. El desarrollador de las aplicaciones se divide en 3 grupos, el cual permite intercambiar la vista del programa para poder escoger entre la interfaz grafica y el programador de cdigo.

Fig.10 La interfaz grafica Esta interface permite seleccionar los bloques anlogos o digitales a usar, y muestra un indicador de recursos consumidos como se aprecia en la Fig. 11:

Fig.11 La interfaz grafica. Es importante destacar que al seleccionar un bloque, de inmediato el software nos muestra un archivo PDF con la configuracin e instrucciones bsicas para programar dicho bloque. De igual forma al trmino de nuestra aplicacin podemos generar un resumen del proyecto en PDF. Indicador de recursos consumidos. Cada vez que seleccionamos un componente este consume una cierta cantidad de memoria Ram de nuestro microprocesador la cual es mostrada en el indicador de recursos consumidos, el cual se aprecia en la Fig. 12:

Fig.12 Indicador de recursos.

Programador de Cdigo. Es donde se ingresa el cdigo a utilizar en lenguaje Assembler o Lenguaje C, como se muestra en la Fig. 13, es importante mencionar que el software da la posibilidad de escoger los parmetros de los componentes a travs de comandos API, por lo cual se debe tener cuidado en que lo seleccionado en este modo, debe coincidir con lo escogido en el lenguaje grfico.

Fig.13 Programador de Cdigo. De acuerdo a lo explicado, la aplicacin genera dos archivos principales; el archivo "boot .asm" y archivo principal "main", ms los archivos punteros que definen y permiten seleccionar cada bloque utilizado. Es importante destacar que seleccionar los componentes se deben configurar una diversa gama de parmetros del microconrolador (como su clock de funcionamiento), a su vez se debe configurar el funcionamiento del bloque, si escogimos un Timer se debe configura su velocidad de conteo, interrupciones, modo de operacin. Adems se debe configurar los pines de entrada y salida del micro, ya que se le debe indicar cul es su funcin. Lo anteriormente explicado se aprecia en las siguientes figuras. Fig.14 (a) Parmetros del Microcontrolador. Fig.14 (b)
Parmetros de un bloque de Timer.

Fig.14 (c)
Parmetros de configuracin de pines.

Вам также может понравиться