This is a part of the Kinetiszer project.
board.h@0:e0042c0c4d2d, 2014-10-28 (annotated)
- Committer:
- Clemo
- Date:
- Tue Oct 28 12:20:47 2014 +0000
- Revision:
- 0:e0042c0c4d2d
Error & warning free.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Clemo | 0:e0042c0c4d2d | 1 | /* |
Clemo | 0:e0042c0c4d2d | 2 | * @brief NXP LPCXpresso 1347 board file |
Clemo | 0:e0042c0c4d2d | 3 | * |
Clemo | 0:e0042c0c4d2d | 4 | * @note |
Clemo | 0:e0042c0c4d2d | 5 | * Copyright(C) NXP Semiconductors, 2013 |
Clemo | 0:e0042c0c4d2d | 6 | * All rights reserved. |
Clemo | 0:e0042c0c4d2d | 7 | * |
Clemo | 0:e0042c0c4d2d | 8 | * @par |
Clemo | 0:e0042c0c4d2d | 9 | * Software that is described herein is for illustrative purposes only |
Clemo | 0:e0042c0c4d2d | 10 | * which provides customers with programming information regarding the |
Clemo | 0:e0042c0c4d2d | 11 | * LPC products. This software is supplied "AS IS" without any warranties of |
Clemo | 0:e0042c0c4d2d | 12 | * any kind, and NXP Semiconductors and its licensor disclaim any and |
Clemo | 0:e0042c0c4d2d | 13 | * all warranties, express or implied, including all implied warranties of |
Clemo | 0:e0042c0c4d2d | 14 | * merchantability, fitness for a particular purpose and non-infringement of |
Clemo | 0:e0042c0c4d2d | 15 | * intellectual property rights. NXP Semiconductors assumes no responsibility |
Clemo | 0:e0042c0c4d2d | 16 | * or liability for the use of the software, conveys no license or rights under any |
Clemo | 0:e0042c0c4d2d | 17 | * patent, copyright, mask work right, or any other intellectual property rights in |
Clemo | 0:e0042c0c4d2d | 18 | * or to any products. NXP Semiconductors reserves the right to make changes |
Clemo | 0:e0042c0c4d2d | 19 | * in the software without notification. NXP Semiconductors also makes no |
Clemo | 0:e0042c0c4d2d | 20 | * representation or warranty that such application will be suitable for the |
Clemo | 0:e0042c0c4d2d | 21 | * specified use without further testing or modification. |
Clemo | 0:e0042c0c4d2d | 22 | * |
Clemo | 0:e0042c0c4d2d | 23 | * @par |
Clemo | 0:e0042c0c4d2d | 24 | * Permission to use, copy, modify, and distribute this software and its |
Clemo | 0:e0042c0c4d2d | 25 | * documentation is hereby granted, under NXP Semiconductors' and its |
Clemo | 0:e0042c0c4d2d | 26 | * licensor's relevant copyrights in the software, without fee, provided that it |
Clemo | 0:e0042c0c4d2d | 27 | * is used in conjunction with NXP Semiconductors microcontrollers. This |
Clemo | 0:e0042c0c4d2d | 28 | * copyright, permission, and disclaimer notice must appear in all copies of |
Clemo | 0:e0042c0c4d2d | 29 | * this code. |
Clemo | 0:e0042c0c4d2d | 30 | */ |
Clemo | 0:e0042c0c4d2d | 31 | |
Clemo | 0:e0042c0c4d2d | 32 | #ifndef __BOARD_H_ |
Clemo | 0:e0042c0c4d2d | 33 | #define __BOARD_H_ |
Clemo | 0:e0042c0c4d2d | 34 | |
Clemo | 0:e0042c0c4d2d | 35 | #include <stdint.h> |
Clemo | 0:e0042c0c4d2d | 36 | #include <stdbool.h> |
Clemo | 0:e0042c0c4d2d | 37 | |
Clemo | 0:e0042c0c4d2d | 38 | #define STATIC static |
Clemo | 0:e0042c0c4d2d | 39 | #define IOCON_FUNC0 (0) |
Clemo | 0:e0042c0c4d2d | 40 | #define IOCON_FUNC1 (1) |
Clemo | 0:e0042c0c4d2d | 41 | #define IOCON_FUNC2 (2) |
Clemo | 0:e0042c0c4d2d | 42 | #define IOCON_FUNC3 (3) |
Clemo | 0:e0042c0c4d2d | 43 | #define IOCON_RESERVED_BIT_7 (0) |
Clemo | 0:e0042c0c4d2d | 44 | #define IOCON_SFI2C_EN (1) |
Clemo | 0:e0042c0c4d2d | 45 | #define IOCON_DIGMODE_EN (2) |
Clemo | 0:e0042c0c4d2d | 46 | #define IOCON_INV_EN (3) |
Clemo | 0:e0042c0c4d2d | 47 | #define IOCON_MODE_PULLUP (4) |
Clemo | 0:e0042c0c4d2d | 48 | |
Clemo | 0:e0042c0c4d2d | 49 | //#include "chip.h" |
Clemo | 0:e0042c0c4d2d | 50 | /* board_api.h is included at the bottom of this file after DEBUG setup */ |
Clemo | 0:e0042c0c4d2d | 51 | |
Clemo | 0:e0042c0c4d2d | 52 | #ifdef __cplusplus |
Clemo | 0:e0042c0c4d2d | 53 | extern "C" { |
Clemo | 0:e0042c0c4d2d | 54 | #endif |
Clemo | 0:e0042c0c4d2d | 55 | |
Clemo | 0:e0042c0c4d2d | 56 | /** @defgroup BOARD_NXP_LPCXPRESSO_1347 NXP LPC1347 Xpresso board support functions |
Clemo | 0:e0042c0c4d2d | 57 | * @ingroup LPCOPEN_13XX_BOARD_LPCXPRESSO_1347 |
Clemo | 0:e0042c0c4d2d | 58 | * @{ |
Clemo | 0:e0042c0c4d2d | 59 | */ |
Clemo | 0:e0042c0c4d2d | 60 | |
Clemo | 0:e0042c0c4d2d | 61 | /** @defgroup BOARD_NXP_LPCXPRESSO_1347_OPTIONS BOARD: NXP LPC1347 Xpresso board build options |
Clemo | 0:e0042c0c4d2d | 62 | * This board has options that configure its operation at build-time.<br> |
Clemo | 0:e0042c0c4d2d | 63 | * @{ |
Clemo | 0:e0042c0c4d2d | 64 | */ |
Clemo | 0:e0042c0c4d2d | 65 | |
Clemo | 0:e0042c0c4d2d | 66 | /** Define DEBUG_ENABLE to enable IO via the DEBUGSTR, DEBUGOUT, and |
Clemo | 0:e0042c0c4d2d | 67 | DEBUGIN macros. If not defined, DEBUG* functions will be optimized |
Clemo | 0:e0042c0c4d2d | 68 | out of the code at build time. |
Clemo | 0:e0042c0c4d2d | 69 | */ |
Clemo | 0:e0042c0c4d2d | 70 | //#define DEBUG_ENABLE |
Clemo | 0:e0042c0c4d2d | 71 | |
Clemo | 0:e0042c0c4d2d | 72 | /** Define DEBUG_SEMIHOSTING along with DEBUG_ENABLE to enable IO support |
Clemo | 0:e0042c0c4d2d | 73 | via semihosting. You may need to use a C library that supports |
Clemo | 0:e0042c0c4d2d | 74 | semihosting with this option. |
Clemo | 0:e0042c0c4d2d | 75 | */ |
Clemo | 0:e0042c0c4d2d | 76 | //#define DEBUG_SEMIHOSTING |
Clemo | 0:e0042c0c4d2d | 77 | |
Clemo | 0:e0042c0c4d2d | 78 | /** Board UART used for debug output and input using the DEBUG* macros. This |
Clemo | 0:e0042c0c4d2d | 79 | is also the port used for Board_UARTPutChar, Board_UARTGetChar, and |
Clemo | 0:e0042c0c4d2d | 80 | Board_UARTPutSTR functions. |
Clemo | 0:e0042c0c4d2d | 81 | */ |
Clemo | 0:e0042c0c4d2d | 82 | #define DEBUG_UART LPC_USART |
Clemo | 0:e0042c0c4d2d | 83 | |
Clemo | 0:e0042c0c4d2d | 84 | /** |
Clemo | 0:e0042c0c4d2d | 85 | * @} |
Clemo | 0:e0042c0c4d2d | 86 | */ |
Clemo | 0:e0042c0c4d2d | 87 | |
Clemo | 0:e0042c0c4d2d | 88 | /* Board name */ |
Clemo | 0:e0042c0c4d2d | 89 | #define BOARD_ELEKTOR_140182 |
Clemo | 0:e0042c0c4d2d | 90 | |
Clemo | 0:e0042c0c4d2d | 91 | #define OUTPUT true |
Clemo | 0:e0042c0c4d2d | 92 | #define INPUT false |
Clemo | 0:e0042c0c4d2d | 93 | |
Clemo | 0:e0042c0c4d2d | 94 | // LED(s). |
Clemo | 0:e0042c0c4d2d | 95 | #define BOARD_LED1_GREEN_PORT (0) |
Clemo | 0:e0042c0c4d2d | 96 | #define BOARD_LED1_GREEN_PIN (18) |
Clemo | 0:e0042c0c4d2d | 97 | #define BOARD_LED1_RED_PORT (0) |
Clemo | 0:e0042c0c4d2d | 98 | #define BOARD_LED1_RED_PIN (9) |
Clemo | 0:e0042c0c4d2d | 99 | #define BOARD_LED2_GREEN_PORT (0) |
Clemo | 0:e0042c0c4d2d | 100 | #define BOARD_LED2_GREEN_PIN (10) |
Clemo | 0:e0042c0c4d2d | 101 | #define BOARD_LED2_RED_PORT (0) |
Clemo | 0:e0042c0c4d2d | 102 | #define BOARD_LED2_RED_PIN (8) |
Clemo | 0:e0042c0c4d2d | 103 | #define BOARD_LED3_PORT (1) |
Clemo | 0:e0042c0c4d2d | 104 | #define BOARD_LED3_PIN (31) |
Clemo | 0:e0042c0c4d2d | 105 | #define BOARD_LED1_GREEN (0) |
Clemo | 0:e0042c0c4d2d | 106 | #define BOARD_LED1_RED (1) |
Clemo | 0:e0042c0c4d2d | 107 | #define BOARD_LED2_GREEN (2) |
Clemo | 0:e0042c0c4d2d | 108 | #define BOARD_LED2_RED (3) |
Clemo | 0:e0042c0c4d2d | 109 | #define BOARD_LED3 (4) |
Clemo | 0:e0042c0c4d2d | 110 | #define BOARD_LED_OFF (true) |
Clemo | 0:e0042c0c4d2d | 111 | #define BOARD_LED_ON (false) |
Clemo | 0:e0042c0c4d2d | 112 | // The other LED function prototypes are in board_api.h |
Clemo | 0:e0042c0c4d2d | 113 | void Board_LED_Init(void); |
Clemo | 0:e0042c0c4d2d | 114 | |
Clemo | 0:e0042c0c4d2d | 115 | |
Clemo | 0:e0042c0c4d2d | 116 | // LCD (2x16) with I2C interface, based on ST7032i chip. |
Clemo | 0:e0042c0c4d2d | 117 | #define BOARD_LCD_LINES (2) |
Clemo | 0:e0042c0c4d2d | 118 | #define BOARD_LCD_CHARS_PER_LINE (16) |
Clemo | 0:e0042c0c4d2d | 119 | #define BOARD_LCD_RESET_PORT (1) |
Clemo | 0:e0042c0c4d2d | 120 | #define BOARD_LCD_RESET_PIN (15) |
Clemo | 0:e0042c0c4d2d | 121 | #define BOARD_LCD_RESET_ON (0) |
Clemo | 0:e0042c0c4d2d | 122 | #define BOARD_LCD_RESET_OFF (1) |
Clemo | 0:e0042c0c4d2d | 123 | #define BOARD_LCD_BACKLIGHT_PORT (1) |
Clemo | 0:e0042c0c4d2d | 124 | #define BOARD_LCD_BACKLIGHT_PIN (16) |
Clemo | 0:e0042c0c4d2d | 125 | #define BOARD_LCD_BACKLIGHT_ON (0) |
Clemo | 0:e0042c0c4d2d | 126 | #define BOARD_LCD_BACKLIGHT_OFF (1) |
Clemo | 0:e0042c0c4d2d | 127 | void Board_LCD_Init(void); |
Clemo | 0:e0042c0c4d2d | 128 | void Board_LCD_ResetAssert(void); |
Clemo | 0:e0042c0c4d2d | 129 | void Board_LCD_ResetDeassert(void); |
Clemo | 0:e0042c0c4d2d | 130 | void Board_LCD_SetBacklight(uint8_t Intensity); |
Clemo | 0:e0042c0c4d2d | 131 | |
Clemo | 0:e0042c0c4d2d | 132 | |
Clemo | 0:e0042c0c4d2d | 133 | // Keyboard. |
Clemo | 0:e0042c0c4d2d | 134 | #define BOARD_KEYBOARD_R0_PORT (1) |
Clemo | 0:e0042c0c4d2d | 135 | #define BOARD_KEYBOARD_R0_PIN (23) |
Clemo | 0:e0042c0c4d2d | 136 | #define BOARD_KEYBOARD_R1_PORT (1) |
Clemo | 0:e0042c0c4d2d | 137 | #define BOARD_KEYBOARD_R1_PIN (24) |
Clemo | 0:e0042c0c4d2d | 138 | #define BOARD_KEYBOARD_R2_PORT (1) |
Clemo | 0:e0042c0c4d2d | 139 | #define BOARD_KEYBOARD_R2_PIN (25) |
Clemo | 0:e0042c0c4d2d | 140 | #define BOARD_KEYBOARD_C0_PORT (1) |
Clemo | 0:e0042c0c4d2d | 141 | #define BOARD_KEYBOARD_C0_PIN (26) |
Clemo | 0:e0042c0c4d2d | 142 | #define BOARD_KEYBOARD_C1_PORT (1) |
Clemo | 0:e0042c0c4d2d | 143 | #define BOARD_KEYBOARD_C1_PIN (28) |
Clemo | 0:e0042c0c4d2d | 144 | #define BOARD_KEYBOARD_C2_PORT (1) |
Clemo | 0:e0042c0c4d2d | 145 | #define BOARD_KEYBOARD_C2_PIN (29) |
Clemo | 0:e0042c0c4d2d | 146 | |
Clemo | 0:e0042c0c4d2d | 147 | #define BOARD_KEYBOARD_ISP_PORT (0) |
Clemo | 0:e0042c0c4d2d | 148 | #define BOARD_KEYBOARD_ISP_PIN (1) |
Clemo | 0:e0042c0c4d2d | 149 | |
Clemo | 0:e0042c0c4d2d | 150 | #define BOARD_KEYBOARD_RESET_PORT (0) |
Clemo | 0:e0042c0c4d2d | 151 | #define BOARD_KEYBOARD_RESET_PIN (0) |
Clemo | 0:e0042c0c4d2d | 152 | // Uncomment if you don't need a reset pin in your system. |
Clemo | 0:e0042c0c4d2d | 153 | //#define RESET_IS_GPIO |
Clemo | 0:e0042c0c4d2d | 154 | |
Clemo | 0:e0042c0c4d2d | 155 | // --------------------------------------------------- |
Clemo | 0:e0042c0c4d2d | 156 | // Keys. |
Clemo | 0:e0042c0c4d2d | 157 | // --------------------------------------------------- |
Clemo | 0:e0042c0c4d2d | 158 | #define BOARD_KEYBOARD_S00 (0) /* S1 push */ |
Clemo | 0:e0042c0c4d2d | 159 | #define BOARD_KEYBOARD_S01 (1) /* S2 push */ |
Clemo | 0:e0042c0c4d2d | 160 | #define BOARD_KEYBOARD_S02 (2) /* S3 push */ |
Clemo | 0:e0042c0c4d2d | 161 | #define BOARD_KEYBOARD_S10 (3) /* S4 push */ |
Clemo | 0:e0042c0c4d2d | 162 | #define BOARD_KEYBOARD_S11 (4) /* S5 push */ |
Clemo | 0:e0042c0c4d2d | 163 | #define BOARD_KEYBOARD_S12 (5) /* S6 push */ |
Clemo | 0:e0042c0c4d2d | 164 | #define BOARD_KEYBOARD_S20 (6) /* S7 push */ |
Clemo | 0:e0042c0c4d2d | 165 | #define BOARD_KEYBOARD_S21 (7) /* S8 push */ |
Clemo | 0:e0042c0c4d2d | 166 | #define BOARD_KEYBOARD_S22 (8) /* S11 (spare) */ |
Clemo | 0:e0042c0c4d2d | 167 | #define BOARD_KEYBOARD_ISP (9) /* S9 */ |
Clemo | 0:e0042c0c4d2d | 168 | #if defined RESET_IS_GPIO |
Clemo | 0:e0042c0c4d2d | 169 | #define BOARD_KEYBOARD_RESET (10) /* S10 */ |
Clemo | 0:e0042c0c4d2d | 170 | #endif |
Clemo | 0:e0042c0c4d2d | 171 | // Other non-matrix keys go here. |
Clemo | 0:e0042c0c4d2d | 172 | |
Clemo | 0:e0042c0c4d2d | 173 | // -------------------------------------------------------------- |
Clemo | 0:e0042c0c4d2d | 174 | // Rotary encoders. |
Clemo | 0:e0042c0c4d2d | 175 | // -------------------------------------------------------------- |
Clemo | 0:e0042c0c4d2d | 176 | #define BOARD_KEYBOARD_RE0 /* S1 */ |
Clemo | 0:e0042c0c4d2d | 177 | #define BOARD_KEYBOARD_RE1 /* S2 */ |
Clemo | 0:e0042c0c4d2d | 178 | #define BOARD_KEYBOARD_RE2 /* S3 */ |
Clemo | 0:e0042c0c4d2d | 179 | #define BOARD_KEYBOARD_RE3 /* S4 */ |
Clemo | 0:e0042c0c4d2d | 180 | #define BOARD_KEYBOARD_RE4 /* S5 */ |
Clemo | 0:e0042c0c4d2d | 181 | #define BOARD_KEYBOARD_RE5 /* S6 */ |
Clemo | 0:e0042c0c4d2d | 182 | #define BOARD_KEYBOARD_RE6 /* S7 */ |
Clemo | 0:e0042c0c4d2d | 183 | #define BOARD_KEYBOARD_RE7 /* S8 */ |
Clemo | 0:e0042c0c4d2d | 184 | |
Clemo | 0:e0042c0c4d2d | 185 | #if defined(BOARD_KEYBOARD_RE0) /* S1 */ |
Clemo | 0:e0042c0c4d2d | 186 | #define BOARD_KEYBOARD_RE0_A_PORT (1) |
Clemo | 0:e0042c0c4d2d | 187 | #define BOARD_KEYBOARD_RE0_A_PIN (19) |
Clemo | 0:e0042c0c4d2d | 188 | #define BOARD_KEYBOARD_RE0_B_PORT (1) |
Clemo | 0:e0042c0c4d2d | 189 | #define BOARD_KEYBOARD_RE0_B_PIN (20) |
Clemo | 0:e0042c0c4d2d | 190 | #endif |
Clemo | 0:e0042c0c4d2d | 191 | |
Clemo | 0:e0042c0c4d2d | 192 | #if defined(BOARD_KEYBOARD_RE1) /* S2 */ |
Clemo | 0:e0042c0c4d2d | 193 | #define BOARD_KEYBOARD_RE1_A_PORT (1) |
Clemo | 0:e0042c0c4d2d | 194 | #define BOARD_KEYBOARD_RE1_A_PIN (21) |
Clemo | 0:e0042c0c4d2d | 195 | #define BOARD_KEYBOARD_RE1_B_PORT (1) |
Clemo | 0:e0042c0c4d2d | 196 | #define BOARD_KEYBOARD_RE1_B_PIN (22) |
Clemo | 0:e0042c0c4d2d | 197 | #endif |
Clemo | 0:e0042c0c4d2d | 198 | |
Clemo | 0:e0042c0c4d2d | 199 | #if defined(BOARD_KEYBOARD_RE2) /* S3 */ |
Clemo | 0:e0042c0c4d2d | 200 | #define BOARD_KEYBOARD_RE2_A_PORT (0) |
Clemo | 0:e0042c0c4d2d | 201 | #define BOARD_KEYBOARD_RE2_A_PIN (2) |
Clemo | 0:e0042c0c4d2d | 202 | #define BOARD_KEYBOARD_RE2_B_PORT (0) |
Clemo | 0:e0042c0c4d2d | 203 | #define BOARD_KEYBOARD_RE2_B_PIN (11) |
Clemo | 0:e0042c0c4d2d | 204 | #endif |
Clemo | 0:e0042c0c4d2d | 205 | |
Clemo | 0:e0042c0c4d2d | 206 | #if defined(BOARD_KEYBOARD_RE3) /* S4 */ |
Clemo | 0:e0042c0c4d2d | 207 | #define BOARD_KEYBOARD_RE3_A_PORT (0) |
Clemo | 0:e0042c0c4d2d | 208 | #define BOARD_KEYBOARD_RE3_A_PIN (7) |
Clemo | 0:e0042c0c4d2d | 209 | #define BOARD_KEYBOARD_RE3_B_PORT (0) |
Clemo | 0:e0042c0c4d2d | 210 | #define BOARD_KEYBOARD_RE3_B_PIN (12) |
Clemo | 0:e0042c0c4d2d | 211 | #endif |
Clemo | 0:e0042c0c4d2d | 212 | |
Clemo | 0:e0042c0c4d2d | 213 | #if defined(BOARD_KEYBOARD_RE4) /* S5 */ |
Clemo | 0:e0042c0c4d2d | 214 | #define BOARD_KEYBOARD_RE4_A_PORT (0) |
Clemo | 0:e0042c0c4d2d | 215 | #define BOARD_KEYBOARD_RE4_A_PIN (17) |
Clemo | 0:e0042c0c4d2d | 216 | #define BOARD_KEYBOARD_RE4_B_PORT (0) |
Clemo | 0:e0042c0c4d2d | 217 | #define BOARD_KEYBOARD_RE4_B_PIN (14) |
Clemo | 0:e0042c0c4d2d | 218 | #endif |
Clemo | 0:e0042c0c4d2d | 219 | |
Clemo | 0:e0042c0c4d2d | 220 | #if defined(BOARD_KEYBOARD_RE5) /* S6 */ |
Clemo | 0:e0042c0c4d2d | 221 | #define BOARD_KEYBOARD_RE5_A_PORT (0) |
Clemo | 0:e0042c0c4d2d | 222 | #define BOARD_KEYBOARD_RE5_A_PIN (19) |
Clemo | 0:e0042c0c4d2d | 223 | #define BOARD_KEYBOARD_RE5_B_PORT (0) |
Clemo | 0:e0042c0c4d2d | 224 | #define BOARD_KEYBOARD_RE5_B_PIN (16) |
Clemo | 0:e0042c0c4d2d | 225 | #endif |
Clemo | 0:e0042c0c4d2d | 226 | |
Clemo | 0:e0042c0c4d2d | 227 | #if defined(BOARD_KEYBOARD_RE6) /* S7 */ |
Clemo | 0:e0042c0c4d2d | 228 | #define BOARD_KEYBOARD_RE6_A_PORT (0) |
Clemo | 0:e0042c0c4d2d | 229 | #define BOARD_KEYBOARD_RE6_A_PIN (20) |
Clemo | 0:e0042c0c4d2d | 230 | #define BOARD_KEYBOARD_RE6_B_PORT (0) |
Clemo | 0:e0042c0c4d2d | 231 | #define BOARD_KEYBOARD_RE6_B_PIN (22) |
Clemo | 0:e0042c0c4d2d | 232 | #endif |
Clemo | 0:e0042c0c4d2d | 233 | |
Clemo | 0:e0042c0c4d2d | 234 | #if defined(BOARD_KEYBOARD_RE7) /* S8 */ |
Clemo | 0:e0042c0c4d2d | 235 | #define BOARD_KEYBOARD_RE7_A_PORT (0) |
Clemo | 0:e0042c0c4d2d | 236 | #define BOARD_KEYBOARD_RE7_A_PIN (21) |
Clemo | 0:e0042c0c4d2d | 237 | #define BOARD_KEYBOARD_RE7_B_PORT (0) |
Clemo | 0:e0042c0c4d2d | 238 | #define BOARD_KEYBOARD_RE7_B_PIN (23) |
Clemo | 0:e0042c0c4d2d | 239 | #endif |
Clemo | 0:e0042c0c4d2d | 240 | |
Clemo | 0:e0042c0c4d2d | 241 | #define BOARD_KEYBOARD_REPEAT_DELAY (500) /* [ms] */ |
Clemo | 0:e0042c0c4d2d | 242 | #define BOARD_KEYBOARD_REPEAT_RATE (100) /* [ms] */ |
Clemo | 0:e0042c0c4d2d | 243 | #define BOARD_KEYBOARD_DOUBLE_CLICK_MIN (100) /* [ms] */ |
Clemo | 0:e0042c0c4d2d | 244 | #define BOARD_KEYBOARD_DOUBLE_CLICK_MAX (BOARD_KEYBOARD_DOUBLE_CLICK_MIN+300) /* [ms] */ |
Clemo | 0:e0042c0c4d2d | 245 | |
Clemo | 0:e0042c0c4d2d | 246 | |
Clemo | 0:e0042c0c4d2d | 247 | /** |
Clemo | 0:e0042c0c4d2d | 248 | * Button defines |
Clemo | 0:e0042c0c4d2d | 249 | */ |
Clemo | 0:e0042c0c4d2d | 250 | #define BUTTONS_BUTTON1 0x01 |
Clemo | 0:e0042c0c4d2d | 251 | #define NO_BUTTON_PRESSED 0x00 |
Clemo | 0:e0042c0c4d2d | 252 | |
Clemo | 0:e0042c0c4d2d | 253 | |
Clemo | 0:e0042c0c4d2d | 254 | /** |
Clemo | 0:e0042c0c4d2d | 255 | * @brief Initialize buttons on the board |
Clemo | 0:e0042c0c4d2d | 256 | * @return Nothing |
Clemo | 0:e0042c0c4d2d | 257 | */ |
Clemo | 0:e0042c0c4d2d | 258 | void Board_Buttons_Init(void); |
Clemo | 0:e0042c0c4d2d | 259 | |
Clemo | 0:e0042c0c4d2d | 260 | /** |
Clemo | 0:e0042c0c4d2d | 261 | * @brief Get button status |
Clemo | 0:e0042c0c4d2d | 262 | * @return status of button |
Clemo | 0:e0042c0c4d2d | 263 | */ |
Clemo | 0:e0042c0c4d2d | 264 | uint32_t Buttons_GetStatus(void); |
Clemo | 0:e0042c0c4d2d | 265 | |
Clemo | 0:e0042c0c4d2d | 266 | /** |
Clemo | 0:e0042c0c4d2d | 267 | * @brief Sets up board specific ADC interface |
Clemo | 0:e0042c0c4d2d | 268 | * @return Nothing |
Clemo | 0:e0042c0c4d2d | 269 | */ |
Clemo | 0:e0042c0c4d2d | 270 | void Board_ADC_Init(void); |
Clemo | 0:e0042c0c4d2d | 271 | |
Clemo | 0:e0042c0c4d2d | 272 | typedef uint32_t LPC_SSP_T; |
Clemo | 0:e0042c0c4d2d | 273 | #define LPC_SSP0 ((uint32_t*)0) |
Clemo | 0:e0042c0c4d2d | 274 | /** |
Clemo | 0:e0042c0c4d2d | 275 | * @brief Initialize pin muxing for SSP interface |
Clemo | 0:e0042c0c4d2d | 276 | * @param pSSP : Pointer to SSP interface to initialize |
Clemo | 0:e0042c0c4d2d | 277 | * @return Nothing |
Clemo | 0:e0042c0c4d2d | 278 | */ |
Clemo | 0:e0042c0c4d2d | 279 | void Board_SSP_Init(LPC_SSP_T *pSSP); |
Clemo | 0:e0042c0c4d2d | 280 | |
Clemo | 0:e0042c0c4d2d | 281 | /** |
Clemo | 0:e0042c0c4d2d | 282 | * @} |
Clemo | 0:e0042c0c4d2d | 283 | */ |
Clemo | 0:e0042c0c4d2d | 284 | |
Clemo | 0:e0042c0c4d2d | 285 | #include "board_api.h" |
Clemo | 0:e0042c0c4d2d | 286 | |
Clemo | 0:e0042c0c4d2d | 287 | #ifdef __cplusplus |
Clemo | 0:e0042c0c4d2d | 288 | } |
Clemo | 0:e0042c0c4d2d | 289 | #endif |
Clemo | 0:e0042c0c4d2d | 290 | |
Clemo | 0:e0042c0c4d2d | 291 | #endif /* __BOARD_H_ */ |