E/S común
importante
Esta biblioteca está alojada en el repositorio de Amazon-FreeRTOS, que está en desuso. Recomendamos empezar por aquí al crear un nuevo proyecto. Si ya tiene un proyecto FreeRTOS existente basado en el repositorio Amazon FreeRTOS, ahora obsoleto, consulte Guía de migración del repositorio Github de Amazon-FreeRTOS.
Información general
En general, los controladores de dispositivo son independientes del sistema operativo subyacente y son específicos de una configuración de hardware determinada. Una capa de abstracción de hardware (HAL) proporciona una interfaz común entre controladores y código de aplicación de nivel superior. La capa HAL abstrae los detalles de cómo funciona un controlador específico y proporciona una API uniforme para controlar dichos dispositivos. Puede utilizar las mismas API para obtener acceso a varios controladores de dispositivo a través de tarjetas de referencia basadas en varios microcontroladores (MCU).
La E/S común de FreeRTOS actúa como esta capa de abstracción de hardware. Proporciona un conjunto de API estándar para obtener acceso a dispositivos serie comunes en placas de referencia compatibles. Estas API comunes se comunican e interactúan con estos periféricos y permiten que el código funcione en todas las plataformas. Sin E/S común, el código para dispositivos de bajo nivel es específico del proveedor de hardware.
Periféricos admitidos
-
UART
-
SPI
-
I2C
Características admitidas
-
Lectura y escritura sincrónicas: la función no regresa hasta que se transfiere la cantidad de datos solicitada.
-
Lectura y escritura asíncronas: la función regresa inmediatamente y la transferencia de datos se realiza de forma asíncrona. Cuando se completa la acción, se invoca una devolución de llamada de usuario registrado.
Código específico del periférico
-
I2C: combina varias operaciones en una sola transacción. Se utiliza para acciones de escritura y luego lectura en una sola transacción.
-
SPI: transfiere datos entre la principal y secundaria, lo que significa que la escritura y la lectura se realizan simultáneamente.
Portabilidad
Para obtener más información, consulte la Guía de portabilidad de FreeRTOS.