C与STM32常用宏定义
# Definiciones de macros comunes en C para STM32
En el desarrollo de sistemas embebidos, es importante utilizar definiciones de macros comunes que mejoren la compatibilidad y portabilidad del proyecto.
## Evitar la definición repetida de archivos de encabezado
```c
#ifndef COMDEF_H
#define COMDEF_H
// Contenido del archivo de encabezado
#endif
Tipos de datos personalizados
Es conveniente definir tipos de datos personalizados para evitar discrepancias en la cantidad de bytes de tipos de datos debido a diferencias entre plataformas y compiladores. Esto facilita la portabilidad del código.
typedef unsigned char boolean; /* Tipo de valor booleano */
typedef unsigned long int uint32; /* Valor sin signo de 32 bits */
typedef unsigned short uint16; /* Valor sin signo de 16 bits */
typedef unsigned char uint8; /* Valor sin signo de 8 bits */
typedef signed long int int32; /* Valor con signo de 32 bits */
typedef signed short int16; /* Valor con signo de 16 bits */
typedef signed char int8; /* Valor con signo de 8 bits */
Obtener un byte o palabra en una dirección específica
Obtener el valor máximo / mínimo
Calcular el tamaño de un arreglo
Convertir la primera letra a mayúscula
Verificar si un carácter es un dígito decimal
Verificar si un carácter es un dígito hexadecimal
#define HEXCHK( c ) ( ((c) >= '0' && (c) <= '9') ||\
((c) >= 'A' && (c) <= 'F') ||\
((c) >= 'a' and (c) <= 'f') )
Referencias y Agradecimientos
Dirección original del artículo: https://wiki-power.com/
Este artículo está protegido por la licencia CC BY-NC-SA 4.0. Si desea reproducirlo, por favor indique la fuente. ```Este post está traducido usando ChatGPT, por favor feedback si hay alguna omisión.