jueves, 15 de agosto de 2013

Mini-entrenadora de PIC16F84A

Hola que tal, antier por la noche estuve pensando en mis dos cajas de componentes, herramientas y materiales que tengo, y recorde el gran desorden que deje el fin de semestre pasado con mis componentes, y decidí que al día siguiente (osea ayer) lo dedicaría especialmente a la organización de todo mi material, ahora que estuve por Baja California pase a uno de eso bazares tan famosos por haya y encontré unos pequeños compartimientos para guardar especias en la cocina y me dije, "porque en vez de especias no guardo mejor mis componentes así los tengo organizados y no estoy batallando a la hora de buscarlos", y así fue, dedique todo el día a organizar y tirar lo que no sirve, un trabajo muy enfadoso, muchas veces me quise dar por vencido pero seguí adelante, en fin, entre todos mis cachivaches guardados encontré unos microcontroladores un poco "pasados de moda" se podría decir, o mejor dicho tecnología vieja (al menos para mi)encontré los famosos PIC16F84A, dos para mi suerte,entonces me surgió la idea de utilizarlos, quise hacer un reloj con uno de ellos pero al final decidí mejor hacer una tarjeta entrenadora de uso general por asi llamarlo a la cual después le agregare los display de 7-segmentos en una especie de shield.

No soy una persona que planea del todo sus proyectos, al menos no los plasmo en hojas, me gusta ser un poco espontaneo, aunque algunas cosas muy importantes y que se que olvidare mas tarde si las anoto en pequenas notitas, pero conforme voy avanzando me gusta aveces agregarle monerias o quitarle cosas que no utilizare.

En principio pense en hacer una entrenadora del PIC16F84A en una tarjeta perforada, pero pense en mejor hacer una tarjeta entrenadora de uso general, esto es con pines hembra, asi se le podria conectar cualquier cosa y serviria para muchos mas proyectos que solo conectarles LED.

Entonces mi idea quedo de la siguiente forma:

Caracteristicas

-Tira de pines de 8 en cada extremo
-La tira de pines incluye alimentacion y tierra
-Boton de Reset
-Oscilador y capacitores
-Led indicador de encendido
-Socket para montar y desmontar el PIC16F84A de la tarjeta.

En realidad es muy sencillo solo se hacen las conexiones principales para encender el PIC16F84A, la alimentación  el oscilador, el reset y por ultimo los puertos de I/O se conectan a unos header hembras, lo anterior nos queda de la siguiente forma.

Este es el mio, así fue como me quedo, ustedes pueden acomodarlo a su gusto, lo hice así de pequeño por comodidad y por  ahorro de espacio, también agregue un led indicador de cortocircuito, aunque muchos lo verán como un indicador de encendido yo lo veo como un indicador de cortocircuito, ya que si ese led no enciende quiere decir que tenemos un corto y hay que desconectar la alimentación inmediatamente antes de que se queme el circuito.




La verdad es que es algo muy simple pero creo yo que sera algo muy útil ya no cargaremos con la protoboard ocupada por el circuito de alimentación del PIC16F84A, y la podremos utilizar para varios proyectos, así como hacerle shields de tal manera que también podamos usar con otras entrenadoras, etc. 

lunes, 12 de agosto de 2013

Software del electronico...

Bueno, creo que ya los atarante un poco con Texas Instruments, esta vez no lo mencionare, bueno si, pero no hablare solo de eso, esta vez quiero platicarles como estudiante de electrónica sobre cuales son algunas herramientas que me han ayudado en el transcurso de mis estudios, hablando de algunos de sus atractivos, algunas ventajas y algunas desventajas, facilidades de usar, etc.

La mayoria de los estudiantes o profesionistas en el area de la electronica sabemos que antes de hacer un circuito en fisico ( o en el protoboard) lo conveniente es simularlo, esto porque?, pues aunque al implementarlo fisicamente todo puede pasar, si en simulacion funciona hay mas posibilidades de que en la implementacion funcione y se tiene una idea de lo que sucedera aunque no sea del todo igual, sin embargo, si en simulacion no funciona mejor ni te esfuerces haciendo la implementacion, aunque hay casos en los cuales en simulacion no funciona pero en implemetacion si, son casos especiales en los que el modelo del simulador del componente o los componentes no es el correcto o no se tiene el componente correcto. Pero ese no es el punto, el punto es que para realizar la simulacion obviamente ocupamos simuladores, a lo largo de mis estudios yo he utilizado 3 simuladores que me han gustado y me han servido.

Simuladores:
- Labcenter electronics - Proteus - ISIS
- National Instruments - Multisim
- TI - Tina


Ahora explico un poco de las bondades de cada uno, cabe mencionar que los dos primeros (ISIS  y Multisim) son simuladores en "tiempo real" esto es que van cambiando conforme el tiempo pasa como si fuera el circuito funcionando en "tiempo real", y el ultimo (Tina) es un simulador del tipo spice, spice es el acronimo en ingles de Simulation Program with Integrated Circuits Emphasis, este tipo de simulador a diferencia de los de "tiempo real" tu le especificas el tiempo que quieres simular, si los primeros 10 segundos o solo quieres ver como se comporta el circuito 1 mS, o hasta que se estabilice la senal, etc.

