Artículos

Librería para display ST7735 para cualquier micro

Contaba con una pantallita ST7735 que estaba acumulando polvo junto con otros circuitos. Decidí echarla a andar con el microcontrolador S32K144 de NXP que recibí como regalo de Digikey (tarjeta de evaluación). Este artículo te da el código fuente para echar a andar una ST7735 en cualquier micro que corra lenguaje C y tenga un periférico SPI. Claro, también puedes echarla a andar con bit bang pero eso correrá por tu cuenta.

Los archivos fuente de la librería se encuentran en Github:

https://github.com/migsantiago/s32k1_st7735

La pantalla debe conectarse como sigue:

* LITE - PTD15
* MOSI - PTB4
* SCK - PTB2
* TFT-CS - PTB3
* DC - PTB5
* RESET - 10kOhm - PTB0
* VDD - 5V
* GND - GND

Pero eso está hecho en un archivo llamado tft_st7735_callbacks.c para un S32K144 de NXP. Tú eres libre de usar cualquier microcontrolador para la pantalla. Sólo basta con que redefinas las siguientes funciones para tu hardware en específico:

void TFT_ST7735_Configure_SPI(void)
void TFT_ST7735_Delay(unsigned int ms)
void TFT_ST7735_Set_Chip_Select(TFT_ST7735_CS_T status)
void TFT_ST7735_Set_Data_Command(TFT_ST7735_Data_Command_T request)
void TFT_ST7735_Set_Reset(TFT_ST7735_Reset_T status)
void TFT_ST7735_Write_SPI(unsigned char *data, uint32_t size)

La librería fue adaptada de una librería escrita en C++ para Arduino:

Bodmer / TFT_ST7735
https://github.com/Bodmer/TFT_ST7735

C++ es flexible y abre muchas ventanas de programación en micros, pero no es amigable con su uso de memoria. Es por ello que decidí convertirla a C plano y tener la posibilidad de usarla en más ambientes.

Aquí la librería dibujando un arcoíris para probarla...

https://youtu.be/gsLZkSDr2Ao

Aquí calculando una Transformada Rápida de Fourier (FFT) y ploteando los resultados...

https://www.youtube.com/watch?v=JLK37iNjeX0

El micrófono utilizado es un electret. Podrás recrear el circuito para ajustar la ganancia y filtro anti-alias desde este link:

http://www.migsantiago.com/index.php/articulos-sp-776750948/18-amplificador-para-microfono-electret

La librería está casi lista para usar... me faltó ver por qué una fuentes grandes de texto no funcionan bien; se imprimen con errores. Si gustas corregirlas por favor sube tus cambios a Github y les haré pull cuando los revise.

Gracias por tu visita.