mirror of https://github.com/ARMmbed/mbed-os.git
386 lines
26 KiB
C
386 lines
26 KiB
C
/* mbed Microcontroller Library
|
|
* Copyright (c) 2018 GigaDevice Semiconductor Inc.
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
|
|
#include "PeripheralPins.h"
|
|
|
|
|
|
/* void pin_function(PinName pin, int function);
|
|
configure the mode, output mode, pull, speed, af function of pins
|
|
the parameter function contains the configuration information,show as below
|
|
bit 0:2 gpio mode input / output / af / analog
|
|
bit 3 output push-pull / open drain
|
|
bit 5:4 no pull, pull-up, pull-down
|
|
bit 9:6 channel af function
|
|
bit 11:10 gpio speed
|
|
bit 16:12 channel of adc/timer/dac
|
|
bit 17 PWM channel-ON
|
|
bit 31:18 reserved
|
|
*/
|
|
|
|
/* GPIO MODE */
|
|
const int GD_GPIO_MODE[] = {
|
|
GPIO_MODE_INPUT, /* 0 */
|
|
GPIO_MODE_OUTPUT, /* 1 */
|
|
GPIO_MODE_AF, /* 2 */
|
|
GPIO_MODE_ANALOG, /* 3 */
|
|
};
|
|
|
|
/* GPIO pull_up_down */
|
|
const int GD_GPIO_PULL_UP_DOWN[] = {
|
|
GPIO_PUPD_NONE, /* 0 */
|
|
GPIO_PUPD_PULLUP, /* 1 */
|
|
GPIO_PUPD_PULLDOWN, /* 2 */
|
|
};
|
|
|
|
/* GPIO otype */
|
|
const int GD_GPIO_OUTPUT_MODE[] = {
|
|
GPIO_OTYPE_PP, /* 0 */
|
|
GPIO_OTYPE_OD, /* 1 */
|
|
};
|
|
|
|
/* GPIO SPEED */
|
|
const int GD_GPIO_SPEED[] = {
|
|
GPIO_OSPEED_50MHZ, /* 0 */
|
|
GPIO_OSPEED_200MHZ, /* 1 */
|
|
GPIO_OSPEED_25MHZ, /* 2 */
|
|
GPIO_OSPEED_2MHZ, /* 3 */
|
|
};
|
|
|
|
/* GPIO AF */
|
|
const int GD_GPIO_AF[] = {
|
|
GPIO_AF_0, /* 0 */
|
|
GPIO_AF_1, /* 1 */
|
|
GPIO_AF_2, /* 2 */
|
|
GPIO_AF_3, /* 3 */
|
|
GPIO_AF_4, /* 4 */
|
|
GPIO_AF_5, /* 5 */
|
|
GPIO_AF_6, /* 6 */
|
|
GPIO_AF_7, /* 7 */
|
|
GPIO_AF_8, /* 8 */
|
|
GPIO_AF_9, /* 9 */
|
|
GPIO_AF_10, /* 10 */
|
|
GPIO_AF_11, /* 11 */
|
|
GPIO_AF_12, /* 12 */
|
|
GPIO_AF_13, /* 13 */
|
|
GPIO_AF_14, /* 14 */
|
|
GPIO_AF_15, /* 15 */
|
|
};
|
|
|
|
/* ADC PinMap */
|
|
const PinMap PinMap_ADC[] = {
|
|
{PORTA_0, ADC_0, SET_PIN_FUNCTION_ADC_CHANNEL(0)}, /* ADC0_IN0 */
|
|
{PORTA_1, ADC_0, SET_PIN_FUNCTION_ADC_CHANNEL(1)}, /* ADC0_IN1 */
|
|
{PORTA_2, ADC_0, SET_PIN_FUNCTION_ADC_CHANNEL(2)}, /* ADC0_IN2 */
|
|
{PORTA_3, ADC_0, SET_PIN_FUNCTION_ADC_CHANNEL(3)}, /* ADC0_IN3 */
|
|
{PORTA_4, ADC_0, SET_PIN_FUNCTION_ADC_CHANNEL(4)}, /* ADC0_IN4 */
|
|
{PORTA_5, ADC_0, SET_PIN_FUNCTION_ADC_CHANNEL(5)}, /* ADC0_IN5 */
|
|
{PORTA_6, ADC_0, SET_PIN_FUNCTION_ADC_CHANNEL(6)}, /* ADC0_IN6 */
|
|
{PORTA_7, ADC_0, SET_PIN_FUNCTION_ADC_CHANNEL(7)}, /* ADC0_IN7 */
|
|
{PORTB_0, ADC_0, SET_PIN_FUNCTION_ADC_CHANNEL(8)}, /* ADC0_IN8 */
|
|
{PORTB_1, ADC_0, SET_PIN_FUNCTION_ADC_CHANNEL(9)}, /* ADC0_IN9 */
|
|
{PORTC_0, ADC_0, SET_PIN_FUNCTION_ADC_CHANNEL(10)}, /* ADC0_IN10 */
|
|
{PORTC_1, ADC_0, SET_PIN_FUNCTION_ADC_CHANNEL(11)}, /* ADC0_IN11 */
|
|
{PORTC_2, ADC_0, SET_PIN_FUNCTION_ADC_CHANNEL(12)}, /* ADC0_IN12 */
|
|
{PORTC_3, ADC_0, SET_PIN_FUNCTION_ADC_CHANNEL(13)}, /* ADC0_IN13 */
|
|
{PORTC_4, ADC_0, SET_PIN_FUNCTION_ADC_CHANNEL(14)}, /* ADC0_IN14 */
|
|
{PORTC_5, ADC_0, SET_PIN_FUNCTION_ADC_CHANNEL(15)}, /* ADC0_IN15 */
|
|
{ADC_TEMP, ADC_0, SET_PIN_FUNCTION_ADC_CHANNEL(16)}, /* ADC0_IN16 */
|
|
{ADC_VREF, ADC_0, SET_PIN_FUNCTION_ADC_CHANNEL(17)}, /* ADC0_IN17 */
|
|
{ADC_VBAT, ADC_0, SET_PIN_FUNCTION_ADC_CHANNEL(18)}, /* ADC0_IN18 */
|
|
|
|
{PORTA_0_MUL0, ADC_1, SET_PIN_FUNCTION_ADC_CHANNEL(0)}, /* ADC1_IN0 */
|
|
{PORTA_1_MUL0, ADC_1, SET_PIN_FUNCTION_ADC_CHANNEL(1)}, /* ADC1_IN1 */
|
|
{PORTA_2_MUL0, ADC_1, SET_PIN_FUNCTION_ADC_CHANNEL(2)}, /* ADC1_IN2 */
|
|
{PORTA_3_MUL0, ADC_1, SET_PIN_FUNCTION_ADC_CHANNEL(3)}, /* ADC1_IN3 */
|
|
{PORTA_4_MUL0, ADC_1, SET_PIN_FUNCTION_ADC_CHANNEL(4)}, /* ADC1_IN4 */
|
|
{PORTA_5_MUL0, ADC_1, SET_PIN_FUNCTION_ADC_CHANNEL(5)}, /* ADC1_IN5 */
|
|
{PORTA_6_MUL0, ADC_1, SET_PIN_FUNCTION_ADC_CHANNEL(6)}, /* ADC1_IN6 */
|
|
{PORTA_7_MUL0, ADC_1, SET_PIN_FUNCTION_ADC_CHANNEL(7)}, /* ADC1_IN7 */
|
|
{PORTB_0_MUL0, ADC_1, SET_PIN_FUNCTION_ADC_CHANNEL(8)}, /* ADC1_IN8 */
|
|
{PORTB_1_MUL0, ADC_1, SET_PIN_FUNCTION_ADC_CHANNEL(9)}, /* ADC1_IN9 */
|
|
{PORTC_0_MUL0, ADC_1, SET_PIN_FUNCTION_ADC_CHANNEL(10)}, /* ADC1_IN10 */
|
|
{PORTC_1_MUL0, ADC_1, SET_PIN_FUNCTION_ADC_CHANNEL(11)}, /* ADC1_IN11 */
|
|
{PORTC_2_MUL0, ADC_1, SET_PIN_FUNCTION_ADC_CHANNEL(12)}, /* ADC1_IN12 */
|
|
{PORTC_3_MUL0, ADC_1, SET_PIN_FUNCTION_ADC_CHANNEL(13)}, /* ADC1_IN13 */
|
|
{PORTC_4_MUL0, ADC_1, SET_PIN_FUNCTION_ADC_CHANNEL(14)}, /* ADC1_IN14 */
|
|
{PORTC_5_MUL0, ADC_1, SET_PIN_FUNCTION_ADC_CHANNEL(15)}, /* ADC1_IN15 */
|
|
|
|
{PORTA_0_MUL1, ADC_2, SET_PIN_FUNCTION_ADC_CHANNEL(0)}, /* ADC2_IN0 */
|
|
{PORTA_1_MUL1, ADC_2, SET_PIN_FUNCTION_ADC_CHANNEL(1)}, /* ADC2_IN1 */
|
|
{PORTA_2_MUL1, ADC_2, SET_PIN_FUNCTION_ADC_CHANNEL(2)}, /* ADC2_IN2 */
|
|
{PORTA_3_MUL1, ADC_2, SET_PIN_FUNCTION_ADC_CHANNEL(3)}, /* ADC2_IN3 */
|
|
{PORTF_6, ADC_2, SET_PIN_FUNCTION_ADC_CHANNEL(4)}, /* ADC2_IN4 */
|
|
{PORTF_7, ADC_2, SET_PIN_FUNCTION_ADC_CHANNEL(5)}, /* ADC2_IN5 */
|
|
{PORTF_8, ADC_2, SET_PIN_FUNCTION_ADC_CHANNEL(6)}, /* ADC2_IN6 */
|
|
{PORTF_9, ADC_2, SET_PIN_FUNCTION_ADC_CHANNEL(7)}, /* ADC2_IN7 */
|
|
{PORTF_10, ADC_2, SET_PIN_FUNCTION_ADC_CHANNEL(8)}, /* ADC2_IN8 */
|
|
{PORTF_3, ADC_2, SET_PIN_FUNCTION_ADC_CHANNEL(9)}, /* ADC2_IN9 */
|
|
{PORTC_0_MUL1, ADC_2, SET_PIN_FUNCTION_ADC_CHANNEL(10)}, /* ADC2_IN10 */
|
|
{PORTC_1_MUL1, ADC_2, SET_PIN_FUNCTION_ADC_CHANNEL(11)}, /* ADC2_IN11 */
|
|
{PORTC_2_MUL1, ADC_2, SET_PIN_FUNCTION_ADC_CHANNEL(12)}, /* ADC2_IN12 */
|
|
{PORTC_3_MUL1, ADC_2, SET_PIN_FUNCTION_ADC_CHANNEL(13)}, /* ADC2_IN13 */
|
|
{PORTF_4, ADC_2, SET_PIN_FUNCTION_ADC_CHANNEL(14)}, /* ADC2_IN14 */
|
|
{PORTF_5, ADC_2, SET_PIN_FUNCTION_ADC_CHANNEL(15)}, /* ADC2_IN15 */
|
|
{NC, NC, 0}
|
|
};
|
|
|
|
/* DAC PinMap */
|
|
const PinMap PinMap_DAC[] = {
|
|
{PORTA_4, DAC_0, SET_PIN_FUNCTION_DAC_CHANNEL(0)}, /* DAC_OUT0 */
|
|
{PORTA_5, DAC_0, SET_PIN_FUNCTION_DAC_CHANNEL(1)}, /* DAC_OUT1 */
|
|
{NC, NC, 0}
|
|
};
|
|
|
|
|
|
/* I2C PinMap */
|
|
const PinMap PinMap_I2C_SDA[] = {
|
|
{PORTB_7, I2C_0, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_OD, PIN_PUPD_NONE, PIN_AF_4)},
|
|
{PORTB_9, I2C_0, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_OD, PIN_PUPD_NONE, PIN_AF_4)},
|
|
{PORTB_11, I2C_1, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_OD, PIN_PUPD_NONE, PIN_AF_4)},
|
|
{PORTC_9, I2C_2, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_OD, PIN_PUPD_NONE, PIN_AF_4)},
|
|
{PORTF_0, I2C_1, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_OD, PIN_PUPD_NONE, PIN_AF_4)},
|
|
{NC, NC, 0}
|
|
};
|
|
|
|
const PinMap PinMap_I2C_SCL[] = {
|
|
{PORTA_8, I2C_2, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_OD, PIN_PUPD_NONE, PIN_AF_4)},
|
|
{PORTB_6, I2C_0, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_OD, PIN_PUPD_NONE, PIN_AF_4)},
|
|
{PORTB_8, I2C_0, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_OD, PIN_PUPD_NONE, PIN_AF_4)},
|
|
{PORTB_10, I2C_1, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_OD, PIN_PUPD_NONE, PIN_AF_4)},
|
|
{PORTF_1, I2C_1, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_OD, PIN_PUPD_NONE, PIN_AF_4)},
|
|
{NC, NC, 0}
|
|
};
|
|
|
|
/* PWM PinMap */
|
|
const PinMap PinMap_PWM[] = {
|
|
{PORTA_0, PWM_1, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_1, 0, 0)},
|
|
/* {PORTA_0, PWM_4, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_2, 0, 0)}, */
|
|
{PORTA_1, PWM_1, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_1, 1, 0)},
|
|
/* {PORTA_1, PWM_4, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_2, 1, 0)}, */
|
|
{PORTA_2, PWM_1, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_1, 2, 0)},
|
|
/* {PORTA_2, PWM_4, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_2, 2, 0)}, */
|
|
{PORTA_2_MUL0, PWM_8, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_3, 0, 0)},
|
|
{PORTA_3, PWM_1, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_1, 3, 0)},
|
|
/* {PORTA_3, PWM_4, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_2, 3, 0)}, */
|
|
{PORTA_3_MUL0, PWM_8, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_3, 1, 0)},
|
|
{PORTA_5, PWM_1, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_1, 0, 0)},
|
|
{PORTA_5_MUL0, PWM_7, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_3, 0, 1)},
|
|
{PORTA_6, PWM_2, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_2, 0, 0)},
|
|
{PORTA_6_MUL0, PWM_12, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_9, 0, 0)},
|
|
{PORTA_7, PWM_0, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_1, 0, 1)},
|
|
{PORTA_7_MUL0, PWM_2, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_2, 1, 0)},
|
|
{PORTA_7_MUL1, PWM_7, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_3, 0, 1)},
|
|
{PORTA_7_MUL2, PWM_13, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_9, 0, 0)},
|
|
{PORTA_8, PWM_0, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_1, 0, 0)},
|
|
{PORTA_9, PWM_0, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_1, 1, 0)},
|
|
{PORTA_10, PWM_0, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_1, 2, 0)},
|
|
{PORTA_11, PWM_0, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_1, 3, 0)},
|
|
{PORTA_15, PWM_0, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_1, 0, 0)},
|
|
{PORTB_0, PWM_0, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_1, 1, 1)},
|
|
{PORTB_0_MUL0, PWM_2, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_2, 2, 0)},
|
|
{PORTB_0_MUL1, PWM_7, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_3, 1, 1)},
|
|
{PORTB_1, PWM_0, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_1, 2, 1)},
|
|
{PORTB_1_MUL0, PWM_2, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_2, 3, 0)},
|
|
{PORTB_1_MUL1, PWM_7, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_3, 2, 1)},
|
|
{PORTB_3, PWM_1, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_1, 1, 0)},
|
|
{PORTB_4, PWM_2, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_2, 0, 0)},
|
|
{PORTB_5, PWM_2, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_2, 1, 0)},
|
|
{PORTB_6, PWM_3, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_2, 0, 0)},
|
|
{PORTB_7, PWM_3, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_2, 1, 0)},
|
|
{PORTB_8, PWM_3, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_2, 2, 0)},
|
|
{PORTB_8_MUL0, PWM_9, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_3, 0, 0)},
|
|
{PORTB_9, PWM_3, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_2, 3, 0)},
|
|
{PORTB_9_MUL0, PWM_10, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_3, 0, 0)},
|
|
{PORTB_10, PWM_1, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_1, 2, 0)},
|
|
{PORTB_11, PWM_1, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_1, 3, 0)},
|
|
{PORTB_13, PWM_0, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_1, 0, 1)},
|
|
{PORTB_14, PWM_0, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_1, 1, 1)},
|
|
{PORTB_14_MUL0, PWM_7, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_3, 1, 1)},
|
|
{PORTB_14_MUL1, PWM_11, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_9, 0, 0)},
|
|
{PORTB_15, PWM_0, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_1, 2, 1)},
|
|
{PORTB_15_MUL0, PWM_7, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_3, 2, 1)},
|
|
{PORTB_15_MUL1, PWM_11, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_9, 1, 0)},
|
|
{PORTC_6, PWM_2, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_2, 0, 0)},
|
|
{PORTC_6_MUL0, PWM_7, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_3, 0, 0)},
|
|
{PORTC_7, PWM_2, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_2, 1, 0)},
|
|
{PORTC_7_MUL0, PWM_7, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_3, 1, 0)},
|
|
{PORTC_8, PWM_2, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_2, 2, 0)},
|
|
{PORTC_8_MUL0, PWM_7, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_3, 2, 0)},
|
|
{PORTC_9, PWM_2, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_2, 3, 0)},
|
|
{PORTC_9_MUL0, PWM_7, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_3, 3, 0)},
|
|
{PORTD_12, PWM_3, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_2, 0, 0)},
|
|
{PORTD_13, PWM_3, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_2, 1, 0)},
|
|
{PORTD_14, PWM_3, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_2, 2, 0)},
|
|
{PORTD_15, PWM_3, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_2, 3, 0)},
|
|
{PORTE_5, PWM_8, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_3, 0, 0)},
|
|
{PORTE_6, PWM_8, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_3, 1, 0)},
|
|
{PORTE_8, PWM_0, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_1, 0, 1)},
|
|
{PORTE_9, PWM_0, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_1, 0, 0)},
|
|
{PORTE_10, PWM_0, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_1, 1, 1)},
|
|
{PORTE_11, PWM_0, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_1, 1, 0)},
|
|
{PORTE_12, PWM_0, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_1, 2, 1)},
|
|
{PORTE_13, PWM_0, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_1, 2, 0)},
|
|
{PORTE_14, PWM_0, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_1, 3, 0)},
|
|
{PORTF_6, PWM_9, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_3, 0, 0)},
|
|
{PORTF_7, PWM_10, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_3, 0, 0)},
|
|
{PORTF_8, PWM_12, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_9, 0, 0)},
|
|
{PORTF_9, PWM_13, SET_PWM_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_9, 0, 0)},
|
|
|
|
{NC, NC, 0}
|
|
};
|
|
|
|
/* USART PinMap */
|
|
const PinMap PinMap_UART_TX[] = {
|
|
{PORTA_0, UART_3, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_8)},
|
|
{PORTA_2, UART_1, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_7)},
|
|
{PORTA_9, UART_0, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_7)},
|
|
{PORTB_6, UART_0, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_7)},
|
|
{PORTB_10, UART_2, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_7)},
|
|
{PORTC_6, UART_5, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_8)},
|
|
{PORTC_10, UART_2, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_7)},
|
|
{PORTC_10_MUL0, UART_3, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_8)},
|
|
{PORTC_12, UART_4, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_8)},
|
|
{PORTD_5, UART_1, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_7)},
|
|
{PORTD_8, UART_2, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_7)},
|
|
{PORTE_1, UART_7, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_8)},
|
|
{PORTE_8, UART_6, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_8)},
|
|
{PORTF_7, UART_6, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_8)},
|
|
{PORTG_14, UART_5, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_8)},
|
|
{NC, NC, 0}
|
|
};
|
|
|
|
const PinMap PinMap_UART_RX[] = {
|
|
{PORTA_1, UART_3, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_8)},
|
|
{PORTA_3, UART_1, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_7)},
|
|
{PORTA_10, UART_0, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_7)},
|
|
{PORTB_7, UART_0, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_7)},
|
|
{PORTB_11, UART_2, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_7)},
|
|
{PORTC_7, UART_5, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_8)},
|
|
{PORTC_11, UART_2, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_7)},
|
|
{PORTC_11_MUL0, UART_3, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_8)},
|
|
{PORTD_2, UART_4, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_8)},
|
|
{PORTD_6, UART_1, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_7)},
|
|
{PORTD_9, UART_2, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_7)},
|
|
{PORTE_0, UART_7, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_8)},
|
|
{PORTE_7, UART_6, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_8)},
|
|
{PORTF_6, UART_6, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_8)},
|
|
{PORTG_9, UART_5, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_8)},
|
|
{NC, NC, 0}
|
|
};
|
|
|
|
const PinMap PinMap_UART_RTS[] = {
|
|
{PORTA_1, UART_1, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_7)},
|
|
{PORTA_12, UART_0, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_7)},
|
|
{PORTB_14, UART_2, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_7)},
|
|
{PORTD_4, UART_1, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_7)},
|
|
{PORTD_12, UART_2, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_7)},
|
|
{PORTG_8, UART_5, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_8)},
|
|
{PORTG_12, UART_5, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_8)},
|
|
{NC, NC, 0}
|
|
};
|
|
|
|
const PinMap PinMap_UART_CTS[] = {
|
|
{PORTA_0, UART_1, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_7)},
|
|
{PORTA_11, UART_0, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_7)},
|
|
{PORTB_13, UART_2, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_7)},
|
|
{PORTD_3, UART_1, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_7)},
|
|
{PORTD_11, UART_2, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_7)},
|
|
{PORTG_13, UART_5, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_8)},
|
|
{PORTG_15, UART_5, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_PULLUP, PIN_AF_8)},
|
|
{NC, NC, 0}
|
|
};
|
|
|
|
/* SPI PinMap */
|
|
const PinMap PinMap_SPI_MOSI[] = {
|
|
{PORTA_7, SPI_0, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTB_5, SPI_0, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTB_5_MUL0, SPI_2, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_6)},
|
|
{PORTB_15, SPI_1, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTC_3, SPI_1, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTC_12, SPI_2, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_6)},
|
|
{PORTD_6, SPI_2, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTE_6, SPI_3, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTE_14, SPI_3, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTF_9, SPI_4, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTF_11, SPI_4, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTG_14, SPI_5, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{NC, NC, 0}
|
|
};
|
|
|
|
const PinMap PinMap_SPI_MISO[] = {
|
|
{PORTA_6, SPI_0, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTB_4, SPI_0, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTB_4_MUL0, SPI_2, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_6)},
|
|
{PORTB_14, SPI_1, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTC_2, SPI_1, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTC_11, SPI_2, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_6)},
|
|
{PORTE_5, SPI_3, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTE_13, SPI_3, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTF_8, SPI_4, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTG_12, SPI_5, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{NC, NC, 0}
|
|
};
|
|
|
|
const PinMap PinMap_SPI_SCLK[] = {
|
|
{PORTA_5, SPI_0, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTB_3, SPI_0, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTB_3_MUL0, SPI_2, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_6)},
|
|
{PORTB_10, SPI_1, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTB_13, SPI_1, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTC_10, SPI_2, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_6)},
|
|
{PORTD_3, SPI_1, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTE_2, SPI_3, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTE_12, SPI_3, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTF_7, SPI_4, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTG_13, SPI_5, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{NC, NC, 0}
|
|
};
|
|
|
|
const PinMap PinMap_SPI_SSEL[] = {
|
|
{PORTA_4, SPI_0, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5) },
|
|
{PORTA_4_MUL0, SPI_2, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_6)},
|
|
{PORTA_15, SPI_0, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTA_15_MUL0, SPI_2, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_6)},
|
|
{PORTB_9, SPI_1, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTB_12, SPI_1, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTE_4, SPI_3, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTE_11, SPI_3, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTF_6, SPI_4, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{PORTG_8, SPI_5, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_5)},
|
|
{NC, NC, 0}
|
|
};
|
|
|
|
/* CAN PinMap */
|
|
const PinMap PinMap_CAN_RD[] = {
|
|
{PORTA_11, CAN_0, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_9) },
|
|
{PORTB_5, CAN_1, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_9)},
|
|
{PORTB_8, CAN_0, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_9)},
|
|
{PORTB_12, CAN_1, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_9)},
|
|
{PORTD_0, CAN_0, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_9)},
|
|
{NC, NC, 0}
|
|
};
|
|
|
|
const PinMap PinMap_CAN_TD[] = {
|
|
{PORTA_12, CAN_0, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_9)},
|
|
{PORTB_6, CAN_1, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_9)},
|
|
{PORTB_9, CAN_0, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_9)},
|
|
{PORTB_13, CAN_1, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_9)},
|
|
{PORTD_1, CAN_0, SET_PIN_FUNCTION(PIN_MODE_AF, PIN_OTYPE_PP, PIN_PUPD_NONE, PIN_AF_9)},
|
|
{NC, NC, 0}
|
|
};
|