Películas y series

octubre 12, 2018 0 comentarios
En ocasiones con mis amigos sale el tema, sobre que películas ver o de que tipo me gusta ver, algunas recomendaciones y cosas por el estilo, bueno aquí una lista de películas o series que he visto y que me han gustado (lista pendiente en lo que me acuerdo de otros títulos).

Películas:
  • Animales fantásticos y dónde encontrarlos
  • Big Hero 6 (Grandes héroes)
  • El código enigma
  • Harry Potter 1, 2, 3, 4, 5, 6, 7-Parte 1 y 7-Parte 2
  • Iron Man 1, 2 y 3
  • John Wick 1 y 2
  • Mente indomable
  • Mi segunda vez
  • La corrispondeza (Te amaré eternamente)
  • La gran fuga
  • La pantera rosa 1 y 2
  • La teoría del todo
  • Los cuatro guerreros 1, 2 y 3
  • Los ilusionistas 1 y 2
  • Ocean's 8 - Las estafadoras
  • Punto de quiebre (1991)
  • Punto de quiebre (2015)
  • Saw 1, 2, 3, 4, 5, 6, 7 y 8
  • Si no despierto
  • Una mente brillante
Series:
  • Bones (No la he terminado de ver)
  • Breaking Bad (No la he terminado de ver)
  • Castle (No la he terminado de ver)
  • Dexter (No la he terminado de ver)
  • Mr. Robot (No la he terminado de ver)

Recomiéndenme algo que consideren interesante para ver...
Blogger Tricks

MSP-EXP430F5529 & CCS: Basic use of ADC12_A

septiembre 30, 2018 0 comentarios
Description:
Following some examples with the MSP430F5529 and using CCS, it is the turn to use the ADC12_A, which has a resolution of 12 bits, this time we will use the example called "MSP430F55xx_adc_01" included in the folder MSP430F552x Code Examples.

What does this example? Basically it configures to read the voltage through port A0 and attend it by means of an interruption (the system is in LowPowerMode until the interruption takes it out of there), when the voltage in A0 is greater than 0.5 * AVcc (considering that AVcc is connected to VCC, the value should be about 3.3V approximately, I have measured it with my multimeter and walked in the 3.5V) will turn on LED1, otherwise it will remain off.

Circuit:
Now reviewing the schematic of the experimental board, we will note that pin A0 is connected to DB0 (a Touch Pad) which will not serve to demonstrate this example, therefore I have decided to use the potentiometer that has the board, this is connected to A5 (as shown in the following image), to work properly we must activate P1.8 and leave jumper JP2.
Firmware:
Considering these modifications, the code is as follows::
Video
Here is a small working video:
Download:
Here the direct link to DOWNLOAD the available files, you can also check or download the information from my repository on GitHub, if you do not know how to download it you can check here, well for now it's all, if you have doubts, comments, suggestions, concerns, etc. leave them and I will try to answer as soon as possible.
Bibliography:

5 Minutos! Rompecabezas que podría llevar mas tiempo

septiembre 02, 2018 0 comentarios
5-Minutos, bueno por lo menos ese fue el nombre que me dijeron que llevaba este rompecabezas. Les cuento hoy por la tarde decidí salir a caminar y me encontré con un puesto de rompecabezas de este estilo, debo confesar que a mi me gustan mucho, después de tratar de armar varios (unos los logre armar, otros no) decidí traerme este a casa, bueno lo tratare de armar para ver en cuento tiempo lo consigo.

Al final me llevo 20 minutos armarlo, creo que es buen tiempo, estuvo entretenido y divertido pero no imposible, cuando lo compre otra persona llevaba unos 30 minutos intentando armarlo, sin conseguir nada.

Hercules RM57L843 LaunchPad: Uso básico de la UART, probando los ejemplos de HALCoGen

