Mouse code for the MacroRat

Dependencies:   ITG3200 QEI

Committer:
sahilmgandhi
Date:
Sat Jun 03 00:22:44 2017 +0000
Revision:
46:b156ef445742
Parent:
18:6a4db94011d3
Final code for internal battlebot competition.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
sahilmgandhi 18:6a4db94011d3 1 /* mbed Microcontroller Library
sahilmgandhi 18:6a4db94011d3 2 * Copyright (c) 2006-2013 ARM Limited
sahilmgandhi 18:6a4db94011d3 3 *
sahilmgandhi 18:6a4db94011d3 4 * Licensed under the Apache License, Version 2.0 (the "License");
sahilmgandhi 18:6a4db94011d3 5 * you may not use this file except in compliance with the License.
sahilmgandhi 18:6a4db94011d3 6 * You may obtain a copy of the License at
sahilmgandhi 18:6a4db94011d3 7 *
sahilmgandhi 18:6a4db94011d3 8 * http://www.apache.org/licenses/LICENSE-2.0
sahilmgandhi 18:6a4db94011d3 9 *
sahilmgandhi 18:6a4db94011d3 10 * Unless required by applicable law or agreed to in writing, software
sahilmgandhi 18:6a4db94011d3 11 * distributed under the License is distributed on an "AS IS" BASIS,
sahilmgandhi 18:6a4db94011d3 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
sahilmgandhi 18:6a4db94011d3 13 * See the License for the specific language governing permissions and
sahilmgandhi 18:6a4db94011d3 14 * limitations under the License.
sahilmgandhi 18:6a4db94011d3 15 */
sahilmgandhi 18:6a4db94011d3 16 #ifndef MBED_PINNAMES_H
sahilmgandhi 18:6a4db94011d3 17 #define MBED_PINNAMES_H
sahilmgandhi 18:6a4db94011d3 18
sahilmgandhi 18:6a4db94011d3 19 #include "cmsis.h"
sahilmgandhi 18:6a4db94011d3 20
sahilmgandhi 18:6a4db94011d3 21 #ifdef __cplusplus
sahilmgandhi 18:6a4db94011d3 22 extern "C" {
sahilmgandhi 18:6a4db94011d3 23 #endif
sahilmgandhi 18:6a4db94011d3 24
sahilmgandhi 18:6a4db94011d3 25 typedef enum {
sahilmgandhi 18:6a4db94011d3 26 PIN_INPUT,
sahilmgandhi 18:6a4db94011d3 27 PIN_OUTPUT
sahilmgandhi 18:6a4db94011d3 28 } PinDirection;
sahilmgandhi 18:6a4db94011d3 29
sahilmgandhi 18:6a4db94011d3 30 #define PORT_SHIFT 12
sahilmgandhi 18:6a4db94011d3 31 #define PIN_SHIFT 8
sahilmgandhi 18:6a4db94011d3 32
sahilmgandhi 18:6a4db94011d3 33 typedef enum {
sahilmgandhi 18:6a4db94011d3 34 // LPC1114 Pin Names (PORT[15:12] + PIN[11:8] + IOCON offset[7:0])
sahilmgandhi 18:6a4db94011d3 35
sahilmgandhi 18:6a4db94011d3 36 P0_0 = (0 << PORT_SHIFT) | (0 << PIN_SHIFT) | 0x0c,
sahilmgandhi 18:6a4db94011d3 37 P0_1 = (0 << PORT_SHIFT) | (1 << PIN_SHIFT) | 0x10,
sahilmgandhi 18:6a4db94011d3 38 P0_2 = (0 << PORT_SHIFT) | (2 << PIN_SHIFT) | 0x1c,
sahilmgandhi 18:6a4db94011d3 39 P0_3 = (0 << PORT_SHIFT) | (3 << PIN_SHIFT) | 0x2c,
sahilmgandhi 18:6a4db94011d3 40 P0_4 = (0 << PORT_SHIFT) | (4 << PIN_SHIFT) | 0x30,
sahilmgandhi 18:6a4db94011d3 41 P0_5 = (0 << PORT_SHIFT) | (5 << PIN_SHIFT) | 0x34,
sahilmgandhi 18:6a4db94011d3 42 P0_6 = (0 << PORT_SHIFT) | (6 << PIN_SHIFT) | 0x4c,
sahilmgandhi 18:6a4db94011d3 43 P0_7 = (0 << PORT_SHIFT) | (7 << PIN_SHIFT) | 0x50,
sahilmgandhi 18:6a4db94011d3 44 P0_8 = (0 << PORT_SHIFT) | (8 << PIN_SHIFT) | 0x60,
sahilmgandhi 18:6a4db94011d3 45 P0_9 = (0 << PORT_SHIFT) | (9 << PIN_SHIFT) | 0x64,
sahilmgandhi 18:6a4db94011d3 46 P0_11 = (0 << PORT_SHIFT) | (11 << PIN_SHIFT) | 0x74,
sahilmgandhi 18:6a4db94011d3 47
sahilmgandhi 18:6a4db94011d3 48 P1_0 = (1 << PORT_SHIFT) | (0 << PIN_SHIFT) | 0x78,
sahilmgandhi 18:6a4db94011d3 49 P1_1 = (1 << PORT_SHIFT) | (1 << PIN_SHIFT) | 0x7c,
sahilmgandhi 18:6a4db94011d3 50 P1_2 = (1 << PORT_SHIFT) | (2 << PIN_SHIFT) | 0x80,
sahilmgandhi 18:6a4db94011d3 51 P1_4 = (1 << PORT_SHIFT) | (4 << PIN_SHIFT) | 0x94,
sahilmgandhi 18:6a4db94011d3 52 P1_5 = (1 << PORT_SHIFT) | (5 << PIN_SHIFT) | 0xa0,
sahilmgandhi 18:6a4db94011d3 53 P1_6 = (1 << PORT_SHIFT) | (6 << PIN_SHIFT) | 0xa4,
sahilmgandhi 18:6a4db94011d3 54 P1_7 = (1 << PORT_SHIFT) | (7 << PIN_SHIFT) | 0xa8,
sahilmgandhi 18:6a4db94011d3 55 P1_8 = (1 << PORT_SHIFT) | (8 << PIN_SHIFT) | 0x14,
sahilmgandhi 18:6a4db94011d3 56 P1_9 = (1 << PORT_SHIFT) | (9 << PIN_SHIFT) | 0x38,
sahilmgandhi 18:6a4db94011d3 57 P1_10 = (1 << PORT_SHIFT) | (10 << PIN_SHIFT) | 0x6c,
sahilmgandhi 18:6a4db94011d3 58 P1_11 = (1 << PORT_SHIFT) | (11 << PIN_SHIFT) | 0x98,
sahilmgandhi 18:6a4db94011d3 59
sahilmgandhi 18:6a4db94011d3 60 P2_0 = (2 << PORT_SHIFT) | (0 << PIN_SHIFT) | 0x08,
sahilmgandhi 18:6a4db94011d3 61 P2_1 = (2 << PORT_SHIFT) | (1 << PIN_SHIFT) | 0x28,
sahilmgandhi 18:6a4db94011d3 62 P2_2 = (2 << PORT_SHIFT) | (2 << PIN_SHIFT) | 0x5c,
sahilmgandhi 18:6a4db94011d3 63 P2_3 = (2 << PORT_SHIFT) | (3 << PIN_SHIFT) | 0x8c,
sahilmgandhi 18:6a4db94011d3 64 P2_4 = (2 << PORT_SHIFT) | (4 << PIN_SHIFT) | 0x40,
sahilmgandhi 18:6a4db94011d3 65 P2_5 = (2 << PORT_SHIFT) | (5 << PIN_SHIFT) | 0x44,
sahilmgandhi 18:6a4db94011d3 66 P2_6 = (2 << PORT_SHIFT) | (6 << PIN_SHIFT) | 0x00,
sahilmgandhi 18:6a4db94011d3 67 P2_7 = (2 << PORT_SHIFT) | (7 << PIN_SHIFT) | 0x20,
sahilmgandhi 18:6a4db94011d3 68 P2_8 = (2 << PORT_SHIFT) | (8 << PIN_SHIFT) | 0x24,
sahilmgandhi 18:6a4db94011d3 69 P2_9 = (2 << PORT_SHIFT) | (9 << PIN_SHIFT) | 0x54,
sahilmgandhi 18:6a4db94011d3 70 P2_10 = (2 << PORT_SHIFT) | (10 << PIN_SHIFT) | 0x58,
sahilmgandhi 18:6a4db94011d3 71 P2_11 = (2 << PORT_SHIFT) | (11 << PIN_SHIFT) | 0x70,
sahilmgandhi 18:6a4db94011d3 72
sahilmgandhi 18:6a4db94011d3 73 P3_0 = (3 << PORT_SHIFT) | (0 << PIN_SHIFT) | 0x84,
sahilmgandhi 18:6a4db94011d3 74 P3_1 = (3 << PORT_SHIFT) | (1 << PIN_SHIFT) | 0x88,
sahilmgandhi 18:6a4db94011d3 75 P3_2 = (3 << PORT_SHIFT) | (2 << PIN_SHIFT) | 0x9c,
sahilmgandhi 18:6a4db94011d3 76 P3_3 = (3 << PORT_SHIFT) | (3 << PIN_SHIFT) | 0xac,
sahilmgandhi 18:6a4db94011d3 77 P3_4 = (3 << PORT_SHIFT) | (4 << PIN_SHIFT) | 0x3c,
sahilmgandhi 18:6a4db94011d3 78 P3_5 = (3 << PORT_SHIFT) | (5 << PIN_SHIFT) | 0x48,
sahilmgandhi 18:6a4db94011d3 79
sahilmgandhi 18:6a4db94011d3 80 // mbed DIP Pin Names (CQ board)
sahilmgandhi 18:6a4db94011d3 81 // p4 = P0_0,
sahilmgandhi 18:6a4db94011d3 82 p5 = P0_9,
sahilmgandhi 18:6a4db94011d3 83 p6 = P0_8,
sahilmgandhi 18:6a4db94011d3 84 p7 = P0_6,
sahilmgandhi 18:6a4db94011d3 85 p8 = P1_5,
sahilmgandhi 18:6a4db94011d3 86 p9 = P1_7,
sahilmgandhi 18:6a4db94011d3 87 p10 = P1_6,
sahilmgandhi 18:6a4db94011d3 88 p11 = P0_7,
sahilmgandhi 18:6a4db94011d3 89 p12 = P1_0,
sahilmgandhi 18:6a4db94011d3 90 p13 = P1_1,
sahilmgandhi 18:6a4db94011d3 91 p14 = P1_2,
sahilmgandhi 18:6a4db94011d3 92 p15 = P0_11,
sahilmgandhi 18:6a4db94011d3 93 p16 = P1_0,
sahilmgandhi 18:6a4db94011d3 94 p17 = P1_1,
sahilmgandhi 18:6a4db94011d3 95 p18 = P1_2,
sahilmgandhi 18:6a4db94011d3 96 p20 = P1_4,
sahilmgandhi 18:6a4db94011d3 97 p22 = P0_2,
sahilmgandhi 18:6a4db94011d3 98 p23 = P0_11,
sahilmgandhi 18:6a4db94011d3 99 p24 = P0_2,
sahilmgandhi 18:6a4db94011d3 100 p25 = P1_8,
sahilmgandhi 18:6a4db94011d3 101 p26 = P1_9,
sahilmgandhi 18:6a4db94011d3 102 p27 = P0_4,
sahilmgandhi 18:6a4db94011d3 103 p28 = P0_5,
sahilmgandhi 18:6a4db94011d3 104 p29 = P0_3,
sahilmgandhi 18:6a4db94011d3 105 p30 = P0_1,
sahilmgandhi 18:6a4db94011d3 106
sahilmgandhi 18:6a4db94011d3 107 // Other mbed Pin Names
sahilmgandhi 18:6a4db94011d3 108 LED1 = P1_5,
sahilmgandhi 18:6a4db94011d3 109 LED2 = P0_7,
sahilmgandhi 18:6a4db94011d3 110 LED3 = P1_5,
sahilmgandhi 18:6a4db94011d3 111 LED4 = P0_7,
sahilmgandhi 18:6a4db94011d3 112
sahilmgandhi 18:6a4db94011d3 113 USBTX = P1_7,
sahilmgandhi 18:6a4db94011d3 114 USBRX = P1_6,
sahilmgandhi 18:6a4db94011d3 115
sahilmgandhi 18:6a4db94011d3 116 // mbed DIP Pin Names (LPCXpresso LPC1114)
sahilmgandhi 18:6a4db94011d3 117 // xp4 = P0_0,
sahilmgandhi 18:6a4db94011d3 118 xp5 = P0_9,
sahilmgandhi 18:6a4db94011d3 119 xp6 = P0_8,
sahilmgandhi 18:6a4db94011d3 120 xp7 = P2_11,
sahilmgandhi 18:6a4db94011d3 121 xp8 = P0_2,
sahilmgandhi 18:6a4db94011d3 122 xp9 = P1_7,
sahilmgandhi 18:6a4db94011d3 123 xp10 = P1_6,
sahilmgandhi 18:6a4db94011d3 124 xp11 = P0_7,
sahilmgandhi 18:6a4db94011d3 125 xp12 = P2_0,
sahilmgandhi 18:6a4db94011d3 126 xp13 = P2_1,
sahilmgandhi 18:6a4db94011d3 127 xp14 = P2_2,
sahilmgandhi 18:6a4db94011d3 128 xp15 = P0_11,
sahilmgandhi 18:6a4db94011d3 129 xp16 = P1_0,
sahilmgandhi 18:6a4db94011d3 130 xp17 = P1_1,
sahilmgandhi 18:6a4db94011d3 131 xp18 = P1_2,
sahilmgandhi 18:6a4db94011d3 132 xp20 = P1_4,
sahilmgandhi 18:6a4db94011d3 133 xp21 = P1_5,
sahilmgandhi 18:6a4db94011d3 134 xp22 = P1_8,
sahilmgandhi 18:6a4db94011d3 135 xp23 = P0_6,
sahilmgandhi 18:6a4db94011d3 136 xp25 = P3_0,
sahilmgandhi 18:6a4db94011d3 137 xp26 = P3_1,
sahilmgandhi 18:6a4db94011d3 138 xp27 = P3_2,
sahilmgandhi 18:6a4db94011d3 139
sahilmgandhi 18:6a4db94011d3 140 xp29 = P3_3,
sahilmgandhi 18:6a4db94011d3 141 xp30 = P2_10,
sahilmgandhi 18:6a4db94011d3 142 xp31 = P2_9,
sahilmgandhi 18:6a4db94011d3 143 xp32 = P2_8,
sahilmgandhi 18:6a4db94011d3 144 xp33 = P2_7,
sahilmgandhi 18:6a4db94011d3 145 xp34 = P2_6,
sahilmgandhi 18:6a4db94011d3 146 xp35 = P2_5,
sahilmgandhi 18:6a4db94011d3 147 xp36 = P2_4,
sahilmgandhi 18:6a4db94011d3 148 xp37 = P2_3,
sahilmgandhi 18:6a4db94011d3 149 xp38 = P1_11,
sahilmgandhi 18:6a4db94011d3 150 xp39 = P1_10,
sahilmgandhi 18:6a4db94011d3 151 xp40 = P1_9,
sahilmgandhi 18:6a4db94011d3 152 xp41 = P0_4,
sahilmgandhi 18:6a4db94011d3 153 xp42 = P0_5,
sahilmgandhi 18:6a4db94011d3 154 xp43 = P0_3,
sahilmgandhi 18:6a4db94011d3 155 xp44 = P0_1,
sahilmgandhi 18:6a4db94011d3 156
sahilmgandhi 18:6a4db94011d3 157 // Other mbed Pin Names
sahilmgandhi 18:6a4db94011d3 158 xLED1 = P0_7,
sahilmgandhi 18:6a4db94011d3 159
sahilmgandhi 18:6a4db94011d3 160 // DIP Package Names
sahilmgandhi 18:6a4db94011d3 161
sahilmgandhi 18:6a4db94011d3 162 dp1 = P0_8,
sahilmgandhi 18:6a4db94011d3 163 dp2 = P0_9,
sahilmgandhi 18:6a4db94011d3 164 dp4 = P0_11,
sahilmgandhi 18:6a4db94011d3 165 dp5 = P0_5,
sahilmgandhi 18:6a4db94011d3 166 dp6 = P0_6,
sahilmgandhi 18:6a4db94011d3 167 dp9 = P1_0,
sahilmgandhi 18:6a4db94011d3 168 dp10 = P1_1,
sahilmgandhi 18:6a4db94011d3 169 dp11 = P1_2,
sahilmgandhi 18:6a4db94011d3 170 dp13 = P1_4,
sahilmgandhi 18:6a4db94011d3 171 dp14 = P1_5,
sahilmgandhi 18:6a4db94011d3 172 dp15 = P1_6,
sahilmgandhi 18:6a4db94011d3 173 dp16 = P1_7,
sahilmgandhi 18:6a4db94011d3 174 dp17 = P1_8,
sahilmgandhi 18:6a4db94011d3 175 dp18 = P1_9,
sahilmgandhi 18:6a4db94011d3 176 // dp23 = P0_0,
sahilmgandhi 18:6a4db94011d3 177 dp24 = P0_1,
sahilmgandhi 18:6a4db94011d3 178 dp25 = P0_2,
sahilmgandhi 18:6a4db94011d3 179 dp26 = P0_3,
sahilmgandhi 18:6a4db94011d3 180 dp27 = P0_4,
sahilmgandhi 18:6a4db94011d3 181 dp28 = P0_7,
sahilmgandhi 18:6a4db94011d3 182
sahilmgandhi 18:6a4db94011d3 183 dip1 = P0_8,
sahilmgandhi 18:6a4db94011d3 184 dip2 = P0_9,
sahilmgandhi 18:6a4db94011d3 185 dip4 = P0_11,
sahilmgandhi 18:6a4db94011d3 186 dip5 = P0_5,
sahilmgandhi 18:6a4db94011d3 187 dip6 = P0_6,
sahilmgandhi 18:6a4db94011d3 188 dip9 = P1_0,
sahilmgandhi 18:6a4db94011d3 189 dip10 = P1_1,
sahilmgandhi 18:6a4db94011d3 190 dip11 = P1_2,
sahilmgandhi 18:6a4db94011d3 191 dip13 = P1_4,
sahilmgandhi 18:6a4db94011d3 192 dip14 = P1_5,
sahilmgandhi 18:6a4db94011d3 193 dip15 = P1_6,
sahilmgandhi 18:6a4db94011d3 194 dip16 = P1_7,
sahilmgandhi 18:6a4db94011d3 195 dip17 = P1_8,
sahilmgandhi 18:6a4db94011d3 196 dip18 = P1_9,
sahilmgandhi 18:6a4db94011d3 197 // dip23 = P0_0,
sahilmgandhi 18:6a4db94011d3 198 dip24 = P0_1,
sahilmgandhi 18:6a4db94011d3 199 dip25 = P0_2,
sahilmgandhi 18:6a4db94011d3 200 dip26 = P0_3,
sahilmgandhi 18:6a4db94011d3 201 dip27 = P0_4,
sahilmgandhi 18:6a4db94011d3 202 dip28 = P0_7,
sahilmgandhi 18:6a4db94011d3 203
sahilmgandhi 18:6a4db94011d3 204
sahilmgandhi 18:6a4db94011d3 205
sahilmgandhi 18:6a4db94011d3 206 // Not connected
sahilmgandhi 18:6a4db94011d3 207 NC = (int)0xFFFFFFFF,
sahilmgandhi 18:6a4db94011d3 208 } PinName;
sahilmgandhi 18:6a4db94011d3 209
sahilmgandhi 18:6a4db94011d3 210 typedef enum {
sahilmgandhi 18:6a4db94011d3 211 CHANNEL0 = WAKEUP0_IRQn,
sahilmgandhi 18:6a4db94011d3 212 CHANNEL1 = WAKEUP1_IRQn,
sahilmgandhi 18:6a4db94011d3 213 CHANNEL2 = WAKEUP2_IRQn,
sahilmgandhi 18:6a4db94011d3 214 CHANNEL3 = WAKEUP3_IRQn,
sahilmgandhi 18:6a4db94011d3 215 CHANNEL4 = WAKEUP4_IRQn,
sahilmgandhi 18:6a4db94011d3 216 CHANNEL5 = WAKEUP5_IRQn,
sahilmgandhi 18:6a4db94011d3 217 CHANNEL6 = WAKEUP6_IRQn,
sahilmgandhi 18:6a4db94011d3 218 CHANNEL7 = WAKEUP7_IRQn
sahilmgandhi 18:6a4db94011d3 219 } Channel;
sahilmgandhi 18:6a4db94011d3 220
sahilmgandhi 18:6a4db94011d3 221 typedef enum {
sahilmgandhi 18:6a4db94011d3 222 PullUp = 2,
sahilmgandhi 18:6a4db94011d3 223 PullDown = 1,
sahilmgandhi 18:6a4db94011d3 224 PullNone = 0,
sahilmgandhi 18:6a4db94011d3 225 Repeater = 3,
sahilmgandhi 18:6a4db94011d3 226 OpenDrain = 4,
sahilmgandhi 18:6a4db94011d3 227 PullDefault = PullDown
sahilmgandhi 18:6a4db94011d3 228 } PinMode;
sahilmgandhi 18:6a4db94011d3 229
sahilmgandhi 18:6a4db94011d3 230 #ifdef __cplusplus
sahilmgandhi 18:6a4db94011d3 231 }
sahilmgandhi 18:6a4db94011d3 232 #endif
sahilmgandhi 18:6a4db94011d3 233
sahilmgandhi 18:6a4db94011d3 234 #endif