Initial commit

Dependencies:   FastPWM

Committer:
lypinator
Date:
Wed Sep 16 01:11:49 2020 +0000
Revision:
0:bb348c97df44
Added PWM

Who changed what in which revision?

UserRevisionLine numberNew contents of line
lypinator 0:bb348c97df44 1 /* mbed Microcontroller Library
lypinator 0:bb348c97df44 2 *******************************************************************************
lypinator 0:bb348c97df44 3 * Copyright (c) 2018, STMicroelectronics
lypinator 0:bb348c97df44 4 * All rights reserved.
lypinator 0:bb348c97df44 5 *
lypinator 0:bb348c97df44 6 * Redistribution and use in source and binary forms, with or without
lypinator 0:bb348c97df44 7 * modification, are permitted provided that the following conditions are met:
lypinator 0:bb348c97df44 8 *
lypinator 0:bb348c97df44 9 * 1. Redistributions of source code must retain the above copyright notice,
lypinator 0:bb348c97df44 10 * this list of conditions and the following disclaimer.
lypinator 0:bb348c97df44 11 * 2. Redistributions in binary form must reproduce the above copyright notice,
lypinator 0:bb348c97df44 12 * this list of conditions and the following disclaimer in the documentation
lypinator 0:bb348c97df44 13 * and/or other materials provided with the distribution.
lypinator 0:bb348c97df44 14 * 3. Neither the name of STMicroelectronics nor the names of its contributors
lypinator 0:bb348c97df44 15 * may be used to endorse or promote products derived from this software
lypinator 0:bb348c97df44 16 * without specific prior written permission.
lypinator 0:bb348c97df44 17 *
lypinator 0:bb348c97df44 18 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
lypinator 0:bb348c97df44 19 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
lypinator 0:bb348c97df44 20 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
lypinator 0:bb348c97df44 21 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
lypinator 0:bb348c97df44 22 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
lypinator 0:bb348c97df44 23 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
lypinator 0:bb348c97df44 24 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
lypinator 0:bb348c97df44 25 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
lypinator 0:bb348c97df44 26 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
lypinator 0:bb348c97df44 27 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
lypinator 0:bb348c97df44 28 *******************************************************************************
lypinator 0:bb348c97df44 29 */
lypinator 0:bb348c97df44 30
lypinator 0:bb348c97df44 31 #ifndef MBED_PINNAMES_H
lypinator 0:bb348c97df44 32 #define MBED_PINNAMES_H
lypinator 0:bb348c97df44 33
lypinator 0:bb348c97df44 34 #include "cmsis.h"
lypinator 0:bb348c97df44 35 #include "PinNamesTypes.h"
lypinator 0:bb348c97df44 36
lypinator 0:bb348c97df44 37 #ifdef __cplusplus
lypinator 0:bb348c97df44 38 extern "C" {
lypinator 0:bb348c97df44 39 #endif
lypinator 0:bb348c97df44 40
lypinator 0:bb348c97df44 41 typedef enum {
lypinator 0:bb348c97df44 42 ALT0 = 0x100,
lypinator 0:bb348c97df44 43 ALT1 = 0x200,
lypinator 0:bb348c97df44 44 ALT2 = 0x300,
lypinator 0:bb348c97df44 45 ALT3 = 0x400
lypinator 0:bb348c97df44 46 } ALTx;
lypinator 0:bb348c97df44 47
lypinator 0:bb348c97df44 48 typedef enum {
lypinator 0:bb348c97df44 49 PA_0 = 0x00,
lypinator 0:bb348c97df44 50 PA_1 = 0x01,
lypinator 0:bb348c97df44 51 PA_2 = 0x02,
lypinator 0:bb348c97df44 52 PA_2_ALT0 = PA_2 | ALT0,
lypinator 0:bb348c97df44 53 PA_2_ALT1 = PA_2 | ALT1,
lypinator 0:bb348c97df44 54 PA_3 = 0x03,
lypinator 0:bb348c97df44 55 PA_3_ALT0 = PA_3 | ALT0,
lypinator 0:bb348c97df44 56 PA_3_ALT1 = PA_3 | ALT1,
lypinator 0:bb348c97df44 57 PA_4 = 0x04,
lypinator 0:bb348c97df44 58 PA_4_ALT0 = PA_4 | ALT0,
lypinator 0:bb348c97df44 59 PA_5 = 0x05,
lypinator 0:bb348c97df44 60 PA_5_ALT0 = PA_5 | ALT0,
lypinator 0:bb348c97df44 61 PA_6 = 0x06,
lypinator 0:bb348c97df44 62 PA_6_ALT0 = PA_6 | ALT0,
lypinator 0:bb348c97df44 63 PA_7 = 0x07,
lypinator 0:bb348c97df44 64 PA_7_ALT0 = PA_7 | ALT0,
lypinator 0:bb348c97df44 65 PA_7_ALT1 = PA_7 | ALT1,
lypinator 0:bb348c97df44 66 PA_7_ALT2 = PA_7 | ALT2,
lypinator 0:bb348c97df44 67 PA_8 = 0x08,
lypinator 0:bb348c97df44 68 PA_9 = 0x09,
lypinator 0:bb348c97df44 69 PA_10 = 0x0A,
lypinator 0:bb348c97df44 70 PA_10_ALT0 = PA_10 | ALT0,
lypinator 0:bb348c97df44 71 PA_11 = 0x0B,
lypinator 0:bb348c97df44 72 PA_12 = 0x0C,
lypinator 0:bb348c97df44 73 PA_12_ALT0 = PA_12 | ALT0,
lypinator 0:bb348c97df44 74 PA_13 = 0x0D,
lypinator 0:bb348c97df44 75 PA_14 = 0x0E,
lypinator 0:bb348c97df44 76 PA_15 = 0x0F,
lypinator 0:bb348c97df44 77 PA_15_ALT0 = PA_15 | ALT0,
lypinator 0:bb348c97df44 78
lypinator 0:bb348c97df44 79 PB_0 = 0x10,
lypinator 0:bb348c97df44 80 PB_0_ALT0 = PB_0 | ALT0,
lypinator 0:bb348c97df44 81 PB_0_ALT1 = PB_0 | ALT1,
lypinator 0:bb348c97df44 82 PB_1 = 0x11,
lypinator 0:bb348c97df44 83 PB_1_ALT0 = PB_1 | ALT0,
lypinator 0:bb348c97df44 84 PB_1_ALT1 = PB_1 | ALT1,
lypinator 0:bb348c97df44 85 PB_2 = 0x12,
lypinator 0:bb348c97df44 86 PB_3 = 0x13,
lypinator 0:bb348c97df44 87 PB_3_ALT0 = PB_3 | ALT0,
lypinator 0:bb348c97df44 88 PB_4 = 0x14,
lypinator 0:bb348c97df44 89 PB_4_ALT0 = PA_4 | ALT0,
lypinator 0:bb348c97df44 90 PB_5 = 0x15,
lypinator 0:bb348c97df44 91 PB_5_ALT0 = PB_5 | ALT0,
lypinator 0:bb348c97df44 92 PB_6 = 0x16,
lypinator 0:bb348c97df44 93 PB_6_ALT0 = PB_6 | ALT0,
lypinator 0:bb348c97df44 94 PB_7 = 0x17,
lypinator 0:bb348c97df44 95 PB_8 = 0x18,
lypinator 0:bb348c97df44 96 PB_8_ALT0 = PB_8 | ALT0,
lypinator 0:bb348c97df44 97 PB_9 = 0x19,
lypinator 0:bb348c97df44 98 PB_9_ALT0 = PB_9 | ALT0,
lypinator 0:bb348c97df44 99 PB_10 = 0x1A,
lypinator 0:bb348c97df44 100 PB_10_ALT0 = PB_10 | ALT0,
lypinator 0:bb348c97df44 101 PB_11 = 0x1B,
lypinator 0:bb348c97df44 102 PB_12 = 0x1C,
lypinator 0:bb348c97df44 103 PB_12_ALT0 = PB_12 | ALT0,
lypinator 0:bb348c97df44 104 PB_13 = 0x1D,
lypinator 0:bb348c97df44 105 PB_13_ALT0 = PB_13 | ALT0,
lypinator 0:bb348c97df44 106 PB_14 = 0x1E,
lypinator 0:bb348c97df44 107 PB_14_ALT0 = PB_14 | ALT0,
lypinator 0:bb348c97df44 108 PB_14_ALT1 = PB_14 | ALT1,
lypinator 0:bb348c97df44 109 PB_15 = 0x1F,
lypinator 0:bb348c97df44 110 PB_15_ALT0 = PB_15 | ALT0,
lypinator 0:bb348c97df44 111 PB_15_ALT1 = PB_15 | ALT1,
lypinator 0:bb348c97df44 112
lypinator 0:bb348c97df44 113 PC_0 = 0x20,
lypinator 0:bb348c97df44 114 PC_1 = 0x21,
lypinator 0:bb348c97df44 115 PC_2 = 0x22,
lypinator 0:bb348c97df44 116 PC_3 = 0x23,
lypinator 0:bb348c97df44 117 PC_4 = 0x24,
lypinator 0:bb348c97df44 118 PC_5 = 0x25,
lypinator 0:bb348c97df44 119 PC_6 = 0x26,
lypinator 0:bb348c97df44 120 PC_6_ALT0 = PC_6 | ALT0,
lypinator 0:bb348c97df44 121 PC_7 = 0x27,
lypinator 0:bb348c97df44 122 PC_7_ALT0 = PC_7 | ALT0,
lypinator 0:bb348c97df44 123 PC_8 = 0x28,
lypinator 0:bb348c97df44 124 PC_8_ALT0 = PC_8 | ALT0,
lypinator 0:bb348c97df44 125 PC_9 = 0x29,
lypinator 0:bb348c97df44 126 PC_9_ALT0 = PC_9 | ALT0,
lypinator 0:bb348c97df44 127 PC_10 = 0x2A,
lypinator 0:bb348c97df44 128 PC_11 = 0x2B,
lypinator 0:bb348c97df44 129 PC_11_ALT0 = PC_11 | ALT0,
lypinator 0:bb348c97df44 130 PC_12 = 0x2C,
lypinator 0:bb348c97df44 131 PC_13 = 0x2D,
lypinator 0:bb348c97df44 132 PC_14 = 0x2E,
lypinator 0:bb348c97df44 133 PC_15 = 0x2F,
lypinator 0:bb348c97df44 134
lypinator 0:bb348c97df44 135 PD_0 = 0x30,
lypinator 0:bb348c97df44 136 PD_1 = 0x31,
lypinator 0:bb348c97df44 137 PD_2 = 0x32,
lypinator 0:bb348c97df44 138 PD_3 = 0x33,
lypinator 0:bb348c97df44 139 PD_4 = 0x34,
lypinator 0:bb348c97df44 140 PD_5 = 0x35,
lypinator 0:bb348c97df44 141 PD_6 = 0x36,
lypinator 0:bb348c97df44 142 PD_7 = 0x37,
lypinator 0:bb348c97df44 143 PD_8 = 0x38,
lypinator 0:bb348c97df44 144 PD_9 = 0x39,
lypinator 0:bb348c97df44 145 PD_10 = 0x3A,
lypinator 0:bb348c97df44 146 PD_11 = 0x3B,
lypinator 0:bb348c97df44 147 PD_12 = 0x3C,
lypinator 0:bb348c97df44 148 PD_13 = 0x3D,
lypinator 0:bb348c97df44 149 PD_14 = 0x3E,
lypinator 0:bb348c97df44 150 PD_15 = 0x3F,
lypinator 0:bb348c97df44 151
lypinator 0:bb348c97df44 152 PE_0 = 0x40,
lypinator 0:bb348c97df44 153 PE_1 = 0x41,
lypinator 0:bb348c97df44 154 PE_2 = 0x42,
lypinator 0:bb348c97df44 155 PE_2_ALT0 = PE_2 | ALT0,
lypinator 0:bb348c97df44 156 PE_3 = 0x43,
lypinator 0:bb348c97df44 157 PE_4 = 0x44,
lypinator 0:bb348c97df44 158 PE_4_ALT0 = PE_4 | ALT0,
lypinator 0:bb348c97df44 159 PE_5 = 0x45,
lypinator 0:bb348c97df44 160 PE_5_ALT0 = PE_5 | ALT0,
lypinator 0:bb348c97df44 161 PE_6 = 0x46,
lypinator 0:bb348c97df44 162 PE_6_ALT0 = PE_6 | ALT0,
lypinator 0:bb348c97df44 163 PE_7 = 0x47,
lypinator 0:bb348c97df44 164 PE_8 = 0x48,
lypinator 0:bb348c97df44 165 PE_9 = 0x49,
lypinator 0:bb348c97df44 166 PE_10 = 0x4A,
lypinator 0:bb348c97df44 167 PE_11 = 0x4B,
lypinator 0:bb348c97df44 168 PE_11_ALT0 = PE_11 | ALT0,
lypinator 0:bb348c97df44 169 PE_12 = 0x4C,
lypinator 0:bb348c97df44 170 PE_12_ALT0 = PE_12 | ALT0,
lypinator 0:bb348c97df44 171 PE_13 = 0x4D,
lypinator 0:bb348c97df44 172 PE_13_ALT0 = PE_13 | ALT0,
lypinator 0:bb348c97df44 173 PE_14 = 0x4E,
lypinator 0:bb348c97df44 174 PE_14_ALT0 = PE_14 | ALT0,
lypinator 0:bb348c97df44 175 PE_15 = 0x4F,
lypinator 0:bb348c97df44 176
lypinator 0:bb348c97df44 177 PF_0 = 0x50,
lypinator 0:bb348c97df44 178 PF_1 = 0x51,
lypinator 0:bb348c97df44 179 PF_2 = 0x52,
lypinator 0:bb348c97df44 180 PF_3 = 0x53,
lypinator 0:bb348c97df44 181 PF_4 = 0x54,
lypinator 0:bb348c97df44 182 PF_5 = 0x55,
lypinator 0:bb348c97df44 183 PF_6 = 0x56,
lypinator 0:bb348c97df44 184 PF_7 = 0x57,
lypinator 0:bb348c97df44 185 PF_8 = 0x58,
lypinator 0:bb348c97df44 186 PF_9 = 0x59,
lypinator 0:bb348c97df44 187 PF_10 = 0x5A,
lypinator 0:bb348c97df44 188 PF_11 = 0x5B,
lypinator 0:bb348c97df44 189 PF_12 = 0x5C,
lypinator 0:bb348c97df44 190 PF_13 = 0x5D,
lypinator 0:bb348c97df44 191 PF_14 = 0x5E,
lypinator 0:bb348c97df44 192 PF_15 = 0x5F,
lypinator 0:bb348c97df44 193
lypinator 0:bb348c97df44 194 PG_0 = 0x60,
lypinator 0:bb348c97df44 195 PG_1 = 0x61,
lypinator 0:bb348c97df44 196 PG_2 = 0x62,
lypinator 0:bb348c97df44 197 PG_3 = 0x63,
lypinator 0:bb348c97df44 198 PG_4 = 0x64,
lypinator 0:bb348c97df44 199 PG_5 = 0x65,
lypinator 0:bb348c97df44 200 PG_6 = 0x66,
lypinator 0:bb348c97df44 201 PG_7 = 0x67,
lypinator 0:bb348c97df44 202 PG_8 = 0x68,
lypinator 0:bb348c97df44 203 PG_9 = 0x69,
lypinator 0:bb348c97df44 204 PG_10 = 0x6A,
lypinator 0:bb348c97df44 205 PG_11 = 0x6B,
lypinator 0:bb348c97df44 206 PG_12 = 0x6C,
lypinator 0:bb348c97df44 207 PG_13 = 0x6D,
lypinator 0:bb348c97df44 208 PG_14 = 0x6E,
lypinator 0:bb348c97df44 209 PG_15 = 0x6F,
lypinator 0:bb348c97df44 210
lypinator 0:bb348c97df44 211 PH_0 = 0x70,
lypinator 0:bb348c97df44 212 PH_1 = 0x71,
lypinator 0:bb348c97df44 213
lypinator 0:bb348c97df44 214 // ADC internal channels
lypinator 0:bb348c97df44 215 ADC_TEMP = 0xF0,
lypinator 0:bb348c97df44 216 ADC_VREF = 0xF1,
lypinator 0:bb348c97df44 217 ADC_VBAT = 0xF2,
lypinator 0:bb348c97df44 218
lypinator 0:bb348c97df44 219 // Arduino connector namings
lypinator 0:bb348c97df44 220 A0 = PA_3,
lypinator 0:bb348c97df44 221 A1 = PC_0,
lypinator 0:bb348c97df44 222 A2 = PC_3,
lypinator 0:bb348c97df44 223 A3 = PC_1,
lypinator 0:bb348c97df44 224 A4 = PC_4,
lypinator 0:bb348c97df44 225 A5 = PC_5,
lypinator 0:bb348c97df44 226 D0 = PG_9,
lypinator 0:bb348c97df44 227 D1 = PG_14,
lypinator 0:bb348c97df44 228 D2 = PF_15,
lypinator 0:bb348c97df44 229 D3 = PE_13,
lypinator 0:bb348c97df44 230 D4 = PF_14,
lypinator 0:bb348c97df44 231 D5 = PE_11,
lypinator 0:bb348c97df44 232 D6 = PE_9,
lypinator 0:bb348c97df44 233 D7 = PF_13,
lypinator 0:bb348c97df44 234 D8 = PF_12,
lypinator 0:bb348c97df44 235 D9 = PD_15,
lypinator 0:bb348c97df44 236 D10 = PD_14,
lypinator 0:bb348c97df44 237 D11 = PA_7,
lypinator 0:bb348c97df44 238 D12 = PA_6,
lypinator 0:bb348c97df44 239 D13 = PA_5,
lypinator 0:bb348c97df44 240 D14 = PB_9,
lypinator 0:bb348c97df44 241 D15 = PB_8,
lypinator 0:bb348c97df44 242
lypinator 0:bb348c97df44 243 // STDIO for console print
lypinator 0:bb348c97df44 244 #ifdef MBED_CONF_TARGET_STDIO_UART_TX
lypinator 0:bb348c97df44 245 STDIO_UART_TX = MBED_CONF_TARGET_STDIO_UART_TX,
lypinator 0:bb348c97df44 246 #else
lypinator 0:bb348c97df44 247 STDIO_UART_TX = PD_8,
lypinator 0:bb348c97df44 248 #endif
lypinator 0:bb348c97df44 249 #ifdef MBED_CONF_TARGET_STDIO_UART_RX
lypinator 0:bb348c97df44 250 STDIO_UART_RX = MBED_CONF_TARGET_STDIO_UART_RX,
lypinator 0:bb348c97df44 251 #else
lypinator 0:bb348c97df44 252 STDIO_UART_RX = PD_9,
lypinator 0:bb348c97df44 253 #endif
lypinator 0:bb348c97df44 254
lypinator 0:bb348c97df44 255 // Generic signals namings
lypinator 0:bb348c97df44 256 LED1 = PB_0, // Green
lypinator 0:bb348c97df44 257 LED2 = PB_7, // Blue
lypinator 0:bb348c97df44 258 LED3 = PB_14, // Red
lypinator 0:bb348c97df44 259 LED4 = LED1,
lypinator 0:bb348c97df44 260 LED_RED = LED3,
lypinator 0:bb348c97df44 261 USER_BUTTON = PC_13,
lypinator 0:bb348c97df44 262 // Standardized button names
lypinator 0:bb348c97df44 263 BUTTON1 = USER_BUTTON,
lypinator 0:bb348c97df44 264 SERIAL_TX = STDIO_UART_TX,
lypinator 0:bb348c97df44 265 SERIAL_RX = STDIO_UART_RX,
lypinator 0:bb348c97df44 266 USBTX = STDIO_UART_TX,
lypinator 0:bb348c97df44 267 USBRX = STDIO_UART_RX,
lypinator 0:bb348c97df44 268 I2C_SCL = D15,
lypinator 0:bb348c97df44 269 I2C_SDA = D14,
lypinator 0:bb348c97df44 270 SPI_MOSI = D11,
lypinator 0:bb348c97df44 271 SPI_MISO = D12,
lypinator 0:bb348c97df44 272 SPI_SCK = D13,
lypinator 0:bb348c97df44 273 SPI_CS = D10,
lypinator 0:bb348c97df44 274 PWM_OUT = D9,
lypinator 0:bb348c97df44 275
lypinator 0:bb348c97df44 276 /**** USB pins ****/
lypinator 0:bb348c97df44 277 USB_OTG_FS_DM = PA_11,
lypinator 0:bb348c97df44 278 USB_OTG_FS_DP = PA_12,
lypinator 0:bb348c97df44 279 USB_OTG_FS_ID = PA_10,
lypinator 0:bb348c97df44 280 USB_OTG_FS_SOF = PA_8,
lypinator 0:bb348c97df44 281 USB_OTG_FS_VBUS = PA_9,
lypinator 0:bb348c97df44 282
lypinator 0:bb348c97df44 283 /**** OSCILLATOR pins ****/
lypinator 0:bb348c97df44 284 RCC_OSC32_IN = PC_14,
lypinator 0:bb348c97df44 285 RCC_OSC32_OUT = PC_15,
lypinator 0:bb348c97df44 286 RCC_OSC_IN = PH_0,
lypinator 0:bb348c97df44 287 RCC_OSC_OUT = PH_1,
lypinator 0:bb348c97df44 288
lypinator 0:bb348c97df44 289 /**** DEBUG pins ****/
lypinator 0:bb348c97df44 290 SYS_JTCK_SWCLK = PA_14,
lypinator 0:bb348c97df44 291 SYS_JTDI = PA_15,
lypinator 0:bb348c97df44 292 SYS_JTDO_SWO = PB_3,
lypinator 0:bb348c97df44 293 SYS_JTMS_SWDIO = PA_13,
lypinator 0:bb348c97df44 294 SYS_JTRST = PB_4,
lypinator 0:bb348c97df44 295 SYS_TRACECLK = PE_2,
lypinator 0:bb348c97df44 296 SYS_TRACED0 = PE_3,
lypinator 0:bb348c97df44 297 SYS_TRACED0_ALT0 = PF_6,
lypinator 0:bb348c97df44 298 SYS_TRACED1 = PE_4,
lypinator 0:bb348c97df44 299 SYS_TRACED1_ALT0 = PF_7,
lypinator 0:bb348c97df44 300 SYS_TRACED1_ALT1 = PD_3,
lypinator 0:bb348c97df44 301 SYS_TRACED2 = PE_5,
lypinator 0:bb348c97df44 302 SYS_TRACED2_ALT0 = PG_13,
lypinator 0:bb348c97df44 303 SYS_TRACED3 = PE_6,
lypinator 0:bb348c97df44 304 SYS_TRACED3_ALT0 = PG_14,
lypinator 0:bb348c97df44 305 SYS_WKUP1 = PA_0,
lypinator 0:bb348c97df44 306 SYS_WKUP2 = PC_0,
lypinator 0:bb348c97df44 307 SYS_WKUP3 = PC_1,
lypinator 0:bb348c97df44 308
lypinator 0:bb348c97df44 309 // Not connected
lypinator 0:bb348c97df44 310 NC = (int)0xFFFFFFFF
lypinator 0:bb348c97df44 311 } PinName;
lypinator 0:bb348c97df44 312
lypinator 0:bb348c97df44 313 #ifdef __cplusplus
lypinator 0:bb348c97df44 314 }
lypinator 0:bb348c97df44 315 #endif
lypinator 0:bb348c97df44 316
lypinator 0:bb348c97df44 317 #endif