Entonces pasamos a la parte donde vienen las ventajas y desventajas (esta parte esta basada en mis experiencias y mis gustos, estos cambian dependiendo de cada persona)

Proteus

Ventajas


- Tiene soporte para simular muchos microcontroladores, como pics, msp430, avr, etc.
- Se puede pasar el circuito simulado a un circuito impreso fácilmente con funciones internas del software.
- Muy simple de usar y fácil de aprender
- No se cuelga como otros simuladores en "tiempo real"

Desventajas

- (En mi opinión) La interfaz no es muy amigable
- Falta soporte para muchos componentes







Multisim

Ventajas

- Soporte de una gran gama de componentes
- Interfaz amigable
- Simula osciloscopios y generadores de funciones de marcas conocidas
- Comunicación con Labview

Desventajas

- Es muy pesado por ser del tipo "tiempo real", por lo tanto en PC's de bajos recursos lo mas probable es que se cuelgue un buen rato
- No es muy amigable para simular microcontroladores
- Muy pocos microcontroladores en sus librerías



Tina

Ventajas

- Muy ligero en instalación (hasta parece de juguete como dicen)
- No se cuelga, ya que no es en tiempo real, simula solo un tiempo especifico y por lo tanto no mantiene el PC ocupado, este es especial para PC's con bajos recursos.
- Contiene una gran librería de componentes, en especial los de Texas Instruments.
- Es gratuito

Desventajas

- No es tan fácil de usar (tampoco es exageradamente difícil)
- No tiene una interfaz bonita como los dos anteriores
- No simula microcontroladores



Bueno estas son unas de mis opiniones sobre estos simuladores los cuales yo he tenido experiencia en usarlos ( no soy un experto) y me han ayudado mucho.

Cada uno tiene su propia especialidad, para mi Proteus es el ideal para construir una pequeña tarjeta entrenadora virtual para los microcontroladores y probar algunos programas de microcontroladores como pics o msp430, multisim es mas para simular circuitos analógicos en general, y tina al igual que multisim es para circuitos analógicos pero con la ventaja de ser simulación spice y este contiene una gran librería de componentes de Texas Instruments.

Como es costumbre mía, aquí algunos links:


Agradecería si sugieren algunos simuladores los cuales les hayan funcionado, para mi estos son los mas completos, hay muchísimo pero siento que los demás son dedicados a cierta área de la electrónica y estos los veo como que abarcan mas y me han funcionado.

Mas adelante hablare sobre simuladores de VHDL y del VHDL en FPGA (introducción), tal vez la próxima entrada sera sobre una tarjeta entrenadora virtual para el MSP430 hecha en proteus y una introducción al CCS. 




Energia, MSP430 Launchpad

Hola de nuevo, en estas vacaciones me di la tarea de probar el software de Energia para MSP430 Launchpad, este software es muy similar al que se usa para programar Arduino, pero en este caso es para MSP430 de Texas Instruments, la verdad en mi opinión tiene cosas positivas y cosas negativas.

POSTIVAS:

- Es fácil emigrar de Arduino a Launchpad con este software ya que sus librerías son prácticamente las mismas.
- Hay mucha información sobre Arduino entonces Energia por ser como su hermano gemelo también se tiene mucha información en cuanto a librerías.
- Rapido desarrollo de prototipos
- Fácil aprender a usar Energia si es que no sabias usar Arduino.

NEGATIVAS:

- No sacas provecho al 100% del MSP430, ya que al parecer un micro-controlador muy pequeño y sin chiste este tiene una gran ventaja, su ultra-bajo consumo.
- No se puede debuguear en la tarjeta Launchpad (hasta donde yo se solo es debugueable con CCS)


Estas son unas de las pocas ventajas y desventajas de usar este software, en realidad es muy fácil de usar y para un apuro es una buena opción.

Ahora que estuve en mi Verano Científico en la UABC (Universidad Autónoma de Baja California) en Tijuana, Baja California, use este dispositivo como una opción para probar con otra plataforma ya que los encargados del proyecto en el cual trabaje ya habían hecho el mismo trabajo pero con Arduino, yo solo probé el trabajo con una plataforma alternativa haciendo unos pocos cambios, use este software para que los encargados pudieran fácilmente pasarlo a Arduinos.

Para los interesados en conocer este software hay mucha información por Internet, pero aquí les dejare el link de la pagina oficial de Energia.

Energia Link

jueves, 23 de mayo de 2013

Prueba de PWM y ADC de Stellaris LM4F120 LaunchPad

Esta entrada consiste en un pequeno proyecto para la prueba de el ADC y PWM del Stellaris LM4F120 de TI, este es un kit de evaluacion llamado LaunchPad, las prueba que haremos seran simples, solo tomar una muestra de un sensor con el ADC del Stellaris de 10bits (programable a 12bits) y desplegarlo con un PWM del mismo MCU y este con un ciclo de trabajo proporcional a la senal medida con el ADC.

