API for STKs and WSTKsBSP
| Data Structures | |
| struct | BCP_Packet | 
| BCP Packet Structure - Board controller communication protocol version 2. | |
| struct | BCP_Packet_ | 
| BCP Packet Structure - Board controller communication protocol version 1. | |
| struct | BCP_PacketHeader | 
| BCP Packet Header definition. | |
| Macros | |
| #define | BSP_BCP_ACK 5 | 
| #define | BSP_BCP_CURRENT_REPLY 16 | 
| #define | BSP_BCP_CURRENT_REQ 14 | 
| #define | BSP_BCP_ECHO_REPLY 11 | 
| #define | BSP_BCP_ECHO_REQ 10 | 
| #define | BSP_BCP_ENERGYMODE 22 | 
| #define | BSP_BCP_FIRST 1 | 
| #define | BSP_BCP_INVALID 0 | 
| #define | BSP_BCP_LAST 100 | 
| #define | BSP_BCP_MAGIC 0xF1 | 
| #define | BSP_BCP_NET_REPLY 65 | 
| #define | BSP_BCP_NET_REQUEST 64 | 
| #define | BSP_BCP_PACKET_SIZe 30 | 
| #define | BSP_BCP_PACKET_SIZE 132 | 
| #define | BSP_BCP_STDERR 26 | 
| #define | BSP_BCP_STDOUT 24 | 
| #define | BSP_BCP_TEST 32 | 
| #define | BSP_BCP_TEST_REPLY 33 | 
| #define | BSP_BCP_VOLTAGE_REPLY 20 | 
| #define | BSP_BCP_VOLTAGE_REQ 18 | 
| Enumerations | |
| enum | BSP_Peripheral_TypeDef
         
         { BSP_RS232_SHUTDOWN , BSP_RS232_UART , BSP_RS232_LEUART , BSP_I2C , BSP_ETH , BSP_I2S , BSP_TRACE , BSP_TOUCH , BSP_AUDIO_IN , BSP_AUDIO_OUT , BSP_ANALOG_DIFF , BSP_ANALOG_SE , BSP_MICROSD , BSP_TFT , BSP_IOEXP_LEDS , BSP_IOEXP_SENSORS , BSP_IOEXP_DISPLAY , BSP_IOEXP_VCOM , BSP_VCOM } | 
| Functions | |
| int | BSP_BccDeInit (void) | 
| Deinitialize board controller communication support (BCC) functionality. Reverse actions performed by
         
          BSP_BccInit()
         
         . | |
| int | BSP_BccInit (void) | 
| Initialize board controller communication support (BCC) functionality. | |
| bool | BSP_BccPacketReceive ( BCP_Packet *pkt) | 
| Get a packet from the board controller. | |
| int | BSP_BccPacketSend ( BCP_Packet *pkt) | 
| Send a packet to the board controller. | |
| void | BSP_BccPinsEnable (bool enable) | 
| Enable GPIO pins for the USART/LEUART used for board communication. | |
| float | BSP_CurrentGet (void) | 
| Request AEM (Advanced Energy Monitoring) current from board controller. | |
| int | BSP_EbiDeInit (void) | 
| Deinitialize the EBI interface for accessing the onboard nandflash. | |
| int | BSP_EbiInit (void) | 
| Initialize the EBI interface for accessing the onboard nandflash. | |
| uint32_t | BSP_IOExpGetDeviceId (void) | 
| Get IO Expander Device id. | |
| float | BSP_VoltageGet (void) | 
| Request AEM (Advanced Energy Monitoring) voltage from board controller. | |
Macro Definition Documentation
| #define BSP_BCP_ACK 5 | 
Generic ACK for one way packages
        Definition at line
        
         44
        
        of file
        
         bsp_bcp.h
        
        .
       
| #define BSP_BCP_CURRENT_REPLY 16 | 
| #define BSP_BCP_CURRENT_REQ 14 | 
EFM32 Request AEM current
        Definition at line
        
         47
        
        of file
        
         bsp_bcp.h
        
        .
       
Referenced by BSP_CurrentGet() .
| #define BSP_BCP_ECHO_REPLY 11 | 
BC alive response
        Definition at line
        
         46
        
        of file
        
         bsp_bcp.h
        
        .
       
| #define BSP_BCP_ECHO_REQ 10 | 
EFM32 BC alive request
        Definition at line
        
         45
        
        of file
        
         bsp_bcp.h
        
        .
       
| #define BSP_BCP_ENERGYMODE 22 | 
EFM32 Report Energy Mode (for AEM)
        Definition at line
        
         51
        
        of file
        
         bsp_bcp.h
        
        .
       
| #define BSP_BCP_FIRST 1 | 
Smallest numerical value of message type
        Definition at line
        
         42
        
        of file
        
         bsp_bcp.h
        
        .
       
Referenced by BSP_BccPacketReceive() .
| #define BSP_BCP_INVALID 0 | 
Invalid packet received
        Definition at line
        
         40
        
        of file
        
         bsp_bcp.h
        
        .
       
| #define BSP_BCP_LAST 100 | 
Last defined message type
        Definition at line
        
         59
        
        of file
        
         bsp_bcp.h
        
        .
       
Referenced by BSP_BccPacketReceive() .
| #define BSP_BCP_MAGIC 0xF1 | 
Magic byte to indicate start of packet
        Definition at line
        
         61
        
        of file
        
         bsp_bcp.h
        
        .
       
Referenced by BSP_BccPacketReceive() , and BSP_BccPacketSend() .
| #define BSP_BCP_NET_REPLY 65 | 
Net gateway reply packet
        Definition at line
        
         57
        
        of file
        
         bsp_bcp.h
        
        .
       
| #define BSP_BCP_NET_REQUEST 64 | 
Net gateway request packet
        Definition at line
        
         56
        
        of file
        
         bsp_bcp.h
        
        .
       
| #define BSP_BCP_PACKET_SIZe 30 | 
Max packet size for version 1 of the protocol.
        Definition at line
        
         67
        
        of file
        
         bsp_bcp.h
        
        .
       
| #define BSP_BCP_PACKET_SIZE 132 | 
Max packet size for version 2 of the protocol.
        Definition at line
        
         87
        
        of file
        
         bsp_bcp.h
        
        .
       
Referenced by BSP_BccPacketReceive() .
| #define BSP_BCP_STDERR 26 | 
Debug packet (not used)
        Definition at line
        
         53
        
        of file
        
         bsp_bcp.h
        
        .
       
| #define BSP_BCP_STDOUT 24 | 
Debug packet (not used)
        Definition at line
        
         52
        
        of file
        
         bsp_bcp.h
        
        .
       
| #define BSP_BCP_TEST 32 | 
Reserved type for test
        Definition at line
        
         54
        
        of file
        
         bsp_bcp.h
        
        .
       
| #define BSP_BCP_TEST_REPLY 33 | 
Reserved type for test (reply)
        Definition at line
        
         55
        
        of file
        
         bsp_bcp.h
        
        .
       
| #define BSP_BCP_VOLTAGE_REPLY 20 | 
| #define BSP_BCP_VOLTAGE_REQ 18 | 
EFM32 Request AEM voltage
        Definition at line
        
         49
        
        of file
        
         bsp_bcp.h
        
        .
       
Referenced by BSP_VoltageGet() .
Enumeration Type Documentation
Peripherals control structure for STK's, WSTK's and similar.
        Definition at line
        
         145
        
        of file
        
         bsp.h
        
        .
       
Function Documentation
| int BSP_BccDeInit | ( | void | 
            | ) | 
Deinitialize board controller communication support (BCC) functionality. Reverse actions performed by BSP_BccInit() .
- Returns
- BSP_STATUS_OK .
        Definition at line
        
         59
        
        of file
        
         bsp_bcc.c
        
        .
       
References BSP_BccPinsEnable() , BSP_STATUS_OK , CMU_ClockEnable() , LEUART_Reset() , and USART_Reset() .
| int BSP_BccInit | ( | void | 
            | ) | 
Initialize board controller communication support (BCC) functionality.
- Returns
- BSP_STATUS_OK .
        Definition at line
        
         87
        
        of file
        
         bsp_bcc.c
        
        .
       
References LEUART_Init_TypeDef::baudrate , BSP_BccPinsEnable() , BSP_STATUS_OK , CMU_ClockEnable() , CMU_ClockSelectSet() , cmuClock_GPIO , cmuClock_HFPER , cmuClock_LFB , LEUART_Init() , LEUART_INIT_DEFAULT , USART_InitAsync() , and USART_INITASYNC_DEFAULT .
| bool BSP_BccPacketReceive | ( | BCP_Packet * | 
            pkt
            | ) | 
Get a packet from the board controller.
- Parameters
- 
         [in] pktPointer to a BCP_Packet instance. 
- Returns
- True if packet received without errors, false otherwise.
        Definition at line
        
         137
        
        of file
        
         bsp_bcc.c
        
        .
       
References BSP_BCP_FIRST , BSP_BCP_LAST , BSP_BCP_MAGIC , BSP_BCP_PACKET_SIZE , BCP_Packet::magic , BCP_Packet::payloadLength , and BCP_Packet::type .
Referenced by BSP_CurrentGet() , and BSP_VoltageGet() .
| int BSP_BccPacketSend | ( | BCP_Packet * | 
            pkt
            | ) | 
Send a packet to the board controller.
- Parameters
- 
         [in] pktPointer to a BCP_Packet instance. 
- Returns
- BSP_STATUS_OK .
        Definition at line
        
         190
        
        of file
        
         bsp_bcc.c
        
        .
       
References BSP_BCP_MAGIC , BSP_STATUS_OK , BCP_Packet::data , BCP_Packet::magic , BCP_Packet::payloadLength , BCP_Packet::reserved , and BCP_Packet::type .
Referenced by BSP_CurrentGet() , and BSP_VoltageGet() .
| void BSP_BccPinsEnable | ( | bool | 
            enable
            | ) | 
Enable GPIO pins for the USART/LEUART used for board communication.
- Parameters
- 
         [in] enableSet to true to enable pins, set to false to disable. 
        Definition at line
        
         224
        
        of file
        
         bsp_bcc.c
        
        .
       
References _USART_ROUTELOC0_RXLOC_MASK , _USART_ROUTELOC0_TXLOC_MASK , GPIO_PinModeSet() , gpioModeDisabled , gpioModeInput , gpioModePushPull , USART_ROUTEPEN_RXPEN , and USART_ROUTEPEN_TXPEN .
Referenced by BSP_BccDeInit() , and BSP_BccInit() .
| float BSP_CurrentGet | ( | void | 
            | ) | 
Request AEM (Advanced Energy Monitoring) current from board controller.
- Note
- Assumes that BSP_Init() has been called with BSP_INIT_BCC bitmask.
- Returns
- The current expressed in milliamperes. Returns 0.0 on board controller communication error.
        Definition at line
        
         342
        
        of file
        
         bsp_stk.c
        
        .
       
References BSP_BccPacketReceive() , BSP_BccPacketSend() , BSP_BCP_CURRENT_REPLY , BSP_BCP_CURRENT_REQ , BCP_Packet::data , BCP_Packet::payloadLength , and BCP_Packet::type .
| int BSP_EbiDeInit | ( | void | 
            | ) | 
Deinitialize the EBI interface for accessing the onboard nandflash.
- Note
- This function is not relevant for Gxxx_STK's. This function is provided for API completeness, it does not perform an actual EBI deinitialization.
- Returns
- BSP_STATUS_OK or BSP_STATUS_NOT_IMPLEMENTED
        Definition at line
        
         163
        
        of file
        
         bsp_stk.c
        
        .
       
References BSP_STATUS_NOT_IMPLEMENTED , and BSP_STATUS_OK .
| int BSP_EbiInit | ( | void | 
            | ) | 
Initialize the EBI interface for accessing the onboard nandflash.
- Note
- This function is not relevant for Gxxx_STK's.
- Returns
- BSP_STATUS_OK or BSP_STATUS_NOT_IMPLEMENTED
        Definition at line
        
         70
        
        of file
        
         bsp_stk.c
        
        .
       
References BSP_STATUS_NOT_IMPLEMENTED , BSP_STATUS_OK , CMU_ClockEnable() , cmuClock_GPIO , cmuClock_HFPER , GPIO_PinModeSet() , gpioModeInput , and gpioModePushPull .
| uint32_t BSP_IOExpGetDeviceId | ( | void | 
            | ) | 
Get IO Expander Device id.
- Returns
- The device id of a connected IO Expander Device id or 0 if no IO expander is connected.
        Definition at line
        
         179
        
        of file
        
         bsp_stk.c
        
        .
       
| float BSP_VoltageGet | ( | void | 
            | ) | 
Request AEM (Advanced Energy Monitoring) voltage from board controller.
- Note
- Assumes that BSP_Init() has been called with BSP_INIT_BCC bitmask.
- Returns
- The voltage. Returns 0.0 on board controller communication error.
        Definition at line
        
         377
        
        of file
        
         bsp_stk.c
        
        .
       
References BSP_BccPacketReceive() , BSP_BccPacketSend() , BSP_BCP_VOLTAGE_REPLY , BSP_BCP_VOLTAGE_REQ , BCP_Packet::data , BCP_Packet::payloadLength , and BCP_Packet::type .