Contiki 3.x
hw-config.h
1 /*
2  * Copyright (c) 2012, STMicroelectronics.
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions
7  * are met:
8  * 1. Redistributions of source code must retain the above copyright
9  * notice, this list of conditions and the following disclaimer.
10  * 2. Redistributions in binary form must reproduce the above copyright
11  * notice, this list of conditions and the following disclaimer in the
12  * documentation and/or other materials provided with the distribution.
13  * 3. Neither the name of the Institute nor the names of its contributors
14  * may be used to endorse or promote products derived from this software
15  * without specific prior written permission.
16  *
17  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
18  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
19  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
20  * ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
21  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
22  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
23  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
24  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
25  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
26  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
27  * SUCH DAMAGE.
28  *
29  *
30  */
31 /*---------------------------------------------------------------------------*/
32 #ifndef __HW_CONFIG_H
33 #define __HW_CONFIG_H
34 /*---------------------------------------------------------------------------*/
35 #include "stm32l-spirit1-config.h"
36 /*---------------------------------------------------------------------------*/
37 #define UART_RxBufferSize 512
38 /*---------------------------------------------------------------------------*/
39 #define I2Cx I2C1
40 #define I2Cx_CLK_ENABLE() __I2C1_CLK_ENABLE()
41 #define I2Cx_SDA_GPIO_CLK_ENABLE() __GPIOB_CLK_ENABLE()
42 #define I2Cx_SCL_GPIO_CLK_ENABLE() __GPIOB_CLK_ENABLE()
43 /*---------------------------------------------------------------------------*/
44 #define I2Cx_FORCE_RESET() __I2C1_FORCE_RESET()
45 #define I2Cx_RELEASE_RESET() __I2C1_RELEASE_RESET()
46 /*---------------------------------------------------------------------------*/
47 /* Definition for I2Cx Pins */
48 #define I2Cx_SCL_PIN GPIO_PIN_8
49 #define I2Cx_SCL_GPIO_PORT GPIOB
50 #define I2Cx_SDA_PIN GPIO_PIN_9
51 #define I2Cx_SDA_GPIO_PORT GPIOB
52 #define I2Cx_SCL_SDA_AF GPIO_AF4_I2C1
53 
54 /* Definition for I2Cx's NVIC */
55 #define I2Cx_EV_IRQn I2C1_EV_IRQn
56 #define I2Cx_ER_IRQn I2C1_ER_IRQn
57 #define I2Cx_EV_IRQHandler I2C1_EV_IRQHandler
58 #define I2Cx_ER_IRQHandler I2C1_ER_IRQHandler
59 
60 #define I2Cx I2C1
61 #define I2Cx_CLK_ENABLE() __I2C1_CLK_ENABLE()
62 #define I2Cx_SDA_GPIO_CLK_ENABLE() __GPIOB_CLK_ENABLE()
63 #define I2Cx_SCL_GPIO_CLK_ENABLE() __GPIOB_CLK_ENABLE()
64 
65 #define I2Cx_FORCE_RESET() __I2C1_FORCE_RESET()
66 #define I2Cx_RELEASE_RESET() __I2C1_RELEASE_RESET()
67 
68 /* Definition for I2Cx Pins */
69 #define I2Cx_SCL_PIN GPIO_PIN_8
70 #define I2Cx_SCL_GPIO_PORT GPIOB
71 #define I2Cx_SDA_PIN GPIO_PIN_9
72 #define I2Cx_SDA_GPIO_PORT GPIOB
73 #define I2Cx_SCL_SDA_AF GPIO_AF4_I2C1
74 
75 /* Definition for I2Cx's NVIC */
76 #define I2Cx_EV_IRQn I2C1_EV_IRQn
77 #define I2Cx_ER_IRQn I2C1_ER_IRQn
78 #define I2Cx_EV_IRQHandler I2C1_EV_IRQHandler
79 #define I2Cx_ER_IRQHandler I2C1_ER_IRQHandler
80 
81 /* User can use this section to tailor USARTx/UARTx instance used and associated
82  resources */
83 /* Definition for USARTx clock resources */
84 #define USARTx USART2
85 #define USARTx_CLK_ENABLE() __USART2_CLK_ENABLE();
86 #define DMAx_CLK_ENABLE() __DMA1_CLK_ENABLE()
87 #define USARTx_RX_GPIO_CLK_ENABLE() __GPIOA_CLK_ENABLE()
88 #define USARTx_TX_GPIO_CLK_ENABLE() __GPIOA_CLK_ENABLE()
89 
90 #define USARTx_FORCE_RESET() __USART2_FORCE_RESET()
91 #define USARTx_RELEASE_RESET() __USART2_RELEASE_RESET()
92 
93 /* Definition for USARTx Pins */
94 #define USARTx_TX_PIN GPIO_PIN_2
95 #define USARTx_TX_GPIO_PORT GPIOA
96 
97 #define USARTx_RX_PIN GPIO_PIN_3
98 #define USARTx_RX_GPIO_PORT GPIOA
99 
100 /* Definition for USARTx's NVIC */
101 #define USARTx_IRQn USART2_IRQn
102 #define USARTx_IRQHandler USART2_IRQHandler
103 
104 #define USARTx_TX_AF GPIO_AF7_USART2
105 #define USARTx_RX_AF GPIO_AF7_USART2
106 
107 /* Enable sensor mask */
108 #define PRESSURE_SENSOR 0x00000001
109 #define TEMPERATURE_SENSOR 0x00000002
110 #define HUMIDITY_SENSOR 0x00000004
111 #define UV_SENSOR 0x00000008
112 #define ACCELEROMETER_SENSOR 0x00000010
113 #define GYROSCOPE_SENSOR 0x00000020
114 #define MAGNETIC_SENSOR 0x00000040
115 /*---------------------------------------------------------------------------*/
116 #endif /*__HW_CONFIG_H*/
117 /*---------------------------------------------------------------------------*/