Kinetis SDK v.1.2 Demo Applications User's Guide  Rev. 0
Freescale Semiconductor, Inc.
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
i2c_rtos.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2014, Freescale Semiconductor, Inc.
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without modification,
6  * are permitted provided that the following conditions are met:
7  *
8  * o Redistributions of source code must retain the above copyright notice, this list
9  * of conditions and the following disclaimer.
10  *
11  * o Redistributions in binary form must reproduce the above copyright notice, this
12  * list of conditions and the following disclaimer in the documentation and/or
13  * other materials provided with the distribution.
14  *
15  * o Neither the name of Freescale Semiconductor, Inc. nor the names of its
16  * contributors may be used to endorse or promote products derived from this
17  * software without specific prior written permission.
18  *
19  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22  * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
23  * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
26  * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29  */
30 #ifndef __I2C_RTOS_H__
31 #define __I2C_RTOS_H__
32 
34 // Includes
36 // Standard C Included Files
37 #include <stdio.h>
38 // SDK Included Files
39 #include "fsl_os_abstraction.h"
40 #include "board.h"
41 #include "fsl_smc_hal.h"
42 
44 // Definitions
46 #define I2C_RTOS_SLAVE_ADDRESS (0x7F)
47 #define I2C_RTOS_LIGHT_CMD 1
48 #define I2C_RTOS_TEMP_CMD 2
49 #define I2C_RTOS_SLEEP_CMD 3
50 #define I2C_RTOS_READID_CMD 4
51 
52 #define I2C_RTOS_MASTER_INSTANCE (0)
53 // Definition for boards with only 1 I2C.
54 #if defined(FRDM_KL02Z) || defined(FRDM_KL03Z)
55 #define I2C_RTOS_SLAVE_INSTANCE (0)
56 #else
57 #define I2C_RTOS_SLAVE_INSTANCE (1)
58 #endif
59 
60 
61 #define I2C_RTOS_MAGIC 0xBB
62 
63 #if defined(FRDM_KL46Z) || defined(FRDM_KL02Z) || defined(FRDM_KL03Z)|| defined(FRDM_KL43Z) || defined(TWR_KL43Z48M) || defined(FRDM_KL27Z) || defined(FRDM_KL25Z) || defined(TWR_KL25Z48M) || defined(TWR_K21D50M) || defined(FRDM_KL26Z) || defined(MRB_KW01)
64 #define ADC_INSTANCE ADC0_IDX
65 #else
66 #define ADC_INSTANCE ADC1_IDX
67 #endif
68 
69 #endif /* __I2C_RTOS_H__ */