Biblioteca de periféricos estándar y controladores HAL juntos en Keil

1

parece que:

  1. ST se ha movido al inicializador de código Cubemx y genera solo HAL conductores
  2. Keil ha introducido DFP y Manage-Run-run-time-Environment, que utilizar unidades HAL

aunque el cubemx de ST y el env de tiempo de ejecución de Keil son muy útiles, pero los controladores de HAL todavía tienen algunos errores. Mientras tanto, hay muchos códigos en git-hub, etc. para Stm32F4, todos escritos con bibliotecas periféricas estándar (std_lib).

¿Es posible utilizar las unidades de biblioteca periférica estándar y HAL juntas en un proyecto Keil?

    
pregunta HsVz

1 respuesta

1

Sí, es bastante posible y me ha salvado la vida para un proyecto en el que estaba trabajando, donde tenía todo construido alrededor de HAL.

Lo creas o no, seguí resistiéndome a la transición a esa cosa HAL durante tanto tiempo, hasta que me vi obligado a usarlo para mi proyecto debido a las muchas ventajas que ofrece en ciertos aspectos.

Sin embargo, parte de mi proyecto es controlar un dispositivo esclavo a través de SPI y tuve la biblioteca para el SPL de ST. Después de pasar un tiempo tremendo tratando de resolver un problema que tuve con la parte de recepción del SPI sobre HAL, y después de dejar de intentar cientos de ejemplos y fragmentos de código para el SPI, finalmente logré resolverlo mezclando el controlador SPI del SPL con el resto de mi proyecto, que fue construido con HAL.

Esto es lo que hice en Keil uVision para que funcionara sin problemas. He creado objetos precompilados para el SPI y las dependencias utilizadas por SPI y los he importado / vinculado a mi proyecto HAL. Por supuesto, he eliminado todo lo relacionado con HAL_SPI en el proyecto y ahora el proyecto se compila y ejecuta de manera rápida y sin problemas. Ahora puedo conducir mi dispositivo con las funciones SPI basadas en SPL y seguir disfrutando de lo que HAL tiene para ofrecer para los módulos restantes del proyecto.

    
respondido por el Embedded Music

Lea otras preguntas en las etiquetas