agosto 29, 2018 0 comentarios
Descripción:
En este ejemplo, probaremos el demo que trae el HALCoGen y que tiene por nombre "example_sci_uart_9600.c" en donde se hace una comunicación con el serial con la computadora. Importante mencionar que las características de la comunicación serán las siguientes: Baudrate = 9600, Length = 8, Stop bits = 1, Parity = None. Otro punto que considero importante es revisar que tengas instalados los drivers del tu HerculesRM57 para que este tenga generado el puerto COM correspondiente y así poder hacer la comunicación de forma exitosa (en mi caso es el COM4).
Configuración en HALCoGen:
Bueno para iniciar, pues se debe crear un proyecto: File >> New >> Project. Luego seleccionar RM57L843ZWT >> Driver Enable >> Desmarcar todos los drivers y solo habilitar SCI1. Posteriormente ir a SCI1 >> SCI Data Format.
Al final solo basta con con ir a File >> Generate Code y listo.
Código:
Se ha utilizado el ejemplo que trae el HALCoGen y se ha agregado la opción para enviar el texto 4, haciendo uso de la función sprintf, como se muestra a continuación.
Resultado:
Aquí una captura de pantalla donde se aprecia los datos leídos por la terminal de CCS, importante.
 Descargas:
Aquí el enlace directo para DESCARGAR los archivos disponibles, también puedes revisar o descargar la información desde mi repositorio en GitHub, si no sabes como descargarlo puedes checar aquí, bueno por el momento es todo si tienes dudas, comentarios, sugerencias, inquietudes, traumas, etc. dejarlas y tratare de responder lo mas pronto posible.
Bibliografía:

DiskPart: Cambiar el tamaño de una microSD

agosto 22, 2018 0 comentarios
Hace tiempo me toco usar una pantalla TFT Touch de 3.2" de Mikroelektronika, con lo cual necesitaba una memoria de 2GB, para cargarle el archivo.RES generado por el VisualTFT, de principio sabemos que a estas alturas, conseguir una microSD de ese tamaño no tan fácil (por lo menos no en donde yo vivo), a lo me que refiero es que encuentras mas fácil una de 8,16, 32 e incluso superiores, pero no una de menor tamaño que son con las que funciona la pantalla.

Mikroe te vente las memorias de 2GB (a un precio muy caro debo decir, he hecho considero que todos de ello es caro, pero ese es otro asunto), debo decir que si se compro la pantalla con una, pero llego en mal estado y ni siquiera la computadora lo reconocía, por otro lado puedes encontrar memorias por ejemplo en ebay, mercado libre, etc. pero no se me hace viable mandar a pedir solo una.

NOTA: Antes de iniciar deseo aclarar algo, NO me hago responsable por el uso inadecuado de la siguiente información, esto lo comparto por que ami me ha servido y queda bajo tu responsabilidad hacer los pasos siguientes.

Ver discos que se tienen en la PC
Debo aclarar que esto lo he realizando en windows, para ser mas exactos lo he probado en 7 y 8.1, aunque creo que debe de aplicar a otras versiones, bueno seguiremos los siguientes pasos. 
  • Primero que nada, debemos tener conectada nuestra microSD.
  • Vamos a Inicio.
  • Seleccionamos Panel de control (en windows 8.1 entre primero a configuración de PC), preferiblemente que esta pantalla NO este en vista por categorías, puedes seleccionar iconos grandes u otro.
  • Seleccionar Herramientas administrativas.
  • Seleccionar Administración de equipos.
  • Seleccionar Almacenamiento.
  • Y por ultimo escoger Administración de discos, veras algo similar a la siguiente foto, varia claro esta esta en cada computadora, para este caso nuestra microSD es el Disco 1 y es el volumen G.
