mbed library sources. Supersedes mbed-src.

Dependents:   Nucleo_Hello_Encoder BLE_iBeaconScan AM1805_DEMO DISCO-F429ZI_ExportTemplate1 ... more

Committer:
AnnaBridge
Date:
Wed Feb 20 22:31:08 2019 +0000
Revision:
189:f392fc9709a3
mbed library release version 165

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AnnaBridge 189:f392fc9709a3 1 /* mbed Microcontroller Library
AnnaBridge 189:f392fc9709a3 2 * Copyright (c) 2006-2013 ARM Limited
AnnaBridge 189:f392fc9709a3 3 *
AnnaBridge 189:f392fc9709a3 4 * Licensed under the Apache License, Version 2.0 (the "License");
AnnaBridge 189:f392fc9709a3 5 * you may not use this file except in compliance with the License.
AnnaBridge 189:f392fc9709a3 6 * You may obtain a copy of the License at
AnnaBridge 189:f392fc9709a3 7 *
AnnaBridge 189:f392fc9709a3 8 * http://www.apache.org/licenses/LICENSE-2.0
AnnaBridge 189:f392fc9709a3 9 *
AnnaBridge 189:f392fc9709a3 10 * Unless required by applicable law or agreed to in writing, software
AnnaBridge 189:f392fc9709a3 11 * distributed under the License is distributed on an "AS IS" BASIS,
AnnaBridge 189:f392fc9709a3 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
AnnaBridge 189:f392fc9709a3 13 * See the License for the specific language governing permissions and
AnnaBridge 189:f392fc9709a3 14 * limitations under the License.
AnnaBridge 189:f392fc9709a3 15 */
AnnaBridge 189:f392fc9709a3 16 #ifndef MBED_PINNAMES_H
AnnaBridge 189:f392fc9709a3 17 #define MBED_PINNAMES_H
AnnaBridge 189:f392fc9709a3 18
AnnaBridge 189:f392fc9709a3 19 #include "cmsis.h"
AnnaBridge 189:f392fc9709a3 20
AnnaBridge 189:f392fc9709a3 21 #ifdef __cplusplus
AnnaBridge 189:f392fc9709a3 22 extern "C" {
AnnaBridge 189:f392fc9709a3 23 #endif
AnnaBridge 189:f392fc9709a3 24
AnnaBridge 189:f392fc9709a3 25 typedef enum {
AnnaBridge 189:f392fc9709a3 26 PIN_INPUT,
AnnaBridge 189:f392fc9709a3 27 PIN_OUTPUT
AnnaBridge 189:f392fc9709a3 28 } PinDirection;
AnnaBridge 189:f392fc9709a3 29
AnnaBridge 189:f392fc9709a3 30 #define GPIO_PORT_SHIFT 12
AnnaBridge 189:f392fc9709a3 31
AnnaBridge 189:f392fc9709a3 32 typedef enum {
AnnaBridge 189:f392fc9709a3 33 PTA0 = (0 << GPIO_PORT_SHIFT | 0 ),
AnnaBridge 189:f392fc9709a3 34 PTA1 = (0 << GPIO_PORT_SHIFT | 1 ),
AnnaBridge 189:f392fc9709a3 35 PTA2 = (0 << GPIO_PORT_SHIFT | 2 ),
AnnaBridge 189:f392fc9709a3 36 PTA3 = (0 << GPIO_PORT_SHIFT | 3 ),
AnnaBridge 189:f392fc9709a3 37 PTA4 = (0 << GPIO_PORT_SHIFT | 4 ),
AnnaBridge 189:f392fc9709a3 38 PTA5 = (0 << GPIO_PORT_SHIFT | 5 ),
AnnaBridge 189:f392fc9709a3 39 PTA6 = (0 << GPIO_PORT_SHIFT | 6 ),
AnnaBridge 189:f392fc9709a3 40 PTA7 = (0 << GPIO_PORT_SHIFT | 7 ),
AnnaBridge 189:f392fc9709a3 41 PTA8 = (0 << GPIO_PORT_SHIFT | 8 ),
AnnaBridge 189:f392fc9709a3 42 PTA9 = (0 << GPIO_PORT_SHIFT | 9 ),
AnnaBridge 189:f392fc9709a3 43 PTA10 = (0 << GPIO_PORT_SHIFT | 10 ),
AnnaBridge 189:f392fc9709a3 44 PTA11 = (0 << GPIO_PORT_SHIFT | 11 ),
AnnaBridge 189:f392fc9709a3 45 PTA12 = (0 << GPIO_PORT_SHIFT | 12),
AnnaBridge 189:f392fc9709a3 46 PTA13 = (0 << GPIO_PORT_SHIFT | 13),
AnnaBridge 189:f392fc9709a3 47 PTA14 = (0 << GPIO_PORT_SHIFT | 14),
AnnaBridge 189:f392fc9709a3 48 PTA15 = (0 << GPIO_PORT_SHIFT | 15),
AnnaBridge 189:f392fc9709a3 49 PTA16 = (0 << GPIO_PORT_SHIFT | 16),
AnnaBridge 189:f392fc9709a3 50 PTA17 = (0 << GPIO_PORT_SHIFT | 17),
AnnaBridge 189:f392fc9709a3 51 PTA18 = (0 << GPIO_PORT_SHIFT | 18),
AnnaBridge 189:f392fc9709a3 52 PTA19 = (0 << GPIO_PORT_SHIFT | 19),
AnnaBridge 189:f392fc9709a3 53 PTA20 = (0 << GPIO_PORT_SHIFT | 20),
AnnaBridge 189:f392fc9709a3 54 PTA21 = (0 << GPIO_PORT_SHIFT | 21),
AnnaBridge 189:f392fc9709a3 55 PTB0 = (1 << GPIO_PORT_SHIFT | 0 ),
AnnaBridge 189:f392fc9709a3 56 PTB1 = (1 << GPIO_PORT_SHIFT | 1 ),
AnnaBridge 189:f392fc9709a3 57 PTB2 = (1 << GPIO_PORT_SHIFT | 2 ),
AnnaBridge 189:f392fc9709a3 58 PTB3 = (1 << GPIO_PORT_SHIFT | 3 ),
AnnaBridge 189:f392fc9709a3 59 PTB8 = (1 << GPIO_PORT_SHIFT | 8 ),
AnnaBridge 189:f392fc9709a3 60 PTB9 = (1 << GPIO_PORT_SHIFT | 9 ),
AnnaBridge 189:f392fc9709a3 61 PTB10 = (1 << GPIO_PORT_SHIFT | 10),
AnnaBridge 189:f392fc9709a3 62 PTB11 = (1 << GPIO_PORT_SHIFT | 11),
AnnaBridge 189:f392fc9709a3 63 PTB16 = (1 << GPIO_PORT_SHIFT | 16),
AnnaBridge 189:f392fc9709a3 64 PTB17 = (1 << GPIO_PORT_SHIFT | 17),
AnnaBridge 189:f392fc9709a3 65 PTB18 = (1 << GPIO_PORT_SHIFT | 18),
AnnaBridge 189:f392fc9709a3 66 PTB19 = (1 << GPIO_PORT_SHIFT | 19),
AnnaBridge 189:f392fc9709a3 67 PTB20 = (1 << GPIO_PORT_SHIFT | 20),
AnnaBridge 189:f392fc9709a3 68 PTB21 = (1 << GPIO_PORT_SHIFT | 21),
AnnaBridge 189:f392fc9709a3 69 PTB22 = (1 << GPIO_PORT_SHIFT | 22),
AnnaBridge 189:f392fc9709a3 70 PTB23 = (1 << GPIO_PORT_SHIFT | 23),
AnnaBridge 189:f392fc9709a3 71 PTC0 = (2 << GPIO_PORT_SHIFT | 0 ),
AnnaBridge 189:f392fc9709a3 72 PTC1 = (2 << GPIO_PORT_SHIFT | 1 ),
AnnaBridge 189:f392fc9709a3 73 PTC2 = (2 << GPIO_PORT_SHIFT | 2 ),
AnnaBridge 189:f392fc9709a3 74 PTC3 = (2 << GPIO_PORT_SHIFT | 3 ),
AnnaBridge 189:f392fc9709a3 75 PTC4 = (2 << GPIO_PORT_SHIFT | 4 ),
AnnaBridge 189:f392fc9709a3 76 PTC5 = (2 << GPIO_PORT_SHIFT | 5 ),
AnnaBridge 189:f392fc9709a3 77 PTC6 = (2 << GPIO_PORT_SHIFT | 6 ),
AnnaBridge 189:f392fc9709a3 78 PTC7 = (2 << GPIO_PORT_SHIFT | 7 ),
AnnaBridge 189:f392fc9709a3 79 PTC8 = (2 << GPIO_PORT_SHIFT | 8 ),
AnnaBridge 189:f392fc9709a3 80 PTC9 = (2 << GPIO_PORT_SHIFT | 9 ),
AnnaBridge 189:f392fc9709a3 81 PTC10 = (2 << GPIO_PORT_SHIFT | 10),
AnnaBridge 189:f392fc9709a3 82 PTC11 = (2 << GPIO_PORT_SHIFT | 11),
AnnaBridge 189:f392fc9709a3 83 PTC12 = (2 << GPIO_PORT_SHIFT | 12),
AnnaBridge 189:f392fc9709a3 84 PTC13 = (2 << GPIO_PORT_SHIFT | 13),
AnnaBridge 189:f392fc9709a3 85 PTC14 = (2 << GPIO_PORT_SHIFT | 14),
AnnaBridge 189:f392fc9709a3 86 PTC15 = (2 << GPIO_PORT_SHIFT | 15),
AnnaBridge 189:f392fc9709a3 87 PTC16 = (2 << GPIO_PORT_SHIFT | 16),
AnnaBridge 189:f392fc9709a3 88 PTC17 = (2 << GPIO_PORT_SHIFT | 17),
AnnaBridge 189:f392fc9709a3 89 PTC18 = (2 << GPIO_PORT_SHIFT | 18),
AnnaBridge 189:f392fc9709a3 90 PTC19 = (2 << GPIO_PORT_SHIFT | 19),
AnnaBridge 189:f392fc9709a3 91 PTD0 = (3 << GPIO_PORT_SHIFT | 0 ),
AnnaBridge 189:f392fc9709a3 92 PTD1 = (3 << GPIO_PORT_SHIFT | 1 ),
AnnaBridge 189:f392fc9709a3 93 PTD2 = (3 << GPIO_PORT_SHIFT | 2 ),
AnnaBridge 189:f392fc9709a3 94 PTD3 = (3 << GPIO_PORT_SHIFT | 3 ),
AnnaBridge 189:f392fc9709a3 95 PTD4 = (3 << GPIO_PORT_SHIFT | 4 ),
AnnaBridge 189:f392fc9709a3 96 PTD5 = (3 << GPIO_PORT_SHIFT | 5 ),
AnnaBridge 189:f392fc9709a3 97 PTD6 = (3 << GPIO_PORT_SHIFT | 6 ),
AnnaBridge 189:f392fc9709a3 98 PTD7 = (3 << GPIO_PORT_SHIFT | 7 ),
AnnaBridge 189:f392fc9709a3 99 PTD8 = (3 << GPIO_PORT_SHIFT | 8 ),
AnnaBridge 189:f392fc9709a3 100 PTD9 = (3 << GPIO_PORT_SHIFT | 9 ),
AnnaBridge 189:f392fc9709a3 101 PTD11 = (3 << GPIO_PORT_SHIFT | 11),
AnnaBridge 189:f392fc9709a3 102 PTD12 = (3 << GPIO_PORT_SHIFT | 12),
AnnaBridge 189:f392fc9709a3 103 PTD13 = (3 << GPIO_PORT_SHIFT | 13),
AnnaBridge 189:f392fc9709a3 104 PTD14 = (3 << GPIO_PORT_SHIFT | 14),
AnnaBridge 189:f392fc9709a3 105 PTE0 = (4 << GPIO_PORT_SHIFT | 0 ),
AnnaBridge 189:f392fc9709a3 106 PTE1 = (4 << GPIO_PORT_SHIFT | 1 ),
AnnaBridge 189:f392fc9709a3 107 PTE2 = (4 << GPIO_PORT_SHIFT | 2 ),
AnnaBridge 189:f392fc9709a3 108 PTE3 = (4 << GPIO_PORT_SHIFT | 3 ),
AnnaBridge 189:f392fc9709a3 109 PTE4 = (4 << GPIO_PORT_SHIFT | 4 ),
AnnaBridge 189:f392fc9709a3 110 PTE5 = (4 << GPIO_PORT_SHIFT | 5 ),
AnnaBridge 189:f392fc9709a3 111 PTE6 = (4 << GPIO_PORT_SHIFT | 6 ),
AnnaBridge 189:f392fc9709a3 112 PTE7 = (4 << GPIO_PORT_SHIFT | 7 ),
AnnaBridge 189:f392fc9709a3 113 PTE8 = (4 << GPIO_PORT_SHIFT | 8 ),
AnnaBridge 189:f392fc9709a3 114 PTE9 = (4 << GPIO_PORT_SHIFT | 9 ),
AnnaBridge 189:f392fc9709a3 115 PTE10 = (4 << GPIO_PORT_SHIFT | 10),
AnnaBridge 189:f392fc9709a3 116 PTE11 = (4 << GPIO_PORT_SHIFT | 11),
AnnaBridge 189:f392fc9709a3 117 PTE12 = (4 << GPIO_PORT_SHIFT | 12),
AnnaBridge 189:f392fc9709a3 118 PTE13 = (4 << GPIO_PORT_SHIFT | 13),
AnnaBridge 189:f392fc9709a3 119 PTE16 = (4 << GPIO_PORT_SHIFT | 16),
AnnaBridge 189:f392fc9709a3 120 PTE17 = (4 << GPIO_PORT_SHIFT | 17),
AnnaBridge 189:f392fc9709a3 121 PTE18 = (4 << GPIO_PORT_SHIFT | 18),
AnnaBridge 189:f392fc9709a3 122 PTE19 = (4 << GPIO_PORT_SHIFT | 19),
AnnaBridge 189:f392fc9709a3 123
AnnaBridge 189:f392fc9709a3 124 LED_RED = PTC8,
AnnaBridge 189:f392fc9709a3 125 LED_GREEN = PTC9,
AnnaBridge 189:f392fc9709a3 126 LED_BLUE = PTC10,
AnnaBridge 189:f392fc9709a3 127
AnnaBridge 189:f392fc9709a3 128 // mbed original LED naming
AnnaBridge 189:f392fc9709a3 129 LED1 = LED_RED,
AnnaBridge 189:f392fc9709a3 130 LED2 = LED_GREEN,
AnnaBridge 189:f392fc9709a3 131 LED3 = LED_BLUE,
AnnaBridge 189:f392fc9709a3 132 LED4 = LED_RED,
AnnaBridge 189:f392fc9709a3 133
AnnaBridge 189:f392fc9709a3 134 //Push buttons
AnnaBridge 189:f392fc9709a3 135 SW2 = PTA4,
AnnaBridge 189:f392fc9709a3 136 SW3 = PTC6,
AnnaBridge 189:f392fc9709a3 137 // Standardized button names
AnnaBridge 189:f392fc9709a3 138 BUTTON1 = SW2,
AnnaBridge 189:f392fc9709a3 139 BUTTON2 = SW3,
AnnaBridge 189:f392fc9709a3 140
AnnaBridge 189:f392fc9709a3 141 // USB Pins
AnnaBridge 189:f392fc9709a3 142 USBTX = PTC15,
AnnaBridge 189:f392fc9709a3 143 USBRX = PTC14,
AnnaBridge 189:f392fc9709a3 144
AnnaBridge 189:f392fc9709a3 145 // Arduino Headers
AnnaBridge 189:f392fc9709a3 146 D0 = PTB16,
AnnaBridge 189:f392fc9709a3 147 D1 = PTB17,
AnnaBridge 189:f392fc9709a3 148 D2 = PTC12,
AnnaBridge 189:f392fc9709a3 149 D3 = PTD0,
AnnaBridge 189:f392fc9709a3 150 D4 = PTC11,
AnnaBridge 189:f392fc9709a3 151 D5 = PTC10,
AnnaBridge 189:f392fc9709a3 152 D6 = PTC8,
AnnaBridge 189:f392fc9709a3 153 D7 = PTC9,
AnnaBridge 189:f392fc9709a3 154 D8 = PTC3,
AnnaBridge 189:f392fc9709a3 155 D9 = PTC5,
AnnaBridge 189:f392fc9709a3 156 D10 = PTD4,
AnnaBridge 189:f392fc9709a3 157 D11 = PTD2,
AnnaBridge 189:f392fc9709a3 158 D12 = PTD3,
AnnaBridge 189:f392fc9709a3 159 D13 = PTD1,
AnnaBridge 189:f392fc9709a3 160 D14 = PTA1,
AnnaBridge 189:f392fc9709a3 161 D15 = PTA2,
AnnaBridge 189:f392fc9709a3 162
AnnaBridge 189:f392fc9709a3 163 I2C_SCL = D15,
AnnaBridge 189:f392fc9709a3 164 I2C_SDA = D14,
AnnaBridge 189:f392fc9709a3 165
AnnaBridge 189:f392fc9709a3 166 A0 = PTB0,
AnnaBridge 189:f392fc9709a3 167 A1 = PTB1,
AnnaBridge 189:f392fc9709a3 168 A2 = PTC1,
AnnaBridge 189:f392fc9709a3 169 A3 = PTC2,
AnnaBridge 189:f392fc9709a3 170 A4 = PTB3,
AnnaBridge 189:f392fc9709a3 171 A5 = PTB2,
AnnaBridge 189:f392fc9709a3 172
AnnaBridge 189:f392fc9709a3 173 DAC0_OUT = 0xFEFE, /* DAC does not have Pin Name in RM */
AnnaBridge 189:f392fc9709a3 174
AnnaBridge 189:f392fc9709a3 175 //SPI Pins configuration
AnnaBridge 189:f392fc9709a3 176 SPI_MOSI = PTE2,
AnnaBridge 189:f392fc9709a3 177 SPI_MISO = PTE4,
AnnaBridge 189:f392fc9709a3 178 SPI_SCK = PTE1,
AnnaBridge 189:f392fc9709a3 179 SPI_CS = PTE5,
AnnaBridge 189:f392fc9709a3 180
AnnaBridge 189:f392fc9709a3 181 /**** QSPI FLASH pins ****/
AnnaBridge 189:f392fc9709a3 182 QSPI_FLASH1_IO0 = PTE2,
AnnaBridge 189:f392fc9709a3 183 QSPI_FLASH1_IO1 = PTE4,
AnnaBridge 189:f392fc9709a3 184 QSPI_FLASH1_IO2 = PTE3,
AnnaBridge 189:f392fc9709a3 185 QSPI_FLASH1_IO3 = PTE0,
AnnaBridge 189:f392fc9709a3 186 QSPI_FLASH1_SCK = PTE1,
AnnaBridge 189:f392fc9709a3 187 QSPI_FLASH1_CSN = PTE5,
AnnaBridge 189:f392fc9709a3 188
AnnaBridge 189:f392fc9709a3 189 // Not connected
AnnaBridge 189:f392fc9709a3 190 NC = (int)0xFFFFFFFF
AnnaBridge 189:f392fc9709a3 191 } PinName;
AnnaBridge 189:f392fc9709a3 192
AnnaBridge 189:f392fc9709a3 193
AnnaBridge 189:f392fc9709a3 194 typedef enum {
AnnaBridge 189:f392fc9709a3 195 PullNone = 0,
AnnaBridge 189:f392fc9709a3 196 PullDown = 1,
AnnaBridge 189:f392fc9709a3 197 PullUp = 2,
AnnaBridge 189:f392fc9709a3 198 PullDefault = PullUp
AnnaBridge 189:f392fc9709a3 199 } PinMode;
AnnaBridge 189:f392fc9709a3 200
AnnaBridge 189:f392fc9709a3 201 #ifdef __cplusplus
AnnaBridge 189:f392fc9709a3 202 }
AnnaBridge 189:f392fc9709a3 203 #endif
AnnaBridge 189:f392fc9709a3 204
AnnaBridge 189:f392fc9709a3 205 #endif