Toyomasa Watarai / mbed-dev

Fork of mbed-dev by mbed official

Committer:
mbed_official
Date:
Wed Jan 06 15:00:11 2016 +0000
Revision:
45:faebcbaa5f6d
Child:
60:6e6ed0527880
Synchronized with git revision ef73d0c14fb0232f8c65089c5e144b30e47000d7

Full URL: https://github.com/mbedmicro/mbed/commit/ef73d0c14fb0232f8c65089c5e144b30e47000d7/

Add target B96B_F446VE files

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 45:faebcbaa5f6d 1 /* mbed Microcontroller Library
mbed_official 45:faebcbaa5f6d 2 *******************************************************************************
mbed_official 45:faebcbaa5f6d 3 * Copyright (c) 2014, STMicroelectronics
mbed_official 45:faebcbaa5f6d 4 * All rights reserved.
mbed_official 45:faebcbaa5f6d 5 *
mbed_official 45:faebcbaa5f6d 6 * Redistribution and use in source and binary forms, with or without
mbed_official 45:faebcbaa5f6d 7 * modification, are permitted provided that the following conditions are met:
mbed_official 45:faebcbaa5f6d 8 *
mbed_official 45:faebcbaa5f6d 9 * 1. Redistributions of source code must retain the above copyright notice,
mbed_official 45:faebcbaa5f6d 10 * this list of conditions and the following disclaimer.
mbed_official 45:faebcbaa5f6d 11 * 2. Redistributions in binary form must reproduce the above copyright notice,
mbed_official 45:faebcbaa5f6d 12 * this list of conditions and the following disclaimer in the documentation
mbed_official 45:faebcbaa5f6d 13 * and/or other materials provided with the distribution.
mbed_official 45:faebcbaa5f6d 14 * 3. Neither the name of STMicroelectronics nor the names of its contributors
mbed_official 45:faebcbaa5f6d 15 * may be used to endorse or promote products derived from this software
mbed_official 45:faebcbaa5f6d 16 * without specific prior written permission.
mbed_official 45:faebcbaa5f6d 17 *
mbed_official 45:faebcbaa5f6d 18 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
mbed_official 45:faebcbaa5f6d 19 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
mbed_official 45:faebcbaa5f6d 20 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
mbed_official 45:faebcbaa5f6d 21 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
mbed_official 45:faebcbaa5f6d 22 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
mbed_official 45:faebcbaa5f6d 23 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
mbed_official 45:faebcbaa5f6d 24 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
mbed_official 45:faebcbaa5f6d 25 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
mbed_official 45:faebcbaa5f6d 26 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
mbed_official 45:faebcbaa5f6d 27 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
mbed_official 45:faebcbaa5f6d 28 *******************************************************************************
mbed_official 45:faebcbaa5f6d 29 */
mbed_official 45:faebcbaa5f6d 30
mbed_official 45:faebcbaa5f6d 31 #include "PeripheralPins.h"
mbed_official 45:faebcbaa5f6d 32
mbed_official 45:faebcbaa5f6d 33 // =====
mbed_official 45:faebcbaa5f6d 34 // Note: Commented lines are alternative possibilities which are not used per default.
mbed_official 45:faebcbaa5f6d 35 // If you change them, you will have also to modify the corresponding xxx_api.c file
mbed_official 45:faebcbaa5f6d 36 // for pwmout, analogin, analogout, ...
mbed_official 45:faebcbaa5f6d 37 // =====
mbed_official 45:faebcbaa5f6d 38
mbed_official 45:faebcbaa5f6d 39 //*** ADC ***
mbed_official 45:faebcbaa5f6d 40
mbed_official 45:faebcbaa5f6d 41 const PinMap PinMap_ADC[] = {
mbed_official 45:faebcbaa5f6d 42 {PA_0, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 0, 0)}, // ADC1_IN0 - ARDUINO A0
mbed_official 45:faebcbaa5f6d 43 {PA_1, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 1, 0)}, // ADC1_IN1 - ARDUINO A1
mbed_official 45:faebcbaa5f6d 44 {PA_2, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 2, 0)}, // ADC1_IN2
mbed_official 45:faebcbaa5f6d 45 {PA_3, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 3, 0)}, // ADC1_IN3
mbed_official 45:faebcbaa5f6d 46 {PA_4, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 4, 0)}, // ADC1_IN4 - ARDUINO A2
mbed_official 45:faebcbaa5f6d 47 {PA_5, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 5, 0)}, // ADC1_IN5
mbed_official 45:faebcbaa5f6d 48 {PA_6, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 6, 0)}, // ADC1_IN6
mbed_official 45:faebcbaa5f6d 49 {PA_7, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 7, 0)}, // ADC1_IN7
mbed_official 45:faebcbaa5f6d 50 {PB_0, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 8, 0)}, // ADC1_IN8 - ARDUINO A3
mbed_official 45:faebcbaa5f6d 51 {PB_1, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 9, 0)}, // ADC1_IN9
mbed_official 45:faebcbaa5f6d 52 {PC_0, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 10, 0)}, // ADC1_IN10 - ARDUINO A5
mbed_official 45:faebcbaa5f6d 53 {PC_1, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 11, 0)}, // ADC1_IN11 - ARDUINO A4
mbed_official 45:faebcbaa5f6d 54 {PC_2, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 12, 0)}, // ADC1_IN12
mbed_official 45:faebcbaa5f6d 55 {PC_3, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 13, 0)}, // ADC1_IN13
mbed_official 45:faebcbaa5f6d 56 {PC_4, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 14, 0)}, // ADC1_IN14
mbed_official 45:faebcbaa5f6d 57 {PC_5, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 15, 0)}, // ADC1_IN15
mbed_official 45:faebcbaa5f6d 58 {NC, NC, 0}
mbed_official 45:faebcbaa5f6d 59 };
mbed_official 45:faebcbaa5f6d 60
mbed_official 45:faebcbaa5f6d 61
mbed_official 45:faebcbaa5f6d 62 //*** DAC ***
mbed_official 45:faebcbaa5f6d 63
mbed_official 45:faebcbaa5f6d 64 const PinMap PinMap_DAC[] = {
mbed_official 45:faebcbaa5f6d 65 {PA_4, DAC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 1, 0)}, // DAC_OUT1
mbed_official 45:faebcbaa5f6d 66 {PA_5, DAC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 2, 0)}, // DAC_OUT2
mbed_official 45:faebcbaa5f6d 67 {NC, NC, 0}
mbed_official 45:faebcbaa5f6d 68 };
mbed_official 45:faebcbaa5f6d 69
mbed_official 45:faebcbaa5f6d 70
mbed_official 45:faebcbaa5f6d 71 //*** I2C ***
mbed_official 45:faebcbaa5f6d 72
mbed_official 45:faebcbaa5f6d 73 const PinMap PinMap_I2C_SDA[] = {
mbed_official 45:faebcbaa5f6d 74 {PB_3, I2C_2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C2)},
mbed_official 45:faebcbaa5f6d 75 {PB_4, I2C_3, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C3)},
mbed_official 45:faebcbaa5f6d 76 {PB_7, I2C_1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)},
mbed_official 45:faebcbaa5f6d 77 {PB_9, I2C_1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)}, // ARDUINO D14
mbed_official 45:faebcbaa5f6d 78 {PC_9, I2C_3, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C3)},
mbed_official 45:faebcbaa5f6d 79 {PC_12, I2C_2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C2)},
mbed_official 45:faebcbaa5f6d 80 {NC, NC, 0}
mbed_official 45:faebcbaa5f6d 81 };
mbed_official 45:faebcbaa5f6d 82
mbed_official 45:faebcbaa5f6d 83 const PinMap PinMap_I2C_SCL[] = {
mbed_official 45:faebcbaa5f6d 84 {PA_8, I2C_3, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C3)},
mbed_official 45:faebcbaa5f6d 85 {PB_6, I2C_1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)},
mbed_official 45:faebcbaa5f6d 86 {PB_8, I2C_1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)}, // ARDUINO D15
mbed_official 45:faebcbaa5f6d 87 {PB_10, I2C_2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C2)},
mbed_official 45:faebcbaa5f6d 88 {NC, NC, 0}
mbed_official 45:faebcbaa5f6d 89 };
mbed_official 45:faebcbaa5f6d 90
mbed_official 45:faebcbaa5f6d 91 //*** PWM ***
mbed_official 45:faebcbaa5f6d 92
mbed_official 45:faebcbaa5f6d 93 // TIM5 cannot be used because already used by the us_ticker
mbed_official 45:faebcbaa5f6d 94 const PinMap PinMap_PWM[] = {
mbed_official 45:faebcbaa5f6d 95 {PA_0, PWM_2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 1, 0)}, // TIM2_CH1
mbed_official 45:faebcbaa5f6d 96 // {PA_0, PWM_5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 1, 0)}, // TIM5_CH1
mbed_official 45:faebcbaa5f6d 97 {PA_1, PWM_2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 2, 0)}, // TIM2_CH2
mbed_official 45:faebcbaa5f6d 98 // {PA_1, PWM_5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 2, 0)}, // TIM5_CH2
mbed_official 45:faebcbaa5f6d 99 {PA_2, PWM_2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 3, 0)}, // TIM2_CH3
mbed_official 45:faebcbaa5f6d 100 // {PA_2, PWM_5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 3, 0)}, // TIM5_CH3
mbed_official 45:faebcbaa5f6d 101 // {PA_2, PWM_9, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM9, 1, 0)}, // TIM9_CH1
mbed_official 45:faebcbaa5f6d 102 {PA_3, PWM_2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 4, 0)}, // TIM2_CH4
mbed_official 45:faebcbaa5f6d 103 // {PA_3, PWM_5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 4, 0)}, // TIM5_CH4
mbed_official 45:faebcbaa5f6d 104 // {PA_3, PWM_9, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM9, 2, 0)}, // TIM9_CH2
mbed_official 45:faebcbaa5f6d 105 {PA_5, PWM_2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 1, 0)}, // TIM2_CH1
mbed_official 45:faebcbaa5f6d 106 // {PA_5, PWM_8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 1, 1)}, // TIM8_CH1N
mbed_official 45:faebcbaa5f6d 107 {PA_6, PWM_3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 1, 0)}, // TIM3_CH1
mbed_official 45:faebcbaa5f6d 108 // {PA_6, PWM_13,STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM13,1, 0)}, // TIM13_CH1
mbed_official 45:faebcbaa5f6d 109 {PA_7, PWM_1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 1)}, // TIM1_CH1N - ARDUINO D11
mbed_official 45:faebcbaa5f6d 110 // {PA_7, PWM_3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 2, 0)}, // TIM3_CH2
mbed_official 45:faebcbaa5f6d 111 // {PA_7, PWM_8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 1, 1)}, // TIM8_CH1N
mbed_official 45:faebcbaa5f6d 112 // {PA_7, PWM_14,STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM14,1, 0)}, // TIM14_CH1
mbed_official 45:faebcbaa5f6d 113 {PA_8, PWM_1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 0)}, // TIM1_CH1
mbed_official 45:faebcbaa5f6d 114 {PA_9, PWM_1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 0)}, // TIM1_CH2
mbed_official 45:faebcbaa5f6d 115 {PA_10, PWM_1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 0)}, // TIM1_CH3
mbed_official 45:faebcbaa5f6d 116 {PA_11, PWM_1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 4, 0)}, // TIM1_CH4
mbed_official 45:faebcbaa5f6d 117 {PA_15, PWM_2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 1, 0)}, // TIM2_CH1
mbed_official 45:faebcbaa5f6d 118
mbed_official 45:faebcbaa5f6d 119 {PB_0, PWM_1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 1)}, // TIM1_CH2N
mbed_official 45:faebcbaa5f6d 120 // {PB_0, PWM_3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 3, 0)}, // TIM3_CH3
mbed_official 45:faebcbaa5f6d 121 // {PB_0, PWM_8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 2, 1)}, // TIM8_CH2N
mbed_official 45:faebcbaa5f6d 122 {PB_1, PWM_1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 1)}, // TIM1_CH3N
mbed_official 45:faebcbaa5f6d 123 // {PB_1, PWM_3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 4, 0)}, // TIM3_CH4
mbed_official 45:faebcbaa5f6d 124 // {PB_1, PWM_8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 3, 1)}, // TIM8_CH3N
mbed_official 45:faebcbaa5f6d 125 {PB_2, PWM_2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 4, 0)}, // TIM2_CH4
mbed_official 45:faebcbaa5f6d 126 {PB_3, PWM_2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 2, 0)}, // TIM2_CH2 - ARDUINO D3
mbed_official 45:faebcbaa5f6d 127 {PB_4, PWM_3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 1, 0)}, // TIM3_CH1 - ARDUINO D5
mbed_official 45:faebcbaa5f6d 128 {PB_5, PWM_3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 2, 0)}, // TIM3_CH2
mbed_official 45:faebcbaa5f6d 129 {PB_6, PWM_4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 1, 0)}, // TIM4_CH1 - ARDUINO D10
mbed_official 45:faebcbaa5f6d 130 {PB_7, PWM_4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 2, 0)}, // TIM4_CH2
mbed_official 45:faebcbaa5f6d 131 {PB_8, PWM_4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 3, 0)}, // TIM4_CH3
mbed_official 45:faebcbaa5f6d 132 // {PB_8, PWM_2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 1, 0)}, // TIM2_CH1
mbed_official 45:faebcbaa5f6d 133 // {PB_8, PWM_10,STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM1, 1, 0)}, // TIM10_CH1
mbed_official 45:faebcbaa5f6d 134 {PB_9, PWM_4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 4, 0)}, // TIM4_CH4
mbed_official 45:faebcbaa5f6d 135 // {PB_9, PWM_2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 2, 0)}, // TIM2_CH2
mbed_official 45:faebcbaa5f6d 136 // {PB_9, PWM_11,STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM11,1, 0)}, // TIM11_CH1
mbed_official 45:faebcbaa5f6d 137 {PB_10, PWM_2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 3, 0)}, // TIM2_CH3 - ARDUINO D6
mbed_official 45:faebcbaa5f6d 138 {PB_13, PWM_1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 1)}, // TIM1_CH1N
mbed_official 45:faebcbaa5f6d 139 {PB_14, PWM_1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 1)}, // TIM1_CH2N
mbed_official 45:faebcbaa5f6d 140 // {PB_14, PWM_8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 2, 1)}, // TIM8_CH2N
mbed_official 45:faebcbaa5f6d 141 // {PB_14, PWM_12,STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM12, 1, 0)}, // TIM12_CH1
mbed_official 45:faebcbaa5f6d 142 {PB_15, PWM_1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 1)}, // TIM1_CH3N
mbed_official 45:faebcbaa5f6d 143 // {PB_15, PWM_8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 3, 1)}, // TIM8_CH3N
mbed_official 45:faebcbaa5f6d 144 // {PB_15, PWM_12,STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM12, 2, 0)}, // TIM12_CH2
mbed_official 45:faebcbaa5f6d 145
mbed_official 45:faebcbaa5f6d 146 {PC_6, PWM_3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 1, 0)}, // TIM3_CH1
mbed_official 45:faebcbaa5f6d 147 // {PC_6, PWM_8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 1, 0)}, // TIM8_CH1
mbed_official 45:faebcbaa5f6d 148 {PC_7, PWM_3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 2, 0)}, // TIM3_CH2 - ARDUINO D9
mbed_official 45:faebcbaa5f6d 149 // {PC_7, PWM_8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 2, 0)}, // TIM8_CH2
mbed_official 45:faebcbaa5f6d 150 {PC_8, PWM_3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 3, 0)}, // TIM3_CH3
mbed_official 45:faebcbaa5f6d 151 // {PC_8, PWM_8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 3, 0)}, // TIM8_CH3
mbed_official 45:faebcbaa5f6d 152 {PC_9, PWM_3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 4, 0)}, // TIM3_CH4
mbed_official 45:faebcbaa5f6d 153 // {PC_9, PWM_8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 4, 0)}, // TIM8_CH4
mbed_official 45:faebcbaa5f6d 154
mbed_official 45:faebcbaa5f6d 155 {PD_12, PWM_4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 1, 0)}, // TIM4_CH1
mbed_official 45:faebcbaa5f6d 156 {PD_13, PWM_4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 2, 0)}, // TIM4_CH2
mbed_official 45:faebcbaa5f6d 157 {PD_14, PWM_4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 3, 0)}, // TIM4_CH3
mbed_official 45:faebcbaa5f6d 158 {PD_15, PWM_4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 4, 0)}, // TIM4_CH4
mbed_official 45:faebcbaa5f6d 159
mbed_official 45:faebcbaa5f6d 160 {PE_5, PWM_9, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM9, 1, 0)}, // TIM9_CH1
mbed_official 45:faebcbaa5f6d 161 {PE_6, PWM_9, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM9, 2, 0)}, // TIM9_CH2
mbed_official 45:faebcbaa5f6d 162
mbed_official 45:faebcbaa5f6d 163 {PE_8, PWM_1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 1)}, // TIM1_CH1N
mbed_official 45:faebcbaa5f6d 164 {PE_9, PWM_1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 0)}, // TIM1_CH1
mbed_official 45:faebcbaa5f6d 165 {PE_10, PWM_1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 1)}, // TIM1_CH2N
mbed_official 45:faebcbaa5f6d 166 {PE_11, PWM_1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 0)}, // TIM1_CH2
mbed_official 45:faebcbaa5f6d 167 {PE_12, PWM_1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 1)}, // TIM1_CH3N
mbed_official 45:faebcbaa5f6d 168 {PE_13, PWM_1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 0)}, // TIM1_CH3
mbed_official 45:faebcbaa5f6d 169 {PE_14, PWM_1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 4, 0)}, // TIM1_CH4
mbed_official 45:faebcbaa5f6d 170
mbed_official 45:faebcbaa5f6d 171 {NC, NC, 0}
mbed_official 45:faebcbaa5f6d 172 };
mbed_official 45:faebcbaa5f6d 173
mbed_official 45:faebcbaa5f6d 174 //*** SERIAL ***
mbed_official 45:faebcbaa5f6d 175
mbed_official 45:faebcbaa5f6d 176 const PinMap PinMap_UART_TX[] = {
mbed_official 45:faebcbaa5f6d 177 {PA_0, UART_4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)},
mbed_official 45:faebcbaa5f6d 178 {PA_2, UART_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)},
mbed_official 45:faebcbaa5f6d 179 {PA_9, UART_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)},
mbed_official 45:faebcbaa5f6d 180 {PB_6, UART_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)},
mbed_official 45:faebcbaa5f6d 181 {PB_10, UART_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)},
mbed_official 45:faebcbaa5f6d 182 {PC_6, UART_6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART6)},
mbed_official 45:faebcbaa5f6d 183 // {PC_10, UART_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)},
mbed_official 45:faebcbaa5f6d 184 {PC_10, UART_4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)},
mbed_official 45:faebcbaa5f6d 185 {PC_12, UART_5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART5)},
mbed_official 45:faebcbaa5f6d 186 {PD_5, UART_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)},
mbed_official 45:faebcbaa5f6d 187 {PD_8, UART_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)},
mbed_official 45:faebcbaa5f6d 188 {PE_8, UART_5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART5)},
mbed_official 45:faebcbaa5f6d 189 {NC, NC, 0}
mbed_official 45:faebcbaa5f6d 190 };
mbed_official 45:faebcbaa5f6d 191
mbed_official 45:faebcbaa5f6d 192 const PinMap PinMap_UART_RX[] = {
mbed_official 45:faebcbaa5f6d 193 {PA_1, UART_4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)},
mbed_official 45:faebcbaa5f6d 194 {PA_3, UART_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)},
mbed_official 45:faebcbaa5f6d 195 {PA_10, UART_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)},
mbed_official 45:faebcbaa5f6d 196 {PB_7, UART_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)},
mbed_official 45:faebcbaa5f6d 197 {PC_5, UART_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)},
mbed_official 45:faebcbaa5f6d 198 {PC_7, UART_6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART6)},
mbed_official 45:faebcbaa5f6d 199 // {PC_11, UART_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)},
mbed_official 45:faebcbaa5f6d 200 {PC_11, UART_4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)},
mbed_official 45:faebcbaa5f6d 201 {PD_2, UART_5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART5)},
mbed_official 45:faebcbaa5f6d 202 {PD_6, UART_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)},
mbed_official 45:faebcbaa5f6d 203 {PD_9, UART_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)},
mbed_official 45:faebcbaa5f6d 204 {PE_7, UART_5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART5)},
mbed_official 45:faebcbaa5f6d 205 {NC, NC, 0}
mbed_official 45:faebcbaa5f6d 206 };
mbed_official 45:faebcbaa5f6d 207
mbed_official 45:faebcbaa5f6d 208 //*** SPI ***
mbed_official 45:faebcbaa5f6d 209
mbed_official 45:faebcbaa5f6d 210 const PinMap PinMap_SPI_MOSI[] = {
mbed_official 45:faebcbaa5f6d 211 {PD_0, SPI_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
mbed_official 45:faebcbaa5f6d 212 {PA_7, SPI_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, // ARDUINO D11
mbed_official 45:faebcbaa5f6d 213 // {PB_5, SPI_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)},
mbed_official 45:faebcbaa5f6d 214 {PB_0, SPI_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_SPI3)},
mbed_official 45:faebcbaa5f6d 215 {PB_2, SPI_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_SPI3)},
mbed_official 45:faebcbaa5f6d 216 {PB_5, SPI_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
mbed_official 45:faebcbaa5f6d 217 // {PB_5, SPI_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)},
mbed_official 45:faebcbaa5f6d 218 {PB_15, SPI_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)},
mbed_official 45:faebcbaa5f6d 219 {PC_3, SPI_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)},
mbed_official 45:faebcbaa5f6d 220 {PC_1, SPI_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_SPI2)},
mbed_official 45:faebcbaa5f6d 221 // {PC_1, SPI_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI3)},
mbed_official 45:faebcbaa5f6d 222 {PC_12, SPI_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
mbed_official 45:faebcbaa5f6d 223 {PD_6, SPI_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI3)},
mbed_official 45:faebcbaa5f6d 224 {PE_6, SPI_4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI4)},
mbed_official 45:faebcbaa5f6d 225 {PE_14, SPI_4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI4)},
mbed_official 45:faebcbaa5f6d 226 {NC, NC, 0}
mbed_official 45:faebcbaa5f6d 227 };
mbed_official 45:faebcbaa5f6d 228
mbed_official 45:faebcbaa5f6d 229 const PinMap PinMap_SPI_MISO[] = {
mbed_official 45:faebcbaa5f6d 230 {PD_0, SPI_4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI4)},
mbed_official 45:faebcbaa5f6d 231 {PA_6, SPI_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, // ARDUINO D12
mbed_official 45:faebcbaa5f6d 232 // {PB_4, SPI_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)},
mbed_official 45:faebcbaa5f6d 233 {PB_4, SPI_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
mbed_official 45:faebcbaa5f6d 234 {PB_14, SPI_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)},
mbed_official 45:faebcbaa5f6d 235 {PC_2, SPI_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)},
mbed_official 45:faebcbaa5f6d 236 {PC_11, SPI_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
mbed_official 45:faebcbaa5f6d 237 {PE_5, SPI_4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI4)},
mbed_official 45:faebcbaa5f6d 238 {PE_13, SPI_4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI4)},
mbed_official 45:faebcbaa5f6d 239 {NC, NC, 0}
mbed_official 45:faebcbaa5f6d 240 };
mbed_official 45:faebcbaa5f6d 241
mbed_official 45:faebcbaa5f6d 242 const PinMap PinMap_SPI_SCLK[] = {
mbed_official 45:faebcbaa5f6d 243 {PD_3, SPI_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)},
mbed_official 45:faebcbaa5f6d 244 {PA_5, SPI_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, // ARDUINO D13
mbed_official 45:faebcbaa5f6d 245 {PA_9, SPI_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)},
mbed_official 45:faebcbaa5f6d 246 // {PB_3, SPI_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)},
mbed_official 45:faebcbaa5f6d 247 {PB_3, SPI_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
mbed_official 45:faebcbaa5f6d 248 {PB_10, SPI_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)},
mbed_official 45:faebcbaa5f6d 249 {PB_13, SPI_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)},
mbed_official 45:faebcbaa5f6d 250 {PC_7, SPI_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)},
mbed_official 45:faebcbaa5f6d 251 {PC_10, SPI_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
mbed_official 45:faebcbaa5f6d 252 {PE_2, SPI_4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI4)},
mbed_official 45:faebcbaa5f6d 253 {PE_12, SPI_4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI4)},
mbed_official 45:faebcbaa5f6d 254 {NC, NC, 0}
mbed_official 45:faebcbaa5f6d 255 };
mbed_official 45:faebcbaa5f6d 256
mbed_official 45:faebcbaa5f6d 257 const PinMap PinMap_SPI_SSEL[] = {
mbed_official 45:faebcbaa5f6d 258 {PD_1, SPI_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_SPI2)},
mbed_official 45:faebcbaa5f6d 259 {PA_4, SPI_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF5_SPI1)},
mbed_official 45:faebcbaa5f6d 260 // {PA_4, SPI_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF6_SPI3)},
mbed_official 45:faebcbaa5f6d 261 {PA_15, SPI_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF5_SPI1)},
mbed_official 45:faebcbaa5f6d 262 // {PA_15, SPI_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF6_SPI3)},
mbed_official 45:faebcbaa5f6d 263 // {PB_4, SPI_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF7_SPI2)},
mbed_official 45:faebcbaa5f6d 264 {PB_9, SPI_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF5_SPI2)},
mbed_official 45:faebcbaa5f6d 265 {PB_12, SPI_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF5_SPI2)},
mbed_official 45:faebcbaa5f6d 266 {PE_4, SPI_4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI4)},
mbed_official 45:faebcbaa5f6d 267 {PE_11, SPI_4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI4)},
mbed_official 45:faebcbaa5f6d 268 {NC, NC, 0}
mbed_official 45:faebcbaa5f6d 269 };