Modificando el tamaño:
  • Ir a menú inicio.
  • En buscar, teclear "DiskPart" y ejecutar, en su defecto entrar a CMD, teclear DiskPart, enter y se ejecutara.
  • Help: Muestra un menú con todas las opciones que se tiene.
  • List disk: Mostrara todos los discos de la PC, en este caso tiene el 0 y 1.
  • Select disk x: Donde x es nuestro microSD, como vimos anteriormente es el Disco 1.
  • List volume; Mostrara las particiones que se tengan, poner atención a cual volumen corresponde nuestra microSD, en este caso es el volumen 7 (G).
  • Select volume x; donde x es el volumen de nuestra microSD.
  • Delete volume: Esto para poder crear un nuevo volumen con el tamaño que requerimos, claro esta nunca mayor al tamaño total disponible.
  • Create partition primary size = x: Donde x es el tamaño deseado, en nuestro caso sera de 2000 (2G)
  • Fortmat fs=fat quick: Formateamos para que todo este listo.
  • exit
En la siguiente imagen se aprecia todo el proceso escrito en DiskPart:
El resultado en la ventana Administrador de discos es la siguiente:
Ahora comprobamos, el tamaño final.
Bueno por el momento es todo si tienes dudas, comentarios, sugerencias, inquietudes, traumas, etc. dejarlas y tratare de responder lo mas pronto posible.

Bibliografía:

MPLAB X & XC8: PWM por software - Controlando tiras de LEDs RGB

agosto 05, 2018 0 comentarios
Descripción:
En este ejemplo, veremos un pequeño ejemplo para controlar un metro de tira LED RGB (para esta demostración he usado la tira que tengo instalado en mi mesa de trabajo, de cierta forma es un previo para el circuito de control del proyecto "Iluminación de escritorio con LEDs RGB"), para ello vamos a generar un PWM por software haciendo uso de un timer e interrupciones, si buscar información de como funciona el PWM, los timers, etc. te recomiendo leer los enlaces al final, o en su caso buscar en la red, ya que aquí no encontraras mucha teoría.

Circuito:
Para el circuito se ha utilizado un PIC18F25K22, los MOSFETS serán del tipo N y la matricula es IPD600N25N3G (al parecer ya están descontinuados), para controlador dichos MOSFETS utilizare el driver IR4427, el circuito propuesto esta hecho con los materiales que se tenían en casa, así que ustedes pueden utilizar otros que cumplan sus requisitos (lo que muestro aquí es solo una referencia mas de como hacerlo), esteremos alimentando el control a 3.3V y la parte de potencia a 12V, como se va a generar un PWM por software, podemos usar cualquier pin como salidas del MCU, en este caso están conectados en el puerto B.
Código:
Para realizar el código hemos usado una Fpwm = 100Hz, la resolución sera de 8bits, por lo tanto tendremos 256 pasos para un ciclo de trabajo completo, así que necesitamos desbordar el TMR0 a 39 microsegundos, el código queda de la siguiente manera.
Vídeo:
Aquí un pequeño vídeo del circuito en funcionamiento:
Descargas:
Aquí el enlace directo para DESCARGAR los archivos disponibles, también puedes revisar o descargar la información desde mi repositorio en GitHub, si no sabes como descargarlo puedes checar aquí, bueno por el momento es todo si tienes dudas, comentarios, sugerencias, inquietudes, traumas, etc. dejarlas y tratare de responder lo mas pronto posible.
Bibliografía:
Actualizaciones:
  • 08/08/2018: Se agrego el código para descargar.

Librerías para KiCad: Actualización nro. 2

julio 17, 2018 0 comentarios
Saludos!! Hace tiempo mencione que era tiempo de iniciar a usar KiCad, bueno aun no lo domino al cien, pero como sabrán siempre se utilizan componentes que en algunas ocasiones no se encuentran en las librerias, por lo que es necesario crearlas o buscarlas en la red, en mi caso he optado por crear algunas que iré agregando a mi repositorio de GitHub (por si gustan seguirme), acá en el blog mostrare las actualizaciones o modificaciones de estas.

EYR_BoosterPacks
  • EK-TM4C123GXL LaunchPack 
EYR_IntegratedCircuits
  • IR4427 
EYR_Transistors
  • IPD600N25N3G

Aquí el enlace directo para DESCARGAR los archivos disponibles, también puedes revisar o descargar la información desde mi repositorio en GitHub, si no sabes como descargarlo puedes checar aquí, bueno por el momento es todo si tienes dudas, comentarios, sugerencias, inquietudes, traumas, etc. dejarlas y tratare de responder lo mas pronto posible.

