Hello World – Blink

En esta entrada explicaré todos los pasos para poner en marcha nuestro Hello World con STM32, un Blink. Es conveniente que te hayas leído las entradas anteriores para poder completar con éxito el Blink.e26Abrimos el CubeMx y hacemos click en New Project. Nos aparecerá la siguiente pantalla:

e12Hay dos pestañas : MCU Selector y Board Selector.

Sigue leyendo

IDE – Keil uVision

Yo en mi tutorial usé Keil uVision, pero si tu prefieres usar Eclipse u otro que te guste, adelante, es posible que también haga tutorial para configurar Eclipse. Pero de momento usaremos Keil, más que nada porque la integración con las herramientas ARM es directa.

Descargar uVision

Acceder al siguiente enlace:

http://www.keil.com/download/product/

e6 Sigue leyendo

STM32CubeMX

Como ya comenté en la entrada de bienvenida, hace ya un año que empecé a trastear con los STM32, en su momento no encontré mucha info en castellano por lo que a principios del verano de 2016 escribí un tutorial que hasta ahora no he publicado en el blog. Este Getting started lo hice para el STM32F103, pero vamos que los pasos para los demás son similares.

¿Que es cubeMX ?

Es un software de ST que proporciona las herramientas necesarias para la generación de código de proyecto para el IDE en el que vas a desarrollar tu proyecto( Keil, Eclipse, etc), inclusión de librerías ( HAL, GPIO,etc), asignación de roles a los pines del micro, configuración de relojes, y de todos los demás parámetros de relevancia del micro.

Descargar CubeMX

http://www.st.com/content/st_com/en/products/development-tools/software-development-tools/stm32-software-development-tools/stm32-configurators-and-code-generators/stm32cubemx.html

Hacemos click en el enlace que nos llevara a la siguiente página:e0 Sigue leyendo

Nueva sección del Blog !

Desde que empecé a aficionarme con la electrónica he ido investigando y aprendiendo, sobretodo mediante los proyectos que hay publicados aquí. Siempre he buscado salirme un poco de lo que me enseñaron en la carrera y buscar por mi cuenta. Una de las cosas que no vi en la carrera fueron los microcontroladores (por reestructuración de contenidos, cambios de planes de estudios,etc) .

El “approach” más cercano que he tenido ha sido mediante la plataforma Arduino. Ya el verano pasado decidí meter un poco el hocico en este tema, comprandome un STM y trasteando. Es curioso ver que la última entrada tiene más de 1 año, tiene su explicación. He estado con el TFG y no era capaz de ponerme con ningún proyecto teniendo pendiente el TFG, aun teniendo tiempo de sobra para todo. Por lo que como es de esperar, adentrarme en el maravilloso mundo de los microcontroladores ha quedado un poco de lado. Tengo intención de colgar aquí mi TFG, pero por el momento no se por donde empezar.

Este curso he empezado un Máster en ingeniería de sistemas electrónicos, donde voy a tocar micros, FPGAs, sistemas empotrados y todas esas cosas que se quedaron en el tintero en la carrera. Por lo que esta sección estará enfocada a ello. Los micros con los que tengo pensado trabajar son: AVR, MSP y STM32.

Para el caso de AVR, está claro: Atmega328p, Atmega2560, Atmega168, Attiny85. Son los micros que se usan en Arduino y tengo muchas placas para trabajar con ellos. Mi intención es prescindir de Arduino para programarlos y tratarlos como lo que son, micros.

Para el caso de MSP: Empezare con MSP430 Launchpad, ya que es BBB.

Y para el caso de STM32, de compras anteriores ya tengo unos cuantos STM32F103, ST-LINK externo y está en camino una Discovery F0.

Se que hay muchas más plataformas, marcas y micros, pero no quiero comprar muchas cosas y que acaben comiendo polvo en un cajón, si es que no hay ya demasiadas cosas en el cajón de proyectos pendientes :P.

Reloj Digital (parte 2) – Divisor de frecuencia

Los relojes basan su funcionamiento en un periodo de oscilación fuente. Cuando no había semiconductores a los relojes había que darles cuerda, mover un péndulo o usar un cristal oscilador. De esta forma conseguías una oscilación mantenida la cual luego, en el caso de los relojes mecánicos, se dividía en tiempos mayores jugando con la relación de transmisión de un tren de engranajes.

reloj-mecanico-gona-zonacasio-2013-01

Muchos de los relojes actuales usan como fuente de oscilación un cristal de cuarzo, material el cual tiene una tendencia natural para producir una oscilación de frecuencia constante. En el caso de un circuito electrónico, el cuarzo se puede modelar como un condensador que se descarga y carga periódicamente. Con la ayuda de condensadores auxiliares y una resistencia se puede conseguir un circuito oscilador RC a una frecuencia deseada.

