Dependencies: DM_FATFileSystem EthernetInterface HTTPClient mbed-rtos mbed-src
Fork of DMSupport by
Diff: meas.h
- Revision:
- 31:d47cffcb0a3e
- Parent:
- 4:6fdcdf7aff8d
--- a/meas.h Mon Jan 26 15:24:15 2015 +0100 +++ b/meas.h Tue Feb 17 10:41:48 2015 +0100 @@ -28,6 +28,10 @@ * Typedefs and defines *****************************************************************************/ +// Enable extra measuring pins, at the expense of peripheral access. +// For example MEAS pins 5-9 will prevent use of UART4/SPI2 and some timers. +//#define EXTRA_PINS + // Internal macros, don't use directly #if defined(DM_BOARD_ENABLE_MEASSURING_PINS) #define _INTERNAL_SET_MEAS_PIN(__port, __pin) ((LPC_GPIO ## __port)->SET = (1UL << (__pin))) @@ -53,6 +57,43 @@ #define SET_MEAS_PIN_4() _INTERNAL_SET_MEAS_PIN(1, 19) #define CLR_MEAS_PIN_4() _INTERNAL_CLR_MEAS_PIN(1, 19) +#ifdef EXTRA_PINS + // Manipulates measurement pin 5 which is GPIO5[0], available on J10-15 + #define SET_MEAS_PIN_5() _INTERNAL_SET_MEAS_PIN(5, 0) + #define CLR_MEAS_PIN_5() _INTERNAL_CLR_MEAS_PIN(5, 0) + + // Manipulates measurement pin 6 which is GPIO5[1], available on J10-16 + #define SET_MEAS_PIN_6() _INTERNAL_SET_MEAS_PIN(5, 1) + #define CLR_MEAS_PIN_6() _INTERNAL_CLR_MEAS_PIN(5, 1) + + // Manipulates measurement pin 7 which is GPIO5[2], available on J10-17 + #define SET_MEAS_PIN_7() _INTERNAL_SET_MEAS_PIN(5, 2) + #define CLR_MEAS_PIN_7() _INTERNAL_CLR_MEAS_PIN(5, 2) + + // Manipulates measurement pin 8 which is GPIO5[3], available on J10-18 + #define SET_MEAS_PIN_8() _INTERNAL_SET_MEAS_PIN(5, 3) + #define CLR_MEAS_PIN_8() _INTERNAL_CLR_MEAS_PIN(5, 3) + + // Manipulates measurement pin 9 which is GPIO5[4], available on J10-19 + #define SET_MEAS_PIN_9() _INTERNAL_SET_MEAS_PIN(5, 4) + #define CLR_MEAS_PIN_9() _INTERNAL_CLR_MEAS_PIN(5, 4) + + #define _INTERNAL_EXTRA_INIT_MEAS() do {\ + LPC_IOCON->P5_0 &= ~0x7; \ + LPC_IOCON->P5_1 &= ~0x7; \ + LPC_IOCON->P5_2 &= ~0x7; \ + LPC_IOCON->P5_3 &= ~0x7; \ + LPC_IOCON->P5_4 &= ~0x7; \ + LPC_GPIO5->DIR |= (1<<0) | (1<<1) | (1<<2) | (1<<3) | (1<<4); \ + CLR_MEAS_PIN_5(); \ + CLR_MEAS_PIN_6(); \ + CLR_MEAS_PIN_7(); \ + CLR_MEAS_PIN_8(); \ + CLR_MEAS_PIN_9(); \ + } while(0) +#else + #define _INTERNAL_EXTRA_INIT_MEAS() do {} while(false) +#endif #if defined(DM_BOARD_ENABLE_MEASSURING_PINS) #define _INTERNAL_INIT_MEAS() do {\ @@ -65,6 +106,7 @@ CLR_MEAS_PIN_2(); \ CLR_MEAS_PIN_3(); \ CLR_MEAS_PIN_4(); \ + _INTERNAL_EXTRA_INIT_MEAS(); \ } while(0) #else #define _INTERNAL_INIT_MEAS() do {} while(0)