PES4 / Mbed OS Queue_02
Committer:
demayer
Date:
Sat Mar 28 15:28:19 2020 +0000
Revision:
0:6bf0743ece18
IMU Thread with an event-queue running parallel to handle tasks like a 5 times blinking LED. Button with interrupt detected.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
demayer 0:6bf0743ece18 1
demayer 0:6bf0743ece18 2 /* mbed Microcontroller Library
demayer 0:6bf0743ece18 3 * Copyright (c) 2006-2013 ARM Limited
demayer 0:6bf0743ece18 4 *
demayer 0:6bf0743ece18 5 * Licensed under the Apache License, Version 2.0 (the "License");
demayer 0:6bf0743ece18 6 * you may not use this file except in compliance with the License.
demayer 0:6bf0743ece18 7 * You may obtain a copy of the License at
demayer 0:6bf0743ece18 8 *
demayer 0:6bf0743ece18 9 * http://www.apache.org/licenses/LICENSE-2.0
demayer 0:6bf0743ece18 10 *
demayer 0:6bf0743ece18 11 * Unless required by applicable law or agreed to in writing, software
demayer 0:6bf0743ece18 12 * distributed under the License is distributed on an "AS IS" BASIS,
demayer 0:6bf0743ece18 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
demayer 0:6bf0743ece18 14 * See the License for the specific language governing permissions and
demayer 0:6bf0743ece18 15 * limitations under the License.
demayer 0:6bf0743ece18 16 */
demayer 0:6bf0743ece18 17
demayer 0:6bf0743ece18 18 #include "PeripheralPins.h"
demayer 0:6bf0743ece18 19
demayer 0:6bf0743ece18 20 /************RTC***************/
demayer 0:6bf0743ece18 21 const PinMap PinMap_RTC[] = {
demayer 0:6bf0743ece18 22 {PTC1, RTC_CLKIN, 1},
demayer 0:6bf0743ece18 23 };
demayer 0:6bf0743ece18 24
demayer 0:6bf0743ece18 25 /************ADC***************/
demayer 0:6bf0743ece18 26 const PinMap PinMap_ADC[] = {
demayer 0:6bf0743ece18 27 {PTE20, ADC0_SE0, 0},
demayer 0:6bf0743ece18 28 {PTE22, ADC0_SE3, 0},
demayer 0:6bf0743ece18 29 {PTE21, ADC0_SE4a, 0},
demayer 0:6bf0743ece18 30 {PTE29, ADC0_SE4b, 0},
demayer 0:6bf0743ece18 31 {PTE30, ADC0_SE23, 0},
demayer 0:6bf0743ece18 32 {PTE23, ADC0_SE7a, 0},
demayer 0:6bf0743ece18 33 {PTB0, ADC0_SE8, 0},
demayer 0:6bf0743ece18 34 {PTB1, ADC0_SE9, 0},
demayer 0:6bf0743ece18 35 {PTB2, ADC0_SE12, 0},
demayer 0:6bf0743ece18 36 {PTB3, ADC0_SE13, 0},
demayer 0:6bf0743ece18 37 {PTC0, ADC0_SE14, 0},
demayer 0:6bf0743ece18 38 {PTC1, ADC0_SE15, 0},
demayer 0:6bf0743ece18 39 {PTC2, ADC0_SE11, 0},
demayer 0:6bf0743ece18 40 {PTD1, ADC0_SE5b, 0},
demayer 0:6bf0743ece18 41 {PTD5, ADC0_SE6b, 0},
demayer 0:6bf0743ece18 42 {PTD6, ADC0_SE7b, 0},
demayer 0:6bf0743ece18 43 {NC, NC, 0}
demayer 0:6bf0743ece18 44 };
demayer 0:6bf0743ece18 45
demayer 0:6bf0743ece18 46 /************DAC***************/
demayer 0:6bf0743ece18 47 const PinMap PinMap_DAC[] = {
demayer 0:6bf0743ece18 48 {PTE30, DAC_0, 0},
demayer 0:6bf0743ece18 49 {NC , NC , 0}
demayer 0:6bf0743ece18 50 };
demayer 0:6bf0743ece18 51
demayer 0:6bf0743ece18 52 /************I2C***************/
demayer 0:6bf0743ece18 53 const PinMap PinMap_I2C_SDA[] = {
demayer 0:6bf0743ece18 54 {PTE25, I2C_0, 5},
demayer 0:6bf0743ece18 55 {PTC9, I2C_0, 2},
demayer 0:6bf0743ece18 56 {PTE0, I2C_1, 6},
demayer 0:6bf0743ece18 57 {PTB1, I2C_0, 2},
demayer 0:6bf0743ece18 58 {PTB3, I2C_0, 2},
demayer 0:6bf0743ece18 59 {PTC11, I2C_1, 2},
demayer 0:6bf0743ece18 60 {PTC2, I2C_1, 2},
demayer 0:6bf0743ece18 61 {PTA4, I2C_1, 2},
demayer 0:6bf0743ece18 62 {NC , NC , 0}
demayer 0:6bf0743ece18 63 };
demayer 0:6bf0743ece18 64
demayer 0:6bf0743ece18 65 const PinMap PinMap_I2C_SCL[] = {
demayer 0:6bf0743ece18 66 {PTE24, I2C_0, 5},
demayer 0:6bf0743ece18 67 {PTC8, I2C_0, 2},
demayer 0:6bf0743ece18 68 {PTE1, I2C_1, 6},
demayer 0:6bf0743ece18 69 {PTB0, I2C_0, 2},
demayer 0:6bf0743ece18 70 {PTB2, I2C_0, 2},
demayer 0:6bf0743ece18 71 {PTC10, I2C_1, 2},
demayer 0:6bf0743ece18 72 {PTC1, I2C_1, 2},
demayer 0:6bf0743ece18 73 {NC , NC, 0}
demayer 0:6bf0743ece18 74 };
demayer 0:6bf0743ece18 75
demayer 0:6bf0743ece18 76 /************UART***************/
demayer 0:6bf0743ece18 77 const PinMap PinMap_UART_TX[] = {
demayer 0:6bf0743ece18 78 {PTC4, UART_1, 3},
demayer 0:6bf0743ece18 79 {PTA2, UART_0, 2},
demayer 0:6bf0743ece18 80 {PTD5, UART_2, 3},
demayer 0:6bf0743ece18 81 {PTD3, UART_2, 3},
demayer 0:6bf0743ece18 82 {PTD7, UART_0, 3},
demayer 0:6bf0743ece18 83 {PTE20, UART_0, 4},
demayer 0:6bf0743ece18 84 {PTE22, UART_2, 4},
demayer 0:6bf0743ece18 85 {PTE0, UART_1, 3},
demayer 0:6bf0743ece18 86 {NC , NC , 0}
demayer 0:6bf0743ece18 87 };
demayer 0:6bf0743ece18 88
demayer 0:6bf0743ece18 89 const PinMap PinMap_UART_RX[] = {
demayer 0:6bf0743ece18 90 {PTC3, UART_1, 3},
demayer 0:6bf0743ece18 91 {PTA1, UART_0, 2},
demayer 0:6bf0743ece18 92 {PTD4, UART_2, 3},
demayer 0:6bf0743ece18 93 {PTD2, UART_2, 3},
demayer 0:6bf0743ece18 94 {PTD6, UART_0, 3},
demayer 0:6bf0743ece18 95 {PTE23, UART_2, 4},
demayer 0:6bf0743ece18 96 {PTE21, UART_0, 4},
demayer 0:6bf0743ece18 97 {PTE1, UART_1, 3},
demayer 0:6bf0743ece18 98 {NC , NC , 0}
demayer 0:6bf0743ece18 99 };
demayer 0:6bf0743ece18 100
demayer 0:6bf0743ece18 101 /************SPI***************/
demayer 0:6bf0743ece18 102 const PinMap PinMap_SPI_SCLK[] = {
demayer 0:6bf0743ece18 103 {PTA15, SPI_0, 2},
demayer 0:6bf0743ece18 104 {PTB11, SPI_1, 2},
demayer 0:6bf0743ece18 105 {PTC5, SPI_0, 2},
demayer 0:6bf0743ece18 106 {PTD1, SPI_0, 2},
demayer 0:6bf0743ece18 107 {PTD5, SPI_1, 2},
demayer 0:6bf0743ece18 108 {PTE2, SPI_1, 2},
demayer 0:6bf0743ece18 109 {NC , NC , 0}
demayer 0:6bf0743ece18 110 };
demayer 0:6bf0743ece18 111
demayer 0:6bf0743ece18 112 const PinMap PinMap_SPI_MOSI[] = {
demayer 0:6bf0743ece18 113 {PTA16, SPI_0, 2},
demayer 0:6bf0743ece18 114 {PTA17, SPI_0, 5},
demayer 0:6bf0743ece18 115 {PTB16, SPI_1, 2},
demayer 0:6bf0743ece18 116 {PTB17, SPI_1, 5},
demayer 0:6bf0743ece18 117 {PTC6, SPI_0, 2},
demayer 0:6bf0743ece18 118 {PTC7, SPI_0, 5},
demayer 0:6bf0743ece18 119 {PTD2, SPI_0, 2},
demayer 0:6bf0743ece18 120 {PTD3, SPI_0, 5},
demayer 0:6bf0743ece18 121 {PTD6, SPI_1, 2},
demayer 0:6bf0743ece18 122 {PTD7, SPI_1, 5},
demayer 0:6bf0743ece18 123 {PTE1, SPI_1, 2},
demayer 0:6bf0743ece18 124 {PTE3, SPI_1, 5},
demayer 0:6bf0743ece18 125 {NC , NC , 0}
demayer 0:6bf0743ece18 126 };
demayer 0:6bf0743ece18 127
demayer 0:6bf0743ece18 128 const PinMap PinMap_SPI_MISO[] = {
demayer 0:6bf0743ece18 129 {PTA16, SPI_0, 5},
demayer 0:6bf0743ece18 130 {PTA17, SPI_0, 2},
demayer 0:6bf0743ece18 131 {PTB16, SPI_1, 5},
demayer 0:6bf0743ece18 132 {PTB17, SPI_1, 2},
demayer 0:6bf0743ece18 133 {PTC6, SPI_0, 5},
demayer 0:6bf0743ece18 134 {PTC7, SPI_0, 2},
demayer 0:6bf0743ece18 135 {PTD2, SPI_0, 5},
demayer 0:6bf0743ece18 136 {PTD3, SPI_0, 2},
demayer 0:6bf0743ece18 137 {PTD6, SPI_1, 5},
demayer 0:6bf0743ece18 138 {PTD7, SPI_1, 2},
demayer 0:6bf0743ece18 139 {PTE1, SPI_1, 5},
demayer 0:6bf0743ece18 140 {PTE3, SPI_1, 2},
demayer 0:6bf0743ece18 141 {NC , NC , 0}
demayer 0:6bf0743ece18 142 };
demayer 0:6bf0743ece18 143
demayer 0:6bf0743ece18 144 const PinMap PinMap_SPI_SSEL[] = {
demayer 0:6bf0743ece18 145 {PTA14, SPI_0, 2},
demayer 0:6bf0743ece18 146 {PTB10, SPI_1, 2},
demayer 0:6bf0743ece18 147 {PTC4, SPI_0, 2},
demayer 0:6bf0743ece18 148 {PTD0, SPI_0, 2},
demayer 0:6bf0743ece18 149 {PTD4, SPI_1, 2},
demayer 0:6bf0743ece18 150 {PTE4, SPI_1, 2},
demayer 0:6bf0743ece18 151 {NC , NC , 0}
demayer 0:6bf0743ece18 152 };
demayer 0:6bf0743ece18 153
demayer 0:6bf0743ece18 154 /************PWM***************/
demayer 0:6bf0743ece18 155 const PinMap PinMap_PWM[] = {
demayer 0:6bf0743ece18 156 {PTA0, PWM_6, 3}, // PTA0 , TPM0 CH5
demayer 0:6bf0743ece18 157 {PTA1, PWM_9 , 3}, // PTA1 , TPM2 CH0
demayer 0:6bf0743ece18 158 {PTA2, PWM_10, 3}, // PTA2 , TPM2 CH1
demayer 0:6bf0743ece18 159 {PTA3, PWM_1, 3}, // PTA3 , TPM0 CH0
demayer 0:6bf0743ece18 160 {PTA4, PWM_2 , 3}, // PTA4 , TPM0 CH1
demayer 0:6bf0743ece18 161 {PTA5, PWM_3 , 3}, // PTA5 , TPM0 CH2
demayer 0:6bf0743ece18 162 {PTA12, PWM_7 , 3}, // PTA12, TPM1 CH0
demayer 0:6bf0743ece18 163 {PTA13, PWM_8 , 3}, // PTA13, TPM1 CH1
demayer 0:6bf0743ece18 164
demayer 0:6bf0743ece18 165 {PTB0, PWM_7, 3}, // PTB0 , TPM1 CH0
demayer 0:6bf0743ece18 166 {PTB1, PWM_8, 3}, // PTB1 , TPM1 CH1
demayer 0:6bf0743ece18 167 {PTB2, PWM_9, 3}, // PTB2 , TPM2 CH0
demayer 0:6bf0743ece18 168 {PTB3, PWM_10, 3}, // PTB3 , TPM2 CH1
demayer 0:6bf0743ece18 169 {PTB18, PWM_9, 3}, // PTB18, TPM2 CH0
demayer 0:6bf0743ece18 170 {PTB19, PWM_10, 3}, // PTB18, TPM2 CH1
demayer 0:6bf0743ece18 171
demayer 0:6bf0743ece18 172 {PTC1, PWM_1, 4}, // PTC1 , TPM0 CH0
demayer 0:6bf0743ece18 173 {PTC2, PWM_2, 4}, // PTC2 , TPM0 CH1
demayer 0:6bf0743ece18 174 {PTC3, PWM_3, 4}, // PTC3 , TPM0 CH2
demayer 0:6bf0743ece18 175 {PTC4, PWM_4, 4}, // PTC4 , TPM0 CH3
demayer 0:6bf0743ece18 176 {PTC8, PWM_5 , 3}, // PTC8 , TPM0 CH4
demayer 0:6bf0743ece18 177 {PTC9, PWM_6 , 3}, // PTC9 , TPM0 CH5
demayer 0:6bf0743ece18 178
demayer 0:6bf0743ece18 179 {PTD0, PWM_1 , 4}, // PTD0 , TPM0 CH0
demayer 0:6bf0743ece18 180 {PTD1, PWM_2 , 4}, // PTD0 , TPM0 CH1
demayer 0:6bf0743ece18 181 {PTD2, PWM_3 , 4}, // PTD2 , TPM0 CH2
demayer 0:6bf0743ece18 182 {PTD3, PWM_4 , 4}, // PTD3 , TPM0 CH3
demayer 0:6bf0743ece18 183 {PTD4, PWM_5 , 4}, // PTD4 , TPM0 CH4
demayer 0:6bf0743ece18 184 {PTD5, PWM_6 , 4}, // PTD5 , TPM0 CH5
demayer 0:6bf0743ece18 185
demayer 0:6bf0743ece18 186 {PTE20, PWM_7, 3}, // PTE20, TPM1 CH0
demayer 0:6bf0743ece18 187 {PTE21, PWM_8, 3}, // PTE21, TPM1 CH1
demayer 0:6bf0743ece18 188 {PTE22, PWM_9, 3}, // PTE22, TPM2 CH0
demayer 0:6bf0743ece18 189 {PTE23, PWM_10, 3}, // PTE23, TPM2 CH1
demayer 0:6bf0743ece18 190 {PTE24, PWM_1, 3}, // PTE24, TPM0 CH0
demayer 0:6bf0743ece18 191 {PTE25, PWM_2, 3}, // PTE25, TPM0 CH1
demayer 0:6bf0743ece18 192 {PTE26, PWM_6, 3}, // PTE26, TPM0 CH5
demayer 0:6bf0743ece18 193 {PTE29, PWM_3, 3}, // PTE29, TPM0 CH2
demayer 0:6bf0743ece18 194 {PTE30, PWM_4, 3}, // PTE30, TPM0 CH3
demayer 0:6bf0743ece18 195 {PTE31, PWM_5, 3}, // PTE31, TPM0 CH4
demayer 0:6bf0743ece18 196 {NC , NC, 0}
demayer 0:6bf0743ece18 197 };