Proyecto Final – Medición de Inclinación 0.0.1
Este proyecto utiliza la placa NUCLEO-STM32F446RE y permite detectar y visualizar en tiempo real la inclinación mediante el sensor MPU-6050.
Cargando...
Buscando...
Nada coincide
Referencia del archivo dev_LCD.c

Librería de control para LCD 16x2 vía I²C (PCF8574) con RTOS. Más...

#include "dev_LCD.h"
#include <string.h>
#include <stdbool.h>
#include "cmsis_os2.h"
#include "stm32f4xx_hal.h"

Funciones

bool LCD_Init (void)
 Inicializa el LCD.
void LCD_Clear (void)
 Limpia el display y posiciona el cursor en (0,0).
void LCD_SetCursor (uint8_t col, uint8_t row)
 Posiciona el cursor en (col, row).
void LCD_WriteChar (char character)
 Escribe un carácter en la posición actual del cursor.
void LCD_Write (const char *s)
 Escribe una cadena ASCII (terminada en '\0').
void LCD_WriteAt (uint8_t col, uint8_t row, char *s)
 Escribe una cadena en la posición determinada (col,row).
void LCD_PrintCentered (uint8_t row, char *s)
 Centra un texto en la fila indicada.
void LCD_Cursor (bool enable)
 Habilita u deshabilita el cursor.
void LCD_BlinkCursor (bool enable)
 Habilita o deshabilita el parpadeo del cursor.

Descripción detallada

Librería de control para LCD 16x2 vía I²C (PCF8574) con RTOS.

Documentación de funciones

◆ LCD_BlinkCursor()

void LCD_BlinkCursor ( bool enable)

Habilita o deshabilita el parpadeo del cursor.

Parámetros
enabletrue: parpadeo ON; false: OFF.

◆ LCD_Clear()

void LCD_Clear ( void )

Limpia el display y posiciona el cursor en (0,0).

Envía 0x01 (Clear Display).

Nota
Requiere delay de (≈2 ms).

◆ LCD_Cursor()

void LCD_Cursor ( bool enable)

Habilita u deshabilita el cursor.

Parámetros
enabletrue: cursor visible; false: oculto.

◆ LCD_Init()

bool LCD_Init ( void )

Inicializa el LCD.

  1. Ejecuta la secuencia de wake-up,
  2. Envía Function Set,
  3. Enciende el display
  4. Limpia y configura el entry mode.
    Devuelve
    true si completó la secuencia correctamente.

◆ LCD_PrintCentered()

void LCD_PrintCentered ( uint8_t row,
char * s )

Centra un texto en la fila indicada.

Parámetros
rowFila destino.
sCadena a centrar.

◆ LCD_SetCursor()

void LCD_SetCursor ( uint8_t col,
uint8_t row )

Posiciona el cursor en (col, row).

Parámetros
colColumna (0..DEV_LCD_COLS-1)
rowFila (0..DEV_LCD_ROWS-1)
Nota
Usa las direcciones base de DDRAM por fila (ej. 0x00 y 0x40 en 16x2).

◆ LCD_Write()

void LCD_Write ( const char * s)

Escribe una cadena ASCII (terminada en '\0').

Parámetros
sPuntero a cadena.

◆ LCD_WriteAt()

void LCD_WriteAt ( uint8_t col,
uint8_t row,
char * s )

Escribe una cadena en la posición determinada (col,row).

Parámetros
colColumna a donde se va a escribir la cadena.
rowFila a donde se va a escribir la cadena.
sPuntero a cadena.

◆ LCD_WriteChar()

void LCD_WriteChar ( char c)

Escribe un carácter en la posición actual del cursor.

Parámetros
cCarácter ASCII a imprimir.