Vous êtes sur la page 1sur 28

Introduccin al PSoC Designer

1. Introduccin
PSoC Designer es el programa de desarrollo por medio del sistema de aplicacin
System-on-Chip de Cypress. Como lo define puntualmente el fabricate en su pgina
web: The free Integrated Development Environment for PSoC, is a full-featured, GUIbased design tool suite that enables the user to configure design-in silicon with simple
point and click options.
PSoC Designer permite la programacin de los dispositivos en lenguaje assembler y C
(ste no es libre y se necesita el nmero de licencia para activar el compilador
integrado en el Designer). Como lo menciona el fabricante previamente en su pgina
web: With PSoC Designer, users can code the device in either 'C' or Assembly
language and debug the design using features such as event triggers and multiple
break points, while single stepping through code in 'C' or Assembly or a mix of the two
(la unica manera para acceder es mediante el dispositivo ICE In-Circuit Emulator).
Finalmente, PSoC Designer es libre y puede ser descargado de la pgina
http://www.cypress.com/psocdesigner
2. PSoC Designer
PSoC Designer se divide en tres grandes subsistemas:
Device Editor:
Application Editor
Debugger
2.1. Device Editor
Este es el primer sistema que aparece en PSoC Designer, con
ste se realiza la configuracin del PSoC; es decir, se
seleccionan los perifricos analgicos y digitales que se
necesitan para una aplicacin particular. Una vez se finaliza esta etapa se generan los
ficheros necesarios de configuracin (API's ISR's, datasheets, etc...) con la opcin
Generate Application.
Device Editor se compone de dos partes:
A) Selection view: En la que se seleccionan los componentes
disponibles en las libreras (men de la izquierda) y se incluyen
dentro de la configuracin del C.I. (al pinchar dos veces sobre el
componente). Los componentes escogidos se muestran en la parte
superior central. En la parte inferior aparece el esquema del
componente y ms abajo el datasheet del mismo. La parte derecha de la pantalla
muestra los recursos disponibles.

ASOVAGOS

1 IVAN M. GRANADA-JHONNY O. TURIZO

B) Interconnect view: En esta pantalla estn las herramientas necesarias para la


conexin de los diferentes bloques que configuran las matrices analgicas y digitales.
En esta pantalla se observan las siguientes funciones. En la parte izquierda de la
pantalla aparecen tres tablas. De la parte superior a la inferior encontramos:

Global Resource Table: A travs de ella se configuran los parmetros generales del
dispositivo (tensin de alimentacin, Reloj interno/externo, frecuencia del reloj
principal y auxiliares...)
User Module Parameters: En ella se seleccionan los parmetros caractersticos de
cada bloque seleccionado (analgico y/o digital). Los parmetros susceptibles de
modificacin vienen descritos en el datasheet del modulo.
Port Table: Mediante esta tabla se seleccionan las caractersticas de los puertos de
entrada-salida (General Purpose Input-Output, GPIO)
ASOVAGOS

2 IVAN M. GRANADA-JHONNY O. TURIZO

En la parte central de la pantalla aparecen las dos matrices programables, la digital en


la parte superior y la analgica en la parte inferior. Sobre estas matrices se insertarn
los componentes escogidos y se cablearn hacia los distintos pines del C.I. En la
versin empleada del PSoC (CYC29466) aparecen 16 mdulos digitales,
organizados en una matriz de 4x4 elementos, y 12 mdulos analgicos,
organizados en una matriz 3x4. A su alrededor se observan las diversas lneas de
interconexin y puertos disponibles.
La parte derecha de la pantalla muestra una vista del C.I. con los pines empleados y
su descripcin (entrada/salida, analgico/digital).
2.2. Application Editor.
El segundo subsistema que aparece una vez se ha configurado el
C.I. es el Application Editor. En ste se incluye el cdigo principal
del programa que debe ejecutar el ncleo microcontrolador.

2.3 Debugger
El tercer subsistema que aparece una vez se ha configurado los
Global Resources, los parmetros de los mdulos a utilizar y
tambin se haya incluido el cdigo principal del programa;
procedemos por a si decirlo ejecutar el programa, obteniendo
informacin de los errores y de warnings; pero tan bien dando un diagnostico sobre la
RAM, la flash, entre otros

ASOVAGOS

3 IVAN M. GRANADA-JHONNY O. TURIZO

