introduccion programacion de psoc (cap1)

Upload: diego-leyton

Post on 19-Jul-2015

1.286 views

Category:

Documents


0 download

TRANSCRIPT

Cap1 Introduccin al entorno de trabajo, Manejo de Entradas/Salidas, Retardos por Software y LCD.

Introduccin a La Programacin De Los Microcontroladores PsocEste pequeo tutorial est enfocado a la programacin bsica de la referencia CY8C29466 (lo cual no significa que no sirva para otro Psoc), para algunos de los mdulos tpicos y sus configuraciones normales, por ello todos los ejemplos han sido probados. Por otro lado se prev que hay un entendimiento del lenguaje C y de Digitales no a un nivel avanzado pero algo de conocimientos claros, esto evita que este pequeo tutorial no se haga extenso. Se pretende desarrollar poco a poco los siguientes temas: Cap 1 Introduccin al entorno de trabajo. 1.1 Manejo de Entradas/Salidas Discretas, Retardos por Software y LCD Cap 2. Mdulo Timer, Interrupciones. Cap 3. Mdulo PWM, Mdulo Counter (Contadores). Cap 4. Mdulo PGA (op-amp), Mdulo CMPPRG (Comparador). Cap 5. Mdulo ADC, Mdulo DAC. Cap 6. Comunicacin Serie Asncrona Mdulos RX/TX. Cap 7. Filtros: Mdulo LPF2 (Pasa bajo), Mdulo BPF2 (Pasa Banda). Cap 8. Reconfigurabilidad. Este tutorial no abarca todos los aspectos de la potencia del Psoc, pero sirve como una introduccin a este mundo, por lo que cualquier aporte al tutorial ser vlido, cualquier duda me puedes escribir al foro responder siempre y cuando tus dudas no sobrepasen mis conocimientos, por otro lado me imagino que instalaste PSoC Designer versin 5, este ya trae un compilador de C gratis para psoc llamado HI-TECH C PRO, si no lo instalaste es mejor que lo hagas para poder continuar, sin ms prembulos empecemos.

1 Alexander Senz U.

Cap1 Introduccin al entorno de trabajo, Manejo de Entradas/Salidas, Retardos por Software y LCD.

Cap 1 Introduccin al entorno de trabajo.En la versin 5 la que yo utilizo PSoC Designer viene incorporado con PSoC Express; PSoC Express se utiliza para crear programas sin una sola lnea de cdigo esto es programacin grfica, el inconveniente es que no tenemos mucho control sobre nuestro sistema, en cambio PSoC Designer permite programar en C o en assembler, yo me centrare en C porque no se assembler para Psoc.

Crear un proyectoAbramos PSoC Designer 5, nos apareci la pgina de inicio, proyecto, damos file New Project: bueno creemos un

Le damos de nombre Proyecto1, seleccionamos la carpeta y muy importante seleccionar Chip-level Project, luego ok, Nos aparece:

Bueno este cuadro de dialogo nos dice en que lenguaje vamos a programar y cual dispositivo programaremos, lgico seleccionaremos a C y no assembler.2 Alexander Senz U.

Cap1 Introduccin al entorno de trabajo, Manejo de Entradas/Salidas, Retardos por Software y LCD.

Si observamos nos apareci una referencia de un Psoc que no es la de nosotros para buscarla oprimimos view Catalog y buscamos la referencia CY8C29466-24PXI

Lo seleccionamos y le oprimimos select, ahora ya tenemos nuestra referencia del dispositivo y tambin que vamos a programar en C.

Luego OK3 Alexander Senz U.

Cap1 Introduccin al entorno de trabajo, Manejo de Entradas/Salidas, Retardos por Software y LCD.

Por fin tenemos nuestro IDE, si no aparecen todos estos cuadros, en men View, podemos habilitarlos todos:

Referencias globales: Aqu se configuran el reloj, divisores de frecuenciadespus lo veremos mejor

Se observa la carpeta donde estn ubicados los archivos los mdulos que estemos utilizando y por supuesto nuestro Cdigo en C.

Propiedades: Cuando agregamos los mdulos esta ventana nos permite cambiar las caractersticas del dispositivo, por ejemplo si tenemos un PWM, desde aqu podemos cambiarle el ancho del pulso

[Pinout]: al hacer doble click nos permite ver los pines del Psoc, una gua a la hora de montar los proyectos.

Mdulos de usuario Aqu estn Todos los mdulos soportados por nuestro psoc, mdulos Anlogos y Digitales. Tabla de puertos (GPIO): Desde aqu podemos seleccionar que pines son entrada y cuales son de salida y cambiarles el nombre Espacio de trabajo: es la parte del fondo de esta imagen.

F6 compilamos y generamos el .hex para quemar el psoc.

Estas opciones nos permiten movernos dentro del espacio de trabajo, all es donde quedan plasmados los mdulos que hemos agregado, esas lneas y cuadros que aparecen al fondo de la imagen.

4 Alexander Senz U.

Cap1 Introduccin al entorno de trabajo, Manejo de Entradas/Salidas, Retardos por Software y LCD.

Ahora abramos el archivo donde vamos a programar en C:

Vemos:

Siempre hay que dejar esas lneas de cdigo. Presionemos Ctrl+F6 (el cual compila todos los cdigos fuentes y tambin el proyecto) y observemos que se ha generado el archivo .hex en la carpeta output dentro de la carpeta del proyecto, yo lo tengo en: D:\Curso de Psoc\Proyecto1\Proyecto1\Proyecto1\output All hay varios archivos en particular, y uno llamado Proyecto1 y su extensin es .HEX, este es el que nos sirve para programar el Psoc. Tambin esta Ctrl+F7 este solo nos compila el cdigo pero no el proyecto completo por lo tanto no hay el .hex, solo nos sirve para saber si no tenemos errores en cdigo.

5 Alexander Senz U.

Cap1 Introduccin al entorno de trabajo, Manejo de Entradas/Salidas, Retardos por Software y LCD.

Programar el Psoc (con CYP)Abrimos el CYP.exe : Le damos click en Settings y configurar: (El puerto paralelo donde lo tengas habilitado)

Luego ponemos el Integrado (psoc) en el Programador (Hardware), le damos click en ChkSum y nos tiene que aparecer la referencia del psoc en:

6 Alexander Senz U.

Cap1 Introduccin al entorno de trabajo, Manejo de Entradas/Salidas, Retardos por Software y LCD.

Si no aparece la referencia no se puede quemar (no lo reconoce ),tiene que aparecer. Luego le damos click en load y abrimos nuestro archivo Proyecto1.hex que est ubicado en la carpeta output en mi caso ser: D:\Curso de Psoc\Proyecto1\Proyecto1\Proyecto1\output

Le damos programar y esperar

y listo ya puedes sacar el psoc, aunque ste ya quedo grabado, no har nada porque no le programamos nada en C, pero ya sabes quemar as ser siempre en todos los proyectos que hagamos. Bueno por ahora dejemos as y pasemos un poco a la teora.

7 Alexander Senz U.

Cap1 Introduccin al entorno de trabajo, Manejo de Entradas/Salidas, Retardos por Software y LCD.

Cap 1.1 Manejo de Entradas/Salidas Discretas, Retardos por Software y LCD.Entradas/Salidas DiscretasPara leer o escribir un bit de algn puerto se utiliza el registro PRTXDR, donde X es el puerto. (Este Psoc tiene 3 puertos, el 0,1,2). Personalmente utilizar el PRTXDR directamente en el cdigo fuente principal, no me gusta porque toca escribir lneas de cdigo como estas: #define Bit(bitNumber) (1