Entradas

PoC - Controlar un AMux con la señal EoS del SAR ADC PSoC5LP

Imagen
El proposito de este proyecto es controlar las entradas del AMuxHw empleando solamente señales generadas por el hardware interno del PSoC5LP. En este caso lo hice usando una señal que veo poco en los foros de Cypress, es el EoS (End of Sample), cuando esta señal presenta un flanco de subida nos indica que el canal del ADC fue sampleado, pero ¿Por que no usar la señal EoC (End of Convertion)?, como su nombre lo indica, el EoC presenta un flanco de subida cuando la conversion fue terminada, es decir el valor analogo presente en el pin del ADC fue convertido a su valor binario equivalente. Entonces ¿Por que usar el EoS?, como ya vimos la señal EoS presenta un flanco de subida cuando termino el sampleo del canal del ADC, es decir, la diferencia entre la señal EoC y EoS es el tiempo que tarda el ADC en la conversión de analogo a binario, con esto en mente, podemos cambiar la entrada del AMuxHw tenemos la señal EoS, esta entra a trabajar funcionando como clock para un BasicCounter q...

¿Como conectar un bus en PSoC Creator?

Imagen
Habia tenido problemas conectando unos pines a un bus, aqui la solución:

PSoC Creator external components

Imagen
Estoy haciendo componentes externos para usarlos en el esquematico de mis proyectos en PSoC Creator, los estaré subiendo en esta repo de GitHub: PSoC_Creator_External_Components. I'm making external components for use it on my PSoC Creator project's schematics, i will upload them on this GitHub repository: PSoC_Creator_External_Components. El primer componente fue un MPU6050, si quieres que haga algun modulo o componente hazmelo saber en los comentario, las instrucciones para añadir el componente a tu proyecto estan en el README del repo. The first component was a MPU6050, if you need help making one external component or module symbol let me know on the comments below, instructions for add the component to your project are in the repository README file. Acá la imagen del componente MPU6050: / Here´s the MPU6050 component image:

PyUSB

Descargamos y descomprimimos el zip que encontramos en su página, abrimos una ventana de comandos dentro de la carpeta y lo instalamos con: >python setup.py install Una vez terminado el proceso checamos que se instalo correctamente: >python Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:44:40) [MSC v.1600 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>>import usb >>> Al no marcar error sabemos que tenemos instalado PyUSB. Para obtener ayuda sobre el modulo: >>>import usb >>>help(usb) Help on package usb: NAME usb - PyUSB - Easy USB access in Python DESCRIPTION This package exports the following modules and subpackages: core - the main USB implementation legacy - the compatibility layer with 0.x version backend - the support for backend implementations. control - USB standard control requests. ...

Programar CY8CKIT049-42xx con OpenOCD y STLink-v2

Imagen
En sus versiones mas recientes OpenOCD tiene soporte para los microcontroladores PSoC4, usando el STLink-v2 que viene con la tarjeta STM32F4Discovery y conexiones SWD se puede programar la tarjeta CY8CKIT049-42xx. Una vez separado el "programador" que trae la tarjeta de PSoC4, las conexiones son las siguientes: Conexiones SWD entre la STLink-v2 y la CY8CKIT049-42xx Creamos nuestro programa en PSoC Creator, esta vez sin el componente Bootloader, el procedimiento es como si hicieramos un proyecto para la Pioneer Board de PSoC4. En mi caso el proyecto se llama LED, una vez compilado de manera exitosa nos situamos en el directorio de nuestro projecto, ingresamos en la carpeta con extensión .cydsn -> CortexM0 -> ARM_GCC_4xx -> Debug (o Release, dependiendo de como esta configurado el build process), dentro de esta carpeta esta el .hex generado despues de la compilación exitosa, (nombre_del_proyecto).hex, abrimos una ventana de comandos en esa carpeta, conectamos nue...

nRF51 Blink | mbed | OpenOCD | ST-Link

Imagen
Otra forma de programar el modulo nRF51 es usando la plataforma de prototipado mbed. Podemos registrar una plataforma de Nordic, ya sea la nRF51822 mKIT o el nRF51 DK, incluso el Dongle, en lo particular no he usado mucho mbed pero para hacer pruebas rapidas viene bien. nRF51822 mKIT Como vemos este tiene dos LEDs: LED1 en P0.18 y LED2 en P0.19, además tiene dos botones de usuario, BTN1 en P0.16 y BTN2 en P0.17. Tambien cuenta con perifericos ya mapeados en pines, como el SPI, I2C, entradas analogicas en P0.1 hasta P0.6. nRF51-DK Este DK tiene cuatro LEDs, LED1 en P0.21, LED2 en P0.22, LED3 en P0.23 y LED4 en P0.24, este ultimo comparte pin con el Slave Select del SPI0, cuenta con cuatro botones, BTN1 en P0.17, BTN2 en P0.18, BTN3 en P0.19 y BTN4 en P0.20, tambien tiene las mismas entradas analogicas de P0.1 hasta P0.06. nRF51 Dongle Este tiene solo un LED RGB, el LED rojo en P0.21, LED verde en P0.22 y LED azul en P0.23 y seis I/O disponibles en uno de los costado...

Blink nRF51 | Keil | St Link

Imagen
Siguiendo la tradición hice que un LED haga el famoso blink. La primer prueba la hice con Keil 5, ya que tiene muchos ejemplos para el nRF51422 que viene en el DK oficial, lo único que tiene diferente al nRF51822 es que el primero soporta el protocolo ANT+. Abrimos Keil y presionamos sobre  el Pack Installer: Y nos aparecerá la siguiente ventana: En la parte izquierda abrimos la pestaña de All Devices -> Nordic Semiconductor -> nRF51 Series -> nRF51822_xxAA , esta es la versión del micro que tengo. El código completo del chip es: nRF51822 QFAAH0 1517DE que con ayuda de esta tabla sabemos que revisión es el chip: En mi caso es un nRF51822, empaquetado QFN48 6mm x 6mm, 256 kB de Flash y 16 kB de RAM, y fue fabricado la semana 17 del año 2015. Del lado derecho baje todos los drivers para tenerlos a la mano, y en la pestaña de examples escogí el blink blank PCA10028, esto quiere decir que el ejemplo no depende de un SoftDevice (blank) y qu...