Hercules RM57L843 LaunchPad: Uso básico del GIO - Blink LEDs y uso de botón

junio 17, 2018 0 comentarios
Descripción:
En este pequeño ejemplo, usaremos los LEDs y botones que trae nuestra LaunchPad, LED3 se configuro desde el HALCoGen para que se encienda al inicio después de haberse configurado los puerto, si presionamos el botón A entonces LED3 cambiara de estado y LED2 encenderá de forma intermitente cada 500ms, hasta que se vuelva a pulsad botón A.

Circuito:
El circuito de los botones y LEDs con los que cuenta nuestra LaunchPad la podemos encontrar en la wiki de TI.
Configuración HALCoGen:
Bueno para iniciar, pues se debe crear un proyecto, seleccionar Driver Enable, Desmarcar todos los drivers y solo habilitar los GIO.
 Después ir a PINMUX y seleccionar GIOB ya que como se vio en el circuito tanto el botón como los LEDs están en el puerto B.
Por ultimo entramos a GIO, configuramos el Bit 4, habilitamos la resistencia de Pull-Up y DOUT en 1, Bit 6 en cero y habilitamos como salida, para el Bit 7 lo seteamos en 1.
Código:
Tenemos una rutina para inicializar los puertos, una función para retardos y en main tenemos la lectura de GIOB_4, cuando esto ocurre se invierte el estado de GIOB_7 y GIOB_6 enciende de forma intermitente.
Vídeo:
Aquí un pequeño vídeo de la Hercules en funcionamiento:
Descargas:
Aquí el enlace directo para DESCARGAR los archivos disponibles, también puedes revisar o descargar la información desde mi repositorio en GitHub, si no sabes como descargarlo puedes checar aquí, bueno por el momento es todo si tienes dudas, comentarios, sugerencias, inquietudes, traumas, etc. dejarlas y tratare de responder lo mas pronto posible.
Bibliografía:

MPLAB X & XC8: LED Intermitente por interrupción con el desbordamiento del TIMER 0

junio 04, 2018 0 comentarios
Descripción:
En este ejemplo veremos como cambiar el estado de un LED conectado al puerto RC7 del PIC18F25K22, dicho cambio se realizara por medio de una interrupción con el desbordamiento del TIMER 0.

Circuito:
El circuito utilizado es muy sencillo, como utilizamos el oscilador interno del MCU, solo basta con conectar un LED con su debida resistencia a RC7, claro esta el microcontrolador debe de estar alimentado en sus respectivas terminales, el pin MCLR, debe estar con su debida resistencia a VCC.

Código:
Configuramos el MCU, desbordamos el timer a 1ms, hacemos un conteo en la interrupción y cambiamos el estado del LED, borramos la flag y el contador para que se quede indeterminadamente, se deja libre el while en main para otras actividades.
Vídeo:
A continuación un pequeño vídeo del código en funcionamiento.
Descargas:
Aquí el enlace directo para DESCARGAR los archivos disponibles, también puedes revisar o descargar la información desde mi repositorio en GitHub, si no sabes como descargarlo puedes checar aquí, bueno por el momento es todo si tienes dudas, comentarios, sugerencias, inquietudes, traumas, etc. dejarlas y tratare de responder lo mas pronto posible.

EAGLE: ¿Qué hacer si el package de un componente no tiene la capa tStop para la soldermask?

junio 01, 2018 0 comentarios
Primero que nada ¿Que es la soldermask? Se puede decir que es una capa de lacado que reciben las placas de circuito impreso en las caras superior e inferior, para proteger zonas de cobre donde no se desea aplicar soldadura (los PADs regularmente) y para evitar oxidación, corrosión y otros agentes externos en el cobre, puede ser en placas con componentes SMD o THT, normalmente incluye un tinte que le da una coloración verde; aunque también está disponible en otros colores como rojo, azul, blanco, negro, etc. En la mayoría de los programas de diseño el soldermask viene de la mano con los PADs ya que a menos que se especifique lo contrario este es un negativo de dicha capa. 

Bueno una vez explicado esto, les contare un poco del motivo de esta publicación, recientemente he mandado a realizar unos PCBs de forma profesional, es un diseño del trabajo y esta acción la he realizado en muchas ocasiones anteriormente, pero es la primera vez que me ocurre el problema que mencionare. Como sabemos para qué te puedan fabricar necesitas mandar los archivos GERBERs de tu diseño, bueno nuestro proveedor de PCBs nos contactó para decir que se tenía algunos detalles en el diseño, eso habla muy bien ellos por revisar a detalle todos los archivos y un poco mal de mí, ya que deje pasar este error a pesar de haber revisado estos archivos con un visualizador de GERBERs (ViewMate), resulta que un componente un LED RGB para ser exactos, no tenía activada la capa tStop, se preguntaran y esto ¿Para que es? o ¿Por qué sirve tenerlo activado?, veamos la siguiente imagen, es una captura que me mando mi proveedor. 


Como se aprecia en la imagen (solo un fragmento del PCB), tenemos el color rojo que en esta ocasión es todo el cobre en la cara TOP, también se tiene el color azul claro que son todos los PADs del diseño, esta parte nos interesa que NO tenga soldermask, ya que ahí soldaremos los componentes, ahora bien LED7 y LED3 (y todos los LEDs en la tarjeta) encerrados en un recuadro blanco, también señalados con una flecha, no tienen dicho color, ósea que si se fabricaran así, no podríamos soldar los LEDs porque sus PADs estarían cubiertas por la soldermask, bueno si se podría pero se necesitaría retirar dicha capa con alguna navaja, eso provocaría que nuestro trabajo no se vea profesional y de cierta forma es hacerle un parche. 

El problema de esto es que la librería de dicho LED está mal diseñada, por lo tanto tocara modificarla, para esto nos vamos a la librería, entramos al package, vamos a las capas y activamos “tStop”, notaremos que no tenemos nada en dicha capa (bueno en este caso es así, que este es el problema). 


Ahora ¿Cómo se soluciona? Bueno para esto es necesario dejar activas estas capas y hacer click derecho en el PAD, luego en propiedades y activar la opción Stop, hacer esto para todos los PADs, como se ve en la siguiente imagen. 


Como vemos en la imagen aparecieron rectángulos con líneas, esto resolverá nuestro problema, aunque se ven encimados, el tamaño los da Eagle por defecto, bueno yo no encontré una forma de ajustar esos rectángulos a mi gusto, aunque teóricamente funcionaria bien si se dejan así, yo decidí modificarlos y hacerlos más pequeños. 


Para poder editarlos al gusto tuve que agregárselos de forma manual, para ello una vez más click derecho en los PADs >> propiedades >> desactivar tStop. Lo siguiente será hacer el grid más pequeño por ejemplo yo lo deje en 0.05mm (flecha amarilla para editarlo), luego con el icono Rect (flecha azul) y asegurándome de seleccionar la capa tStop (flecha roja) realice el rectángulo al tamaño deseado sobre el PAD deseado (flecha morada), en la imagen comparo uno por defecto y uno realizado de forma manual, según el manual de Eagle dice que esta opción es para hacer restricciones así que debe funcionar perfectamente.

Al final la librería termino luciendo de la siguiente forma. 


Esto resolvió mi problema y he obtenido buenos resultados, aquí el resultado de los GERBERs vistos en ViewMate, en donde se puede ver que los LEDs ya tienen activa la capa. 


Por ultimo les comparto una foto del PCB, espero que se pueda apreciar bien, los resultados fueron los esperados. 


Bueno por el momento es todo si tienes dudas, comentarios, sugerencias, inquietudes, traumas, etc. dejarlas y tratare de responder lo más pronto posible.

Puedes checar aquí, todo lo relacionado con Eagle que he compartido, también encontraras la lista de librerias con su respectivo contenido.