Skip to content

Commit 1780a08

Browse files
mahanthgouda0xc0170
authored andcommitted
Add OKDO platform (#11407)
Add OKDO platform
1 parent 243e6a5 commit 1780a08

File tree

2 files changed

+242
-0
lines changed
  • targets
    • TARGET_STM/TARGET_STM32F4/TARGET_STM32F439xI/TARGET_MODULE_UBLOX_ODIN_W2/TARGET_OKDO_ODIN_W2

2 files changed

+242
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,236 @@
1+
/* mbed Microcontroller Library
2+
*******************************************************************************
3+
* Copyright (c) 2014, STMicroelectronics
4+
* All rights reserved.
5+
*
6+
* Redistribution and use in source and binary forms, with or without
7+
* modification, are permitted provided that the following conditions are met:
8+
*
9+
* 1. Redistributions of source code must retain the above copyright notice,
10+
* this list of conditions and the following disclaimer.
11+
* 2. Redistributions in binary form must reproduce the above copyright notice,
12+
* this list of conditions and the following disclaimer in the documentation
13+
* and/or other materials provided with the distribution.
14+
* 3. Neither the name of STMicroelectronics nor the names of its contributors
15+
* may be used to endorse or promote products derived from this software
16+
* without specific prior written permission.
17+
*
18+
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19+
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20+
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21+
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
22+
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23+
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
24+
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
25+
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
26+
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
27+
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28+
*******************************************************************************
29+
*/
30+
31+
#ifndef MBED_PINNAMES_H
32+
#define MBED_PINNAMES_H
33+
34+
#include "cmsis.h"
35+
#include "PinNamesTypes.h"
36+
37+
#ifdef __cplusplus
38+
extern "C" {
39+
#endif
40+
41+
typedef enum {
42+
PA_0 = 0x00, PA_1 = 0x01, PA_2 = 0x02, PA_3 = 0x03,
43+
PA_4 = 0x04, PA_5 = 0x05, PA_6 = 0x06, PA_7 = 0x07,
44+
PA_8 = 0x08, PA_9 = 0x09, PA_10 = 0x0A, PA_11 = 0x0B,
45+
PA_12 = 0x0C, PA_13 = 0x0D, PA_14 = 0x0E, PA_15 = 0x0F,
46+
47+
PB_0 = 0x10, PB_1 = 0x11, PB_2 = 0x12, PB_3 = 0x13,
48+
PB_4 = 0x14, PB_5 = 0x15, PB_6 = 0x16, PB_7 = 0x17,
49+
PB_8 = 0x18, PB_9 = 0x19, PB_10 = 0x1A, PB_11 = 0x1B,
50+
PB_12 = 0x1C, PB_13 = 0x1D, PB_14 = 0x1E, PB_15 = 0x1F,
51+
52+
PC_0 = 0x20, PC_1 = 0x21, PC_2 = 0x22, PC_3 = 0x23,
53+
PC_4 = 0x24, PC_5 = 0x25, PC_6 = 0x26, PC_7 = 0x27,
54+
PC_8 = 0x28, PC_9 = 0x29, PC_10 = 0x2A, PC_11 = 0x2B,
55+
PC_12 = 0x2C, PC_13 = 0x2D, PC_14 = 0x2E, PC_15 = 0x2F,
56+
57+
PD_0 = 0x30, PD_1 = 0x31, PD_2 = 0x32, PD_3 = 0x33,
58+
PD_4 = 0x34, PD_5 = 0x35, PD_6 = 0x36, PD_7 = 0x37,
59+
PD_8 = 0x38, PD_9 = 0x39, PD_10 = 0x3A, PD_11 = 0x3B,
60+
PD_12 = 0x3C, PD_13 = 0x3D, PD_14 = 0x3E, PD_15 = 0x3F,
61+
62+
PE_0 = 0x40, PE_1 = 0x41, PE_2 = 0x42, PE_3 = 0x43,
63+
PE_4 = 0x44, PE_5 = 0x45, PE_6 = 0x46, PE_7 = 0x47,
64+
PE_8 = 0x48, PE_9 = 0x49, PE_10 = 0x4A, PE_11 = 0x4B,
65+
PE_12 = 0x4C, PE_13 = 0x4D, PE_14 = 0x4E, PE_15 = 0x4F,
66+
67+
PF_0 = 0x50, PF_1 = 0x51, PF_2 = 0x52, PF_3 = 0x53,
68+
PF_4 = 0x54, PF_5 = 0x55, PF_6 = 0x56, PF_7 = 0x57,
69+
PF_8 = 0x58, PF_9 = 0x59, PF_10 = 0x5A, PF_11 = 0x5B,
70+
PF_12 = 0x5C, PF_13 = 0x5D, PF_14 = 0x5E, PF_15 = 0x5F,
71+
72+
PG_0 = 0x60, PG_1 = 0x61, PG_2 = 0x62, PG_3 = 0x63,
73+
PG_4 = 0x64, PG_5 = 0x65, PG_6 = 0x66, PG_7 = 0x67,
74+
PG_8 = 0x68, PG_9 = 0x69, PG_10 = 0x6A, PG_11 = 0x6B,
75+
PG_12 = 0x6C, PG_13 = 0x6D, PG_14 = 0x6E, PG_15 = 0x6F,
76+
77+
PH_0 = 0x70, PH_1 = 0x71, PH_2 = 0x72, PH_3 = 0x73,
78+
PH_4 = 0x74, PH_5 = 0x75, PH_6 = 0x76, PH_7 = 0x77,
79+
PH_8 = 0x78, PH_9 = 0x79, PH_10 = 0x7A, PH_11 = 0x7B,
80+
PH_12 = 0x7C, PH_13 = 0x7D, PH_14 = 0x7E, PH_15 = 0x7F,
81+
82+
// Not connected
83+
NC = (int)0xFFFFFFFF,
84+
85+
// Module Pins
86+
// PortA
87+
P_A1 = NC,
88+
P_A2 = NC,
89+
P_A3 = NC,
90+
P_A4 = NC,
91+
P_A5 = PC_2,
92+
P_A6 = PF_2,
93+
P_A7 = PE_0,
94+
P_A8 = PB_6,
95+
P_A9 = PB_8,
96+
P_A10 = PA_11,
97+
P_A11 = PA_9,
98+
P_A12 = PA_12,
99+
P_A13 = PA_10,
100+
P_A14 = PD_9,
101+
P_A15 = PD_8,
102+
P_A16 = PD_11,
103+
P_A17 = PD_12,
104+
P_A18 = PA_3,
105+
// PortB
106+
P_B1 = NC,
107+
P_B2 = NC,
108+
P_B3 = NC,
109+
P_B4 = NC,
110+
P_B5 = NC,
111+
P_B6 = NC,
112+
P_B7 = NC,
113+
P_B8 = NC,
114+
// PortC
115+
P_C1 = NC,
116+
P_C2 = NC,
117+
P_C3 = NC,
118+
P_C4 = NC,
119+
P_C5 = PG_4,
120+
P_C6 = PE_13,
121+
P_C7 = NC,
122+
P_C8 = PE_12,
123+
P_C9 = NC,
124+
P_C10 = PE_14,
125+
P_C11 = PE_11,
126+
P_C12 = PE_9,
127+
P_C13 = PF_6,
128+
P_C14 = PC_1,
129+
P_C15 = PA_2,
130+
P_C16 = PF_7,
131+
P_C17 = PF_1,
132+
P_C18 = PF_0,
133+
// PortD
134+
P_D1 = PB_12,
135+
P_D2 = PB_13,
136+
P_D3 = PB_11,
137+
P_D4 = PA_7,
138+
P_D5 = PC_4,
139+
P_D6 = PC_5,
140+
P_D7 = NC,
141+
P_D8 = PA_1,
142+
// TestPads
143+
P_TP5 = PB_4,
144+
P_TP7 = PA_13,
145+
P_TP8 = PA_15,
146+
P_TP9 = PA_14,
147+
P_TP10 = PB_3,
148+
//P_TP11, // BOOT0
149+
150+
// Mbed pins
151+
LED_RED = PE_0,
152+
LED_GREEN = PB_6,
153+
LED_BLUE = PB_8,
154+
155+
LED1 = LED_RED,
156+
LED2 = LED_GREEN,
157+
LED3 = LED_BLUE,
158+
159+
SW1 = PF_2,
160+
161+
// Standardized button names
162+
BUTTON1 = SW1,
163+
164+
I2C_SDA = PF_0,
165+
I2C_SCL = PF_1,
166+
167+
SPI0_MOSI = PE_14,
168+
SPI0_MISO = PE_13,
169+
SPI0_SCK = PE_12,
170+
SPI0_CS = PE_11, //CS for SPI Flash on MCB
171+
SPI1_CS = PE_9, //CS for LCD on MTB
172+
SPI2_CS = PG_4, //CS for SD card on MTB
173+
174+
SPI_MOSI = SPI0_MOSI,
175+
SPI_MISO = SPI0_MISO,
176+
SPI_SCK = SPI0_SCK,
177+
SPI_CS = SPI0_CS,
178+
179+
// STDIO for console print
180+
#ifdef MBED_CONF_TARGET_STDIO_UART_TX
181+
STDIO_UART_TX = MBED_CONF_TARGET_STDIO_UART_TX,
182+
#elif MBED_CONF_TARGET_USB_TX
183+
STDIO_UART_TX = MBED_CONF_TARGET_USB_TX,
184+
#else
185+
STDIO_UART_TX = PA_9,
186+
#endif
187+
188+
#ifdef MBED_CONF_TARGET_STDIO_UART_RX
189+
STDIO_UART_RX = MBED_CONF_TARGET_STDIO_UART_RX,
190+
#elif MBED_CONF_TARGET_USB_RX
191+
STDIO_UART_TX = MBED_CONF_TARGET_USB_RX,
192+
#else
193+
STDIO_UART_RX = PA_10,
194+
#endif
195+
196+
// DAPLink
197+
USBRX = STDIO_UART_RX,
198+
USBTX = STDIO_UART_TX,
199+
SWDIO = PA_15,
200+
SWCLK = PA_14,
201+
NTRST = PB_4,
202+
203+
// ADC internal channels
204+
ADC_TEMP = 0xF0,
205+
ADC_VREF = 0xF1,
206+
ADC_VBAT = 0xF2,
207+
208+
//Right side (top view)
209+
GND = NC,
210+
GP10 = NC,
211+
RTS = NC,
212+
CTS = NC,
213+
GP7 = P_C12, //LCD CS on MTB
214+
GP6 = P_A12, //LCD Reset on MTB
215+
GP5 = P_A10, //LCD A0 on MTB
216+
GP4 = P_A17,
217+
TX2 = NC,
218+
RX2 = NC,
219+
SDA2 = NC,
220+
SCL2 = NC,
221+
MOSI2 = NC,
222+
MISO2 = NC,
223+
SCK2 = NC,
224+
GP3 = P_A16,
225+
GP2 = P_C5, //CS for SD Card on MTB
226+
PWM2 = LED_GREEN,
227+
PWM1 = LED_BLUE,
228+
PWM0 = LED_RED,
229+
230+
} PinName;
231+
232+
#ifdef __cplusplus
233+
}
234+
#endif
235+
236+
#endif

targets/targets.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4818,6 +4818,12 @@
48184818
"overrides": {"lse_available": 0},
48194819
"release_versions": ["5"]
48204820
},
4821+
"OKDO_ODIN_W2": {
4822+
"inherits": ["MODULE_UBLOX_ODIN_W2"],
4823+
"device_has_add": [],
4824+
"overrides": {"lse_available": 0},
4825+
"release_versions": ["5"]
4826+
},
48214827
"UBLOX_C030": {
48224828
"inherits": ["FAMILY_STM32"],
48234829
"supported_form_factors": ["ARDUINO"],

0 commit comments

Comments
 (0)