Tambin se puede observar en la parte inferior izquierda una barra que indica entre
otras cosas el estado de la tarjeta de programacin en este caso desconectada, el
puerto por el cual se encuentra, la frecuencia de trabajo.etc

DIAGRAMA LOGICO DE SUBSISTEMAS

ASOVAGOS

4 IVAN M. GRANADA-JHONNY O. TURIZO

Procedimiento.
COMO CREAR UN NUEVO PROYECTO

Abrimos PSoC Designer indicamos nuevo


proyecto.
Esta ventana tambin nos da la opcin de
abrir un proyecto ya creo en cualquiera de
los subsistemas descritos anteriormente.

Lo nombramos damos siguiente y en


el mensaje emergente afirmamos la
creacin del proyecto.

Procedemos a escoger el dispositivo y


el lenguaje con el que vamos a
trabajar, por ltimo damos finalizar.

Y ahora si a trabajar

ASOVAGOS

5 IVAN M. GRANADA-JHONNY O. TURIZO

PRACTICA 1:

VCC

Leds parpadeantes.
El ejercicio propuesto es el siguiente:

Port0_0

PSoC
CY8C29466

Herramientas:
PSoC Designer v. 4.4, PSoC
Programmer v. 2.2..
Kit de desarrollo CY8C29466.
Board, fuente y materiales varios.

Port0_1

0
VCC

Tomamos dos mdulos de leds del device editor.

Los mdulos de leds no necesitan ser colocados en la matriz digital o anloga ya que estos no
usan ningn bloque como lo dice en el datasheet.

Vamos a la ventana interconnect view a configurar el microcontrolador y los mdulos.

ASOVAGOS

LED2

LED1

6 IVAN M. GRANADA-JHONNY O. TURIZO

Luego de esto configuramos los recursos globales y los dos mdulos.

Primero los parmetros


globales
del
microcontrolador

Luego los mdulos de leds.

LED_1

LED_2

ASOVAGOS

En este punto ya estn listos los mdulos y podemos hacer el cdigo.

Para esto damos clic en application editor, sources files y main.c

7 IVAN M. GRANADA-JHONNY O. TURIZO

Para esta aplicacin el cdigo es el siguiente.

Lo compilamos dando clic en execute the program.

ASOVAGOS

8 IVAN M. GRANADA-JHONNY O. TURIZO

Aparecer el siguiente mensaje.

Este indica que no se pudo comunicar con el dispositivo ICE In-Circuit Emulator.
Damos OK, y luego miramos si el cdigo tiene errores.

Para programar el dispositivo CY8C29466 el procedimiento es el siguiente, siempre que se


tenga instalado el PSoC Programer.

Conectamos el programador a un puerto USB


Damos clic en Program Part.
Aparecer la siguiente ventana.

Luego del mensaje de conexin exitosa con la interfaz, ponemos el micro en el


socket de la tarjeta y la conectamos con la interfaz USB y damos clic en Program.

ASOVAGOS

9 IVAN M. GRANADA-JHONNY O. TURIZO

Saldr un mensaje de Programming Succeded, lo que indica que fue optimo el


programado en el dispositivo.

_______________________ // ________________________ // ______________________

PRACTICA 2:

VCC

LCD
El ejercicio propuesto es el
siguiente:

PSoC
CY8C29466

Port0_[0..6]
7
4 inf- 3 control

Tomamos un modulo de LCD


del device editor

R3
R

VCC

ASOVAGOS

PSOC LCD
USER MODULE

10 IVAN M. GRANADA-JHONNY O. TURIZO

Los mdulos de LCD no necesitan ser colocados en la matriz digital o anloga ya que estos no
usan ningn bloque como lo dice en el datasheet.

Vamos a la ventana interconnect view a configurar el microcontrolador y los mdulos.


Luego de esto configuramos el micro y el
mdulo de LCD.

ASOVAGOS

Primero
los
parmetros
globales del microcontrolador

11 IVAN M. GRANADA-JHONNY O. TURIZO

Luego el modulo de LCD.

En la ventana de GPIO vern las conexiones que se deben hacer entre el PSoC y
la LCD.
Este modulo viene listo con una
interfaz de datos a cuatro bits lo que
facilita la programacin y ahorra
pines del microcontrolador.

En este punto ya estn listos


el mdulo y podemos hacer
el cdigo.

Para esto damos clic en


application editor, sources
files y main.c

Para esta aplicacin el cdigo es el siguiente.