Para la elaboracion del proyecto se utilizo el compilador MikroC for Arm, este compilador es valido para MCU de ST y TI, con ARM M3 y ARM M4, proximamente hare este mismo proyecto pero con CCS (Code Composer Studio de TI) y otros compiladores, o bien subo el mismo codigo pero con diferentes compiladores.

Iva a dar una explicacion con mis palabras sobre lo que trata el codigo, pero creo yo que con el codigo comentado estara bien explicado cada parte de el, si alguna parte hay dudas entonces esta abierta la seccion de comentarios.

Codigo en MikroC for Arm:



NOTA: hay un pequeno error en los comentarios del codigo, en el codigo la configuracion del pwm es T0CCP1, T0(timmer0)CCP1(comparador1), y en los comentarios puse por error CCP0. Esto no altera el funcionamiento.

Lo siguiente fue agregarle algun sensor al cual estar midiendo y agregar una salida la cual este cambiando en base al sensor para asi poder verificar que funciona. Para esto el sensor que se utilizo no fue en si un sensor si no una fotorresistencia (resistencia que varia su valor resistivo conforme a los fotones que le llegan a la superficie) en serie con un resistor y de aqui se senso la luminosidad y para ver el cambio se utilizo un simple LED. 

Aqui muestro las fotografias del proyecto, el pequeno osciloscopio utilizado es una tarjeta Stellaris de un kit de evaluacion de TI, es el modelo EKS-LM3S3748, y el osciloscopio es su DEMO, el cual es muy util como se ve aqui.

 
 



Para consultar pines de la tarjeta para ver salidas de PWM y entradas del ADC se puede consultar el Datasheet del Stellaris y la guia de uso la cual anexare a continuacion.

(click para ver o descargar, dropbox).






Esto es todo por el momento, agradesco su visita y estamos para cualquier duda, comentario, aclaracion, correcion, critica, etc...

Saludos.

martes, 23 de abril de 2013

MSP430 MCU 16BITS



Hola de nuevo, aquí estamos realizando mi primer post con algo que a mi en lo particular me parece interesante, la mayoría de los que estamos enrolados en la electrónica conocemos al menos un poco de MCU's (microcontroladores), como por ejemplo los famosos PIC's, pero hoy traigo una muy buena alternativa que ha creado Texas Instruments, se trata nada mas y nada menos que de los MSP430, estos son una alternativa de microcontroladores de 16bits, con una ventaja muy fuerte, tiene un sistema de ahorro de energía muy potente.


En particular les hablare un poco sobre algo que me ha llamado la atención aun mas, se trata de una especie de tarjeta entrenadora y programador que esta a la venta en la pagina de Texas Instruments, se llama MSP430 LAUNCHPAD, den click en el link anterior para ver mas detalles de estas tarjetas, no solo para el MCU de 16bits MSP430 si no para otros microcontroladores como Stellaris y Piccolo.

Hay muchos motivos por los cuales estas tarjetas me llamaron la atención  una es que es entrenadora y programador en una sola tarjeta y la mejor de todas es que el precio de estas tarjetas es muy accesible, como por ejemplo el LAUNCHPAD MSP430 esta en 9.99dlls, muy por debajo de lo que te podría costar solo el programador de otras marcas, sin embargo no solo es precio si no su arquitectura y funciones, para no entrar en detalle dejo aquí unos links para los interesados puedan obtener mas información sobre este producto que a mi parecer lo veo muy bueno, yo tengo uno y la verdad me fascina.

Wiki Launchpad MSP430
Informacion MSP430 LaunchPad Value Line Development Kit

Y por si fuera poco, no solo te dan casi regalado el hardware, también te proporcionan una licencia gratuita limitada de Code Composer Studio, y algunas herramientas mas, y una wiki muy completa para poder iniciar a utilizar tu launchpad y mucha documentación sobre estos dispositivos.


Les dejo aqui el link a un video que me motivo a promocionar un poco estas alternativas muy buenas en MCU's.


Próximamente les traeré algunas imágenes de mi MSP430 LAUNCHPAD y de mi Stellaris LAUNCHPAD con algunos ejemplos.


Saludos.







martes, 16 de abril de 2013

Bienvenida!

Bienvenidos, este es un diario-blog personal, en el quiero mostrar mis experiencias como estudiante y apasionado de la electrónica.

Haré de todo tipo de publicaciones, tanto como proyectos personales, así como tips, noticias, etc, la gran mayoría en relación a la electrónica.

También podre resolver dudas y escribiré algunas entradas especiales dirigidas a proyectos que quiero o he realizado, y otras entradas con fin de mostrar lo que yo he aprendido y entendido.

Espero con ansias comentarios constructivos, si hay comentarios con ofensas serán ignorados y eliminados, pero todo aquel comentario constructivo sera bienvenido.

Mi objetivo con este blog es el de compartir mis conocimientos con la comunidad, y al mismo tiempo que la comunidad comparta sus conocimientos conmigo, todos nos ayudamos, todos aprendemos y así todos ganamos.

Saludos y bienvenidos.