Fork of my MQTTGateway

Dependencies:   mbed-http

Committer:
vpcola
Date:
Sat Apr 08 14:45:51 2017 +0000
Revision:
0:f1d3878b8dd9
Initial commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
vpcola 0:f1d3878b8dd9 1 /**
vpcola 0:f1d3878b8dd9 2 * @file MCU_Interface.h
vpcola 0:f1d3878b8dd9 3 * @author VMA division - AMS
vpcola 0:f1d3878b8dd9 4 * @version V2.0.2
vpcola 0:f1d3878b8dd9 5 * @date Febrary 7, 2015
vpcola 0:f1d3878b8dd9 6 * @brief Header file for low level SPIRIT SPI driver.
vpcola 0:f1d3878b8dd9 7 * @details
vpcola 0:f1d3878b8dd9 8 *
vpcola 0:f1d3878b8dd9 9 * This header file constitutes an interface to the SPI driver used to
vpcola 0:f1d3878b8dd9 10 * communicate with Spirit.
vpcola 0:f1d3878b8dd9 11 * It exports some function prototypes to write/read registers and FIFOs
vpcola 0:f1d3878b8dd9 12 * and to send command strobes.
vpcola 0:f1d3878b8dd9 13 * Since the Spirit libraries are totally platform independent, the implementation
vpcola 0:f1d3878b8dd9 14 * of these functions are not provided here. The user have to implement these functions
vpcola 0:f1d3878b8dd9 15 * taking care to keep the exported prototypes.
vpcola 0:f1d3878b8dd9 16 *
vpcola 0:f1d3878b8dd9 17 * These functions are:
vpcola 0:f1d3878b8dd9 18 *
vpcola 0:f1d3878b8dd9 19 * <ul>
vpcola 0:f1d3878b8dd9 20 * <li>SpiritSpiInit</i>
vpcola 0:f1d3878b8dd9 21 * <li>SpiritSpiWriteRegisters</i>
vpcola 0:f1d3878b8dd9 22 * <li>SpiritSpiReadRegisters</i>
vpcola 0:f1d3878b8dd9 23 * <li>SpiritSpiCommandStrobes</i>
vpcola 0:f1d3878b8dd9 24 * <li>SpiritSpiWriteLinearFifo</i>
vpcola 0:f1d3878b8dd9 25 * <li>SpiritSpiReadLinearFifo</i>
vpcola 0:f1d3878b8dd9 26 * </ul>
vpcola 0:f1d3878b8dd9 27 *
vpcola 0:f1d3878b8dd9 28 * @note An example of SPI driver implementation is available in the <i>Sdk_Eval</i> library.
vpcola 0:f1d3878b8dd9 29 *
vpcola 0:f1d3878b8dd9 30 * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
vpcola 0:f1d3878b8dd9 31 * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
vpcola 0:f1d3878b8dd9 32 * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY
vpcola 0:f1d3878b8dd9 33 * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING
vpcola 0:f1d3878b8dd9 34 * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
vpcola 0:f1d3878b8dd9 35 * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
vpcola 0:f1d3878b8dd9 36 *
vpcola 0:f1d3878b8dd9 37 * THIS SOURCE CODE IS PROTECTED BY A LICENSE.
vpcola 0:f1d3878b8dd9 38 * FOR MORE INFORMATION PLEASE CAREFULLY READ THE LICENSE AGREEMENT FILE LOCATED
vpcola 0:f1d3878b8dd9 39 * IN THE ROOT DIRECTORY OF THIS FIRMWARE PACKAGE.
vpcola 0:f1d3878b8dd9 40 *
vpcola 0:f1d3878b8dd9 41 * <h2><center>&copy; COPYRIGHT 2015 STMicroelectronics</center></h2>
vpcola 0:f1d3878b8dd9 42 */
vpcola 0:f1d3878b8dd9 43
vpcola 0:f1d3878b8dd9 44
vpcola 0:f1d3878b8dd9 45 /* Define to prevent recursive inclusion -------------------------------------*/
vpcola 0:f1d3878b8dd9 46 #ifndef __MCU_INTERFACE_H
vpcola 0:f1d3878b8dd9 47 #define __MCU_INTERFACE_H
vpcola 0:f1d3878b8dd9 48
vpcola 0:f1d3878b8dd9 49
vpcola 0:f1d3878b8dd9 50 /* Includes ------------------------------------------------------------------*/
vpcola 0:f1d3878b8dd9 51 #include "SPIRIT_Types.h"
vpcola 0:f1d3878b8dd9 52
vpcola 0:f1d3878b8dd9 53
vpcola 0:f1d3878b8dd9 54 #ifdef __cplusplus
vpcola 0:f1d3878b8dd9 55 extern "C" {
vpcola 0:f1d3878b8dd9 56 #endif
vpcola 0:f1d3878b8dd9 57
vpcola 0:f1d3878b8dd9 58
vpcola 0:f1d3878b8dd9 59 /** @addtogroup SPIRIT_Libraries
vpcola 0:f1d3878b8dd9 60 * @{
vpcola 0:f1d3878b8dd9 61 */
vpcola 0:f1d3878b8dd9 62
vpcola 0:f1d3878b8dd9 63
vpcola 0:f1d3878b8dd9 64 /** @defgroup SPIRIT_SPI_Driver SPI Driver
vpcola 0:f1d3878b8dd9 65 * @brief Header file for low level SPIRIT SPI driver.
vpcola 0:f1d3878b8dd9 66 * @details See the file <i>@ref MCU_Interface.h</i> for more details.
vpcola 0:f1d3878b8dd9 67 * @{
vpcola 0:f1d3878b8dd9 68 */
vpcola 0:f1d3878b8dd9 69
vpcola 0:f1d3878b8dd9 70
vpcola 0:f1d3878b8dd9 71
vpcola 0:f1d3878b8dd9 72 /** @defgroup SPI_Exported_Types SPI Exported Types
vpcola 0:f1d3878b8dd9 73 * @{
vpcola 0:f1d3878b8dd9 74 */
vpcola 0:f1d3878b8dd9 75
vpcola 0:f1d3878b8dd9 76 /**
vpcola 0:f1d3878b8dd9 77 * @}
vpcola 0:f1d3878b8dd9 78 */
vpcola 0:f1d3878b8dd9 79
vpcola 0:f1d3878b8dd9 80
vpcola 0:f1d3878b8dd9 81
vpcola 0:f1d3878b8dd9 82 /** @defgroup SPI_Exported_Constants SPI Exported Constants
vpcola 0:f1d3878b8dd9 83 * @{
vpcola 0:f1d3878b8dd9 84 */
vpcola 0:f1d3878b8dd9 85
vpcola 0:f1d3878b8dd9 86 /**
vpcola 0:f1d3878b8dd9 87 * @}
vpcola 0:f1d3878b8dd9 88 */
vpcola 0:f1d3878b8dd9 89
vpcola 0:f1d3878b8dd9 90
vpcola 0:f1d3878b8dd9 91
vpcola 0:f1d3878b8dd9 92 /** @defgroup SPI_Exported_Macros SPI Exported Macros
vpcola 0:f1d3878b8dd9 93 * @{
vpcola 0:f1d3878b8dd9 94 */
vpcola 0:f1d3878b8dd9 95
vpcola 0:f1d3878b8dd9 96 /**
vpcola 0:f1d3878b8dd9 97 * @}
vpcola 0:f1d3878b8dd9 98 */
vpcola 0:f1d3878b8dd9 99
vpcola 0:f1d3878b8dd9 100
vpcola 0:f1d3878b8dd9 101
vpcola 0:f1d3878b8dd9 102 /** @defgroup SPI_Exported_Functions SPI Exported Functions
vpcola 0:f1d3878b8dd9 103 * @{
vpcola 0:f1d3878b8dd9 104 */
vpcola 0:f1d3878b8dd9 105
vpcola 0:f1d3878b8dd9 106 typedef SpiritStatus StatusBytes;
vpcola 0:f1d3878b8dd9 107
vpcola 0:f1d3878b8dd9 108 void SdkEvalSpiInit(void);
vpcola 0:f1d3878b8dd9 109 StatusBytes SdkEvalSpiWriteRegisters(uint8_t cRegAddress, uint8_t cNbBytes, uint8_t* pcBuffer);
vpcola 0:f1d3878b8dd9 110 StatusBytes SdkEvalSpiReadRegisters(uint8_t cRegAddress, uint8_t cNbBytes, uint8_t* pcBuffer);
vpcola 0:f1d3878b8dd9 111 StatusBytes SdkEvalSpiCommandStrobes(uint8_t cCommandCode);
vpcola 0:f1d3878b8dd9 112 StatusBytes SdkEvalSpiWriteFifo(uint8_t cNbBytes, uint8_t* pcBuffer);
vpcola 0:f1d3878b8dd9 113 StatusBytes SdkEvalSpiReadFifo(uint8_t cNbBytes, uint8_t* pcBuffer);
vpcola 0:f1d3878b8dd9 114
vpcola 0:f1d3878b8dd9 115 void SdkEvalEnterShutdown(void);
vpcola 0:f1d3878b8dd9 116 void SdkEvalExitShutdown(void);
vpcola 0:f1d3878b8dd9 117 SpiritFlagStatus SdkEvalCheckShutdown(void);
vpcola 0:f1d3878b8dd9 118
vpcola 0:f1d3878b8dd9 119 #define SpiritEnterShutdown SdkEvalEnterShutdown
vpcola 0:f1d3878b8dd9 120 #define SpiritExitShutdown SdkEvalExitShutdown
vpcola 0:f1d3878b8dd9 121 #define SpiritCheckShutdown (SpiritFlagStatus)SdkEvalCheckShutdown
vpcola 0:f1d3878b8dd9 122
vpcola 0:f1d3878b8dd9 123
vpcola 0:f1d3878b8dd9 124 #define SpiritSpiInit SdkEvalSpiInit
vpcola 0:f1d3878b8dd9 125 #define SpiritSpiWriteRegisters(cRegAddress, cNbBytes, pcBuffer) SdkEvalSpiWriteRegisters(cRegAddress, cNbBytes, pcBuffer)
vpcola 0:f1d3878b8dd9 126 #define SpiritSpiReadRegisters(cRegAddress, cNbBytes, pcBuffer) SdkEvalSpiReadRegisters(cRegAddress, cNbBytes, pcBuffer)
vpcola 0:f1d3878b8dd9 127 #define SpiritSpiCommandStrobes(cCommandCode) SdkEvalSpiCommandStrobes(cCommandCode)
vpcola 0:f1d3878b8dd9 128 #define SpiritSpiWriteLinearFifo(cNbBytes, pcBuffer) SdkEvalSpiWriteFifo(cNbBytes, pcBuffer)
vpcola 0:f1d3878b8dd9 129 #define SpiritSpiReadLinearFifo(cNbBytes, pcBuffer) SdkEvalSpiReadFifo(cNbBytes, pcBuffer)
vpcola 0:f1d3878b8dd9 130
vpcola 0:f1d3878b8dd9 131 /**
vpcola 0:f1d3878b8dd9 132 * @}
vpcola 0:f1d3878b8dd9 133 */
vpcola 0:f1d3878b8dd9 134
vpcola 0:f1d3878b8dd9 135 /**
vpcola 0:f1d3878b8dd9 136 * @}
vpcola 0:f1d3878b8dd9 137 */
vpcola 0:f1d3878b8dd9 138
vpcola 0:f1d3878b8dd9 139
vpcola 0:f1d3878b8dd9 140 /**
vpcola 0:f1d3878b8dd9 141 * @}
vpcola 0:f1d3878b8dd9 142 */
vpcola 0:f1d3878b8dd9 143
vpcola 0:f1d3878b8dd9 144
vpcola 0:f1d3878b8dd9 145
vpcola 0:f1d3878b8dd9 146 #ifdef __cplusplus
vpcola 0:f1d3878b8dd9 147 }
vpcola 0:f1d3878b8dd9 148 #endif
vpcola 0:f1d3878b8dd9 149
vpcola 0:f1d3878b8dd9 150 #endif
vpcola 0:f1d3878b8dd9 151
vpcola 0:f1d3878b8dd9 152 /******************* (C) COPYRIGHT 2015 STMicroelectronics *****END OF FILE****/