Este cdigo muestra las dos formas de imprimir caracteres, uno directamente y el otro haciendo
referencia a una posicin de memoria.Para la programacin del dispositivo se sigue el
procedimiento descrito en la practica 1.
ASOVAGOS

12 IVAN M. GRANADA-JHONNY O. TURIZO

PRACTICA 3:
PWM DE 8 Bits
El ejercicio propuesto es el siguiente:
VCC

1.5 MHz
24 MHz

16 VC1

93.7 KHz

16 VC2
1.4Hz

256 VC3

255 PWM8_1

255 PWM8_2

366 Hz

PSoC
CY8C29466

1.4Hz

Port0_0
Port0_1
LED1

LED2

Tomamos dos mdulos de PWM de 8 bits del device editor.

Luego los ubicamos en las columnas de los bloques digitales, cada modulo PWM de 8
bits usa solo un bloque digital.

ASOVAGOS

13 IVAN M. GRANADA-JHONNY O. TURIZO

El procedimiento es el siguiente:

Lo seleccionamos, automticamente se iluminara el bloque que asigna el


programa para este modulo.

Si esta colocacin no interfiere con otro modulo lo podemos colocar dando clic
derecho sobre el modulo y dar Place.

Inmediatamente aparecer el modulo en ese bloque.

ASOVAGOS

14 IVAN M. GRANADA-JHONNY O. TURIZO

Hacemos lo mismo para el otro modulo de PWM. Quedando de la siguiente


manera.

Si no se quiere hacer esta colocacin, podemos escoger el bloque digital que


queremos usar para este modulo, esto se hace antes de dar Place en el men
del modulo as:

ASOVAGOS

15 IVAN M. GRANADA-JHONNY O. TURIZO

Vern como se ilumina los bloques donde es posible colocar el modulo de PWM
Luego de esto configuramos el micro y los dos mdulos.
Primero los parmetros globales del microcontrolador.

VC1, VC2 y VC3 son fuentes de reloj que se pueden usar para los mdulos.

PWM8_1

ASOVAGOS

PWM8_2

16 IVAN M. GRANADA-JHONNY O. TURIZO

Se vera lo siguiente
en la matriz de
mdulos digitales.

Luego configuramos los


pines de salida de los
mdulos de la siguiente
manera.

Damos Clic en digital


Row_0_Output_0.

ASOVAGOS

interconnect

Aparecer la
siguiente ventana.

17 IVAN M. GRANADA-JHONNY O. TURIZO

En este punto seleccionamos el bfer que queremos de salida y damos


Close.

Veremos lo siguiente.

La salida de PWM se cablea a GlobalOutEven0.

Luego escogemos el pin es importante escoger un pin par, por que la


salida del PWM esta en una salida global Par en este caso escoger el
Port0_0, aunque es posible escoger algunos pines impares.
Damos clic en el puerto y en el men select y escogemos GlobalOutEven_0.

ASOVAGOS

18 IVAN M. GRANADA-JHONNY O. TURIZO

Veremos lo siguiente, luego de hacer el mismo procedimiento con la


salida del modulo de PWM8_2

En este punto ya estn listos los mdulos y podemos hacer el cdigo.

Para esto damos clic en application editor, sources files y main.c

Para hacer el cdigo es importante leer las APIs del datasheet del modulo de PWM.
Para esta aplicacin el cdigo es el siguiente.

Para la programacin del dispositivo se sigue el procedimiento descrito en la


practica 1.

ASOVAGOS

19 IVAN M. GRANADA-JHONNY O. TURIZO

PRACTICA 4:
ADC con visualizacin en LCD
El ejercicio propuesto es el siguiente:
VCC

R5
1k

Port0_7
R6

PSOC LCD

PSoC
CY8C29466
PGA
G=1

EF

ADC

Port0_[0..6]

8bits

7
4 inf- 3 control

R3
R

1k

VCC

Tomamos los modulo de LCD y de ADC del device editor, es necesario


pasar la entrada del ADC por una PGA (programmable gain amplifier).

Como podemos observar tenemos tres mdulos de los cuales dos sern
ubicados en las matrices (digital y anloga), los cuales son los mdulos de
PGA y ADC.
ASOVAGOS

20 IVAN M. GRANADA-JHONNY O. TURIZO

Teniendo definido previamente que la LCD no ocupa ningn bloque anlogo o


digital.
Debern aparecer de la siguiente forma:

Luego de esto configuramos los recursos globales y los mdulos.