Teniendo esto claro se plantea la siguiente duda, ¿qué frecuencia base es la más adecuada desde la cual partir ?

tim47 Sigue leyendo

Reloj Digital (parte 1) – Display Driver

Puesto que lo primero con lo que me he hecho ha sido con el display, la primera parte del reloj que he hecho ha sido su driver.

El display que he usado ha sido un CL5642BH-33. Se trata de un display de 4 dígitos y 7 segmentos de ánodo común con doble punto en medio,¿ ideal para hacer un reloj eh ?7-segment-4-digit-display-common-anode-12-pin--pinoutEste display tiene una particularidad frente a otros de 4 dígitos y es que el punto para el dígito 1 está deshabilitado. Conectando el led DP con el COM1 lo se que enciende es el punto del dígito COM2, pues el DP + digito COM2 lo que enciende son los dos puntitos de en medio.CL5642BH-datasheet Sigue leyendo

Reloj Digital ( Intro )

Tras haber hecho el proyecto del reloj digital en VHDL, me interesé mucho por el tema y pensé,¿ por que no hacermelo a la antigua ?. Usando lógica TTL y CMOS, de las familias de integrados 7400 y 4000: decoders, multiplexores, displays led, contadores, cristales osciladores,etc. Puesto que es un proyecto largo y que tiene mucha información, haré una entrada por cada parte del circuito para que el siguimiento del proyecto no sea tedioso. Los chips han salido caros pues es tecnología obsoleta, pero nada puede parar el tren del DIY. A por ello !

IMG_20160402_115114

Reloj VHDL

En la asignatura de Sistemas electrónicos digitales, como trabajo nos encargaron a mí y a mis compañeros realizar un reloj en VHDL. VHDL es un lenguaje de programación de descripción Hardware que dista un poco de la concepción de programación que se tiene de programar lenguajes de alto nivel como C/C++, pero que para cosas como éstas, pues se acaba haciendo intuitivo. Incluso una de las modalidades de programación (Behavioral) hace que se parezcan bastante.

IMG_20160122_125644

Sigue leyendo

Wah Mod

Desde que empecé con lo de los pedales me dije que salvo que fuese estrictamente necesario y no pudiese replicarlos como bien puede ser el caso de los pedales de procesamiento digital o los que constructivamente supusiesen mayor desembolse, me haría yo mis pedales.

En su momento me presupuesté hacerme un Wah, y entre caja, potenciómetro especial y el inductor la cosa se ponía por encima de los 60€ y no me compensaba mucho. Así que me regalaron por mi cumpleaños el VOX v845, el Wah moderno de VOX.

wah

Lo cierto es que sí, el pedal sonaba bien,pero no me terminaba de convencer. Mi pedal, al ser el “barato” no llevaba ni buffer de entrada ni TrueBypass por lo que al poner el Wah en la línea de pedales, “chupaba tono”. Es por ello que no tardé ni un mes en hacerle el primer mod: el TrueBypass. La gran pega de este mod es que el 3PDT que compré tenía la caña más corta que el SPDT carling que llevan los Wah originales, por lo que el Wah estaba algo duro, más tarde, quité las gomas que amortiguaban un poco y solucionado.

Sigue leyendo

Miniamp

Mi madre suele traerme siempre aparatos para arreglar bien porque los va a tirar o bien porque no los quiere. Pues un día me trajo una radio vieja de mi abuela, una Sanyo RP 5072, de éstas que los abuelos ponen en la mesilla de noche para escuchar el programa de tertulia. Me dió por abrirla con el fin de reciclar componentes. Al ver que llevaba un cono de 0.5W, hueco para pila y una placa en la que cabía más o menos un circuito como de un pedal de guitarra de los que monto, pensé : voy a hacerme un miniampli.$_1

Tomé medidas de la placa para diseñar una exactamente igual para luego meter el circuito del miniamp en cuestión. Empecé a pensar en que poner de previo, que poner de etapa de “potencia” y como colocar las cosas para que todo entrase en esa pequeña caja.

Para la etapa de potencia surgieron las siguientes alternativas:

  • TPA3122: Amplificador Clase D de algunos watios, pero 12 V para funcionar. TexasIns.
  • LM386 : Amplificador Clase AB de 1 W, operable a 9V y formato DIP8. NXP Semiconductor.
  • TDA7052: Amplificador Clase AB de 1 W , operable a 9V y formato DIP8. TexasIns.

Sigue leyendo