Header files and Init data so you can use the Text To Speech Click Board with a Hexiware and mBed OS5

Dependents:   Talking_breathalyzer FindTheColor mbed_Projet

Committer:
daveyclk
Date:
Fri Oct 07 20:09:00 2016 +0000
Revision:
0:b33a6418e125
First version of iBreathalyzer with its own voice! (Text to speech click)

Who changed what in which revision?

UserRevisionLine numberNew contents of line
daveyclk 0:b33a6418e125 1 /****************************************************************************
daveyclk 0:b33a6418e125 2 * Title : Text to Speech HAL
daveyclk 0:b33a6418e125 3 * Filename : text_to_speech_hal.h
daveyclk 0:b33a6418e125 4 * Author : MSV
daveyclk 0:b33a6418e125 5 * Origin Date : 01/02/2016
daveyclk 0:b33a6418e125 6 * Notes : None
daveyclk 0:b33a6418e125 7 *****************************************************************************/
daveyclk 0:b33a6418e125 8 /**************************CHANGE LIST **************************************
daveyclk 0:b33a6418e125 9 *
daveyclk 0:b33a6418e125 10 * Date Software Version Initials Description
daveyclk 0:b33a6418e125 11 * 01/02/16 1.0.0 MSV Module Created.
daveyclk 0:b33a6418e125 12 *
daveyclk 0:b33a6418e125 13 *****************************************************************************/
daveyclk 0:b33a6418e125 14 /**
daveyclk 0:b33a6418e125 15 * @file text_to_speech_hal.h
daveyclk 0:b33a6418e125 16 * @brief <h2> HAL layer </h2>
daveyclk 0:b33a6418e125 17 *
daveyclk 0:b33a6418e125 18 * @par
daveyclk 0:b33a6418e125 19 * HAL layer for
daveyclk 0:b33a6418e125 20 * <a href="http://www.mikroe.com">MikroElektronika's</a> TextToSpeech click
daveyclk 0:b33a6418e125 21 * board.
daveyclk 0:b33a6418e125 22 */
daveyclk 0:b33a6418e125 23
daveyclk 0:b33a6418e125 24 /******************************************************************************
daveyclk 0:b33a6418e125 25 * Includes
daveyclk 0:b33a6418e125 26 *******************************************************************************/
daveyclk 0:b33a6418e125 27 #include <stdint.h>
daveyclk 0:b33a6418e125 28 #include <stdbool.h>
daveyclk 0:b33a6418e125 29 #include <stddef.h>
daveyclk 0:b33a6418e125 30
daveyclk 0:b33a6418e125 31
daveyclk 0:b33a6418e125 32 /******************************************************************************
daveyclk 0:b33a6418e125 33 * Preprocessor Constants
daveyclk 0:b33a6418e125 34 *******************************************************************************/
daveyclk 0:b33a6418e125 35 #define DUMMY_BYTE 0x00
daveyclk 0:b33a6418e125 36 #define POR_TIME 0.12
daveyclk 0:b33a6418e125 37 /******************************************************************************
daveyclk 0:b33a6418e125 38 * Configuration Constants
daveyclk 0:b33a6418e125 39 *******************************************************************************/
daveyclk 0:b33a6418e125 40
daveyclk 0:b33a6418e125 41 /******************************************************************************
daveyclk 0:b33a6418e125 42 * Macros
daveyclk 0:b33a6418e125 43 *******************************************************************************/
daveyclk 0:b33a6418e125 44
daveyclk 0:b33a6418e125 45 /******************************************************************************
daveyclk 0:b33a6418e125 46 * Typedefs
daveyclk 0:b33a6418e125 47 *******************************************************************************/
daveyclk 0:b33a6418e125 48
daveyclk 0:b33a6418e125 49 /******************************************************************************
daveyclk 0:b33a6418e125 50 * Variables
daveyclk 0:b33a6418e125 51 *******************************************************************************/
daveyclk 0:b33a6418e125 52
daveyclk 0:b33a6418e125 53 /******************************************************************************
daveyclk 0:b33a6418e125 54 * Function Prototypes
daveyclk 0:b33a6418e125 55 *******************************************************************************/
daveyclk 0:b33a6418e125 56
daveyclk 0:b33a6418e125 57 /**
daveyclk 0:b33a6418e125 58 * @brief <h3> CS High </h3>
daveyclk 0:b33a6418e125 59 *
daveyclk 0:b33a6418e125 60 * @par
daveyclk 0:b33a6418e125 61 * Used by HW layer functions to set CS PIN high ( deselect )
daveyclk 0:b33a6418e125 62 */
daveyclk 0:b33a6418e125 63 void tts_hal_cs_high( void );
daveyclk 0:b33a6418e125 64
daveyclk 0:b33a6418e125 65 /**
daveyclk 0:b33a6418e125 66 * @brief <h3> CS Low </h3>
daveyclk 0:b33a6418e125 67 *
daveyclk 0:b33a6418e125 68 * @par
daveyclk 0:b33a6418e125 69 * Used by HW layer functions to set CS PIN low ( selecet )
daveyclk 0:b33a6418e125 70 */
daveyclk 0:b33a6418e125 71 void tts_hal_cs_low( void );
daveyclk 0:b33a6418e125 72
daveyclk 0:b33a6418e125 73 /**
daveyclk 0:b33a6418e125 74 * @brief <h3> MUT High </h3>
daveyclk 0:b33a6418e125 75 *
daveyclk 0:b33a6418e125 76 * @par
daveyclk 0:b33a6418e125 77 * Used by HW layer to set MUT PIN high ( mute )
daveyclk 0:b33a6418e125 78 */
daveyclk 0:b33a6418e125 79 void tts_hal_mut_high( void );
daveyclk 0:b33a6418e125 80
daveyclk 0:b33a6418e125 81 /**
daveyclk 0:b33a6418e125 82 * @brief <h3> MUT Low </h3>
daveyclk 0:b33a6418e125 83 *
daveyclk 0:b33a6418e125 84 * @par
daveyclk 0:b33a6418e125 85 * Used by HW layer to set MUT PIN low ( unmute )
daveyclk 0:b33a6418e125 86 */
daveyclk 0:b33a6418e125 87 void tts_hal_mut_low( void );
daveyclk 0:b33a6418e125 88
daveyclk 0:b33a6418e125 89 /**
daveyclk 0:b33a6418e125 90 * @brief <h3> Hardware Reset </h3>
daveyclk 0:b33a6418e125 91 *
daveyclk 0:b33a6418e125 92 * @par
daveyclk 0:b33a6418e125 93 * Resets the module via RST PIN
daveyclk 0:b33a6418e125 94 */
daveyclk 0:b33a6418e125 95 void tts_hal_reset( void );
daveyclk 0:b33a6418e125 96
daveyclk 0:b33a6418e125 97 /**
daveyclk 0:b33a6418e125 98 * @brief <h3> MSG Ready </h3>
daveyclk 0:b33a6418e125 99 *
daveyclk 0:b33a6418e125 100 * @par
daveyclk 0:b33a6418e125 101 * Returns state of RDY PIN.
daveyclk 0:b33a6418e125 102 *
daveyclk 0:b33a6418e125 103 * @retval TRUE - RDY high
daveyclk 0:b33a6418e125 104 * @retval FALSE - RDY low
daveyclk 0:b33a6418e125 105 */
daveyclk 0:b33a6418e125 106 bool tts_hal_msg_rdy( void );
daveyclk 0:b33a6418e125 107
daveyclk 0:b33a6418e125 108 /**
daveyclk 0:b33a6418e125 109 * @brief <h3> HAL Initialization </h3>
daveyclk 0:b33a6418e125 110 *
daveyclk 0:b33a6418e125 111 * Hal layer initialization. Must be called before any other function.
daveyclk 0:b33a6418e125 112 */
daveyclk 0:b33a6418e125 113 void tts_hal_init( void );
daveyclk 0:b33a6418e125 114
daveyclk 0:b33a6418e125 115 /**
daveyclk 0:b33a6418e125 116 * @brief <h3> HAL Write </h3>
daveyclk 0:b33a6418e125 117 *
daveyclk 0:b33a6418e125 118 * @par
daveyclk 0:b33a6418e125 119 * Writes data through SPI bus
daveyclk 0:b33a6418e125 120 *
daveyclk 0:b33a6418e125 121 * @note Function have no affect to the CS PIN state - chip select is
daveyclk 0:b33a6418e125 122 * controled directly from HW layer.
daveyclk 0:b33a6418e125 123 *
daveyclk 0:b33a6418e125 124 * @param[in] buffer
daveyclk 0:b33a6418e125 125 * @param[in] count
daveyclk 0:b33a6418e125 126 */
daveyclk 0:b33a6418e125 127 void tts_hal_write( uint8_t *buffer,
daveyclk 0:b33a6418e125 128 uint16_t count, bool boot);
daveyclk 0:b33a6418e125 129
daveyclk 0:b33a6418e125 130 void tts_hal_write_pad(int cnt);
daveyclk 0:b33a6418e125 131
daveyclk 0:b33a6418e125 132 void tts_hal_write_byte( uint8_t byte );
daveyclk 0:b33a6418e125 133
daveyclk 0:b33a6418e125 134 /**
daveyclk 0:b33a6418e125 135 * @brief <h3> HAL Read </h3>
daveyclk 0:b33a6418e125 136 *
daveyclk 0:b33a6418e125 137 * @par
daveyclk 0:b33a6418e125 138 * Reads data from SPI bus
daveyclk 0:b33a6418e125 139 *
daveyclk 0:b33a6418e125 140 * @note Function have no affect to the CS PIN state - chip select is
daveyclk 0:b33a6418e125 141 * controled directly from HW layer
daveyclk 0:b33a6418e125 142 *
daveyclk 0:b33a6418e125 143 * @param[out] buffer
daveyclk 0:b33a6418e125 144 * @param[in] count
daveyclk 0:b33a6418e125 145 */
daveyclk 0:b33a6418e125 146 void tts_hal_read( uint8_t *buffer,
daveyclk 0:b33a6418e125 147 uint16_t count );
daveyclk 0:b33a6418e125 148
daveyclk 0:b33a6418e125 149
daveyclk 0:b33a6418e125 150
daveyclk 0:b33a6418e125 151 /*** End of File **************************************************************/