Primero los parmetros globales del microcontrolador

ASOVAGOS

Luego el modulo de LCD.

21 IVAN M. GRANADA-JHONNY O. TURIZO

Luego la PGA.

Luego el ADC.

Nota: mientras se hacen las


configuraciones de los
parmetros de los
mdulos de usuario, en este
caso la PGA y el ADC, se debe
prestar especial atencin a las
conexiones que se realizan
automticamente en la
matriz de bloques
anlogos.

En la ventana de GPIO
vern las conexiones que
se deben hacer entre el
PSoC y el exterior.

ASOVAGOS

22 IVAN M. GRANADA-JHONNY O. TURIZO

Luego configuramos las conexiones que hicieron falta en la matriz de


bloques anlogos de la siguiente manera, escogemos la entrada de la
PGA.

Damos clic en AnalogColumn_InputMUX_0 y escogemos el Port0_7.

Este modulo de ADC como lo describe el manual (The output is based

on an input voltage between -Vref and +Vref centered at AGND),


necesita una referencia negativa que en este caso se configuro en el
PORT_2_3, el cual es conectado a tierra mediante una resistencia de pulldown
en la ventana de GPIO. En la columna Drive.

En este punto ya estn listos los mdulos y podemos hacer el cdigo.

Para esto damos clic en application editor, sources files y main.c

ASOVAGOS

23 IVAN M. GRANADA-JHONNY O. TURIZO

El cdigo es el siguiente:
//---------------------------------------------------------------------------// C main line
//---------------------------------------------------------------------------#include <m8c.h>
// part specific constants and macros
#include "PSoCAPI.h" // PSoC API definitions for all User Modules
void main(){
int result;
// Insert your main routine code
here.
LCD_1_Start();
LCD_1_Position(0,2);
LCD_1_PrCString("PSoC LCD");
PGA_1_Start(2);
ADCINC_1_Start(2);
ADCINC_1_GetSamples(0);
M8C_EnableGInt;
while (1) {
if (ADCINC_1_fIsDataAvailable() != 0){
result = ADCINC_1_bGetData();
LCD_1_Position(1,12);
LCD_1_PrHexByte(result);
}
}
}

ASOVAGOS

24 IVAN M. GRANADA-JHONNY O. TURIZO

PRACTICA 5:
ADC, DAC y Comparador.
VCC

El ejercicio
propuesto es el
siguiente:

R5

G=1
PGA

8bits
ADC

1k

Port0_7
R6

DAC
COMP

PSoC
CY8C29466
PORT0_5
PORT0_4

1k

Tomamos los modulo necesarios para esta aplicacin.

Como podemos observar tenemos los mdulos los cuales sern ubicados en
las matrices (digital y anloga),
Teniendo definido previamente que es indispensable el uso de el PGA, con
ganancia de 1, para la entrada del ADC.
ASOVAGOS

25 IVAN M. GRANADA-JHONNY O. TURIZO

Obteniendo como resultado el siguiente pantallaso:

Luego de esto, configuramos el micro y los mdulos que estamos


usando.

Primero los parmetros globales del


microcontrolador

Luego la PGA.

Luego el ADC.

ASOVAGOS

26 IVAN M. GRANADA-JHONNY O. TURIZO

Nota: mientras se hacen las configuraciones de los parmetros de los


mdulos de usuario, en este caso la PGA y el ADC, se debe prestar
especial atencin a las conexiones que se realizan automticamente en la
matriz de bloques anlogos.

Luego el DAC y por ultimo el COMPARADOR.

El valor de referencia es 0.5*Vcc = 2.5v.

Luego configuramos las conexiones que hicieron falta en la matriz de


bloques anlogos de la siguiente manera, escogemos la entrada de la
PGA, que ya se hizo,
La entrada del comparador que se hace de la misma manera, y las
salidas del DAC y el comparador, deberan quedar de esta manera.

En este punto ya estn listos los mdulos y podemos hacer el cdigo.


Para esto damos clic en application editor, sources files y main.c

El cdigo:

ASOVAGOS

27 IVAN M. GRANADA-JHONNY O. TURIZO

Para la programacin del dispositivo se sigue el procedimiento


descrito en la practica 1.

AUTORES:
IVAN MAURICIO GRANADA SACRISTAN
JHONNY OSWALDO TURIZO TENJO

ASOVAGOS

28 IVAN M. GRANADA-JHONNY O. TURIZO