Question
CUBE HAL C++ Support
Posted on August 21, 2014 at 20:20
Hi,
I've been trying to use the new F4 HAL libraries for a project on the F429 Discovery board. I realise that this will involve a lot of C to C++ integration.My first issue is with the two enum typedefs in @file stm32f4xx_hal_def.htypedef enum
{ HAL_OK = 0x00, HAL_ERROR = 0x01, HAL_BUSY = 0x02, HAL_TIMEOUT = 0x03} HAL_StatusTypeDef;&sharpendif/** * @brief HAL Lock structures definition */typedef enum { HAL_UNLOCKED = 0x00, HAL_LOCKED = 0x01 } HAL_LockTypeDef;These are picked up correctly in an eclipse GCC C project but not in a C++ project.The message is 'HAL_LockTypeDef 'does not name a type. There are about 500 such messages.Any ideas as to how to go about either getting the C typedef to be in scope of C++, or of creating something like&sharpifdef __cplusplus
//enum HAL_StatusTypeDef { HAL_OK, HAL_ERROR, HAL_BUSY, HAL_TIMEOUT } ; enum class HAL_StatusTypeDef { HAL_OK, HAL_ERROR, HAL_BUSY, HAL_TIMEOUT } ; // typedef enum { HAL_OK, HAL_ERROR, HAL_BUSY, HAL_TIMEOUT } HAL_StatusTypeDef;&sharpelsetypedef enum { HAL_OK = 0x00, HAL_ERROR = 0x01, HAL_BUSY = 0x02, HAL_TIMEOUT = 0x03} HAL_StatusTypeDef;&sharpendifI would appreciate a pointer to a resource that can lead me through this as I have tried the usual culprits google, cplusplus.com, stacktrace etc Thanks in advanceChris #c++-hal-typedef-discovery-gcc