summaryrefslogtreecommitdiff
path: root/hw
diff options
context:
space:
mode:
authorhathach <[email protected]>2018-12-03 19:02:35 +0700
committerhathach <[email protected]>2018-12-03 19:02:35 +0700
commitcea9abd4d0554e6969ee5b6edece806edb3ccd13 (patch)
tree2f44e09cb23b333c05b079f13befe4a4f0f27680 /hw
parentf8ea10dc9aaa0cc704c113d9259e6b8c0b3bc56f (diff)
clean up lpc13
Diffstat (limited to 'hw')
-rw-r--r--hw/bsp/lpcxpresso1347/board_lpcxpresso1347.c55
-rw-r--r--hw/bsp/lpcxpresso1347/board_lpcxpresso1347.h2
2 files changed, 25 insertions, 32 deletions
diff --git a/hw/bsp/lpcxpresso1347/board_lpcxpresso1347.c b/hw/bsp/lpcxpresso1347/board_lpcxpresso1347.c
index c17005c34..1ae21efab 100644
--- a/hw/bsp/lpcxpresso1347/board_lpcxpresso1347.c
+++ b/hw/bsp/lpcxpresso1347/board_lpcxpresso1347.c
@@ -40,10 +40,8 @@
#include "../board.h"
-#define LED_PORT (0)
-#define LED_PIN (7)
-#define LED_ON (1)
-#define LED_OFF (0)
+#define LED_PORT 0
+#define LED_PIN 7
const static struct {
uint8_t port;
@@ -63,38 +61,41 @@ enum {
BOARD_BUTTON_COUNT = sizeof(buttons) / sizeof(buttons[0])
};
-// required by lpcopen chip layer
+/* System oscillator rate and RTC oscillator rate */
const uint32_t OscRateIn = 12000000;
const uint32_t ExtRateIn = 0;
/* Pin muxing table, only items that need changing from their default pin
state are in this table. */
-static const PINMUX_GRP_T pinmuxing[] = {
- {0, 1, (IOCON_FUNC1 | IOCON_RESERVED_BIT_7 | IOCON_MODE_INACT)}, /* PIO0_1 used for CLKOUT */
- {0, 2, (IOCON_FUNC1 | IOCON_RESERVED_BIT_7 | IOCON_MODE_PULLUP)}, /* PIO0_2 used for SSEL */
- {0, 3, (IOCON_FUNC1 | IOCON_RESERVED_BIT_7 | IOCON_MODE_INACT)}, /* PIO0_3 used for USB_VBUS */
- {0, 4, (IOCON_FUNC1 | IOCON_FASTI2C_EN)}, /* PIO0_4 used for SCL */
- {0, 5, (IOCON_FUNC1 | IOCON_FASTI2C_EN)}, /* PIO0_5 used for SDA */
- {0, 6, (IOCON_FUNC1 | IOCON_RESERVED_BIT_7 | IOCON_MODE_INACT)}, /* PIO0_6 used for USB_CONNECT */
- {0, 8, (IOCON_FUNC1 | IOCON_RESERVED_BIT_7 | IOCON_MODE_INACT)}, /* PIO0_8 used for MISO0 */
- {0, 9, (IOCON_FUNC1 | IOCON_RESERVED_BIT_7 | IOCON_MODE_INACT)}, /* PIO0_9 used for MOSI0 */
- {0, 11, (IOCON_FUNC2 | IOCON_ADMODE_EN | IOCON_FILT_DIS)}, /* PIO0_11 used for AD0 */
- {0, 18, (IOCON_FUNC1 | IOCON_RESERVED_BIT_7 | IOCON_MODE_INACT)}, /* PIO0_18 used for RXD */
- {0, 19, (IOCON_FUNC1 | IOCON_RESERVED_BIT_7 | IOCON_MODE_INACT)}, /* PIO0_19 used for TXD */
- {1, 29, (IOCON_FUNC1 | IOCON_RESERVED_BIT_7 | IOCON_MODE_INACT)}, /* PIO1_29 used for SCK0 */
+static const PINMUX_GRP_T pinmuxing[] =
+{
+ {0, 1, (IOCON_FUNC1 | IOCON_RESERVED_BIT_7 | IOCON_MODE_INACT)}, /* PIO0_1 used for CLKOUT */
+ {0, 2, (IOCON_FUNC1 | IOCON_RESERVED_BIT_7 | IOCON_MODE_PULLUP)}, /* PIO0_2 used for SSEL */
+ {0, 3, (IOCON_FUNC1 | IOCON_RESERVED_BIT_7 | IOCON_MODE_INACT)}, /* PIO0_3 used for USB_VBUS */
+ {0, 4, (IOCON_FUNC1 | IOCON_FASTI2C_EN)}, /* PIO0_4 used for SCL */
+ {0, 5, (IOCON_FUNC1 | IOCON_FASTI2C_EN)}, /* PIO0_5 used for SDA */
+ {0, 6, (IOCON_FUNC1 | IOCON_RESERVED_BIT_7 | IOCON_MODE_INACT)}, /* PIO0_6 used for USB_CONNECT */
+ {0, 8, (IOCON_FUNC1 | IOCON_RESERVED_BIT_7 | IOCON_MODE_INACT)}, /* PIO0_8 used for MISO0 */
+ {0, 9, (IOCON_FUNC1 | IOCON_RESERVED_BIT_7 | IOCON_MODE_INACT)}, /* PIO0_9 used for MOSI0 */
+ {0, 11, (IOCON_FUNC2 | IOCON_ADMODE_EN | IOCON_FILT_DIS)}, /* PIO0_11 used for AD0 */
+ {0, 18, (IOCON_FUNC1 | IOCON_RESERVED_BIT_7 | IOCON_MODE_INACT)}, /* PIO0_18 used for RXD */
+ {0, 19, (IOCON_FUNC1 | IOCON_RESERVED_BIT_7 | IOCON_MODE_INACT)}, /* PIO0_19 used for TXD */
+ {1, 29, (IOCON_FUNC1 | IOCON_RESERVED_BIT_7 | IOCON_MODE_INACT)}, /* PIO1_29 used for SCK0 */
};
// Invoked by startup code
void SystemInit(void)
{
- /* Enable IOCON clock */
- Chip_Clock_EnablePeriphClock(SYSCTL_CLOCK_IOCON);
- Chip_IOCON_SetPinMuxing(LPC_IOCON, pinmuxing, sizeof(pinmuxing) / sizeof(PINMUX_GRP_T));
+ /* Enable IOCON clock */
+ Chip_Clock_EnablePeriphClock(SYSCTL_CLOCK_IOCON);
+ Chip_IOCON_SetPinMuxing(LPC_IOCON, pinmuxing, sizeof(pinmuxing) / sizeof(PINMUX_GRP_T));
Chip_SetupXtalClocking();
}
void board_init(void)
{
+ SystemCoreClockUpdate();
+
#if CFG_TUSB_OS == OPT_OS_NONE
SysTick_Config(SystemCoreClock / BOARD_TICKS_HZ); // 1 msec tick timer
#endif
@@ -102,7 +103,7 @@ void board_init(void)
Chip_GPIO_Init(LPC_GPIO_PORT);
//------------- LED -------------//
- Chip_GPIO_SetPinDIROutput(LPC_GPIO_PORT, 0, BOARD_LED0);
+ Chip_GPIO_SetPinDIROutput(LPC_GPIO_PORT, LED_PORT, LED_PIN);
//------------- BUTTON -------------//
// for(uint8_t i=0; i<BOARD_BUTTON_COUNT; i++) GPIOSetDir(buttons[i].port, BIT_(buttons[i].pin), 0);
@@ -134,15 +135,9 @@ uint32_t tusb_hal_millis(void)
//--------------------------------------------------------------------+
// LEDS
//--------------------------------------------------------------------+
-void board_led_control(uint32_t id, bool state)
+void board_led_control(bool state)
{
- if (state)
- {
- Chip_GPIO_SetValue(LPC_GPIO_PORT, 0, 1 << id);
- }else
- {
- Chip_GPIO_ClearValue(LPC_GPIO_PORT, 0, 1 << id);
- }
+ Chip_GPIO_SetPinState(LPC_GPIO_PORT, LED_PORT, LED_PIN, state);
}
//--------------------------------------------------------------------+
diff --git a/hw/bsp/lpcxpresso1347/board_lpcxpresso1347.h b/hw/bsp/lpcxpresso1347/board_lpcxpresso1347.h
index 8fc4bbe03..81a631fb5 100644
--- a/hw/bsp/lpcxpresso1347/board_lpcxpresso1347.h
+++ b/hw/bsp/lpcxpresso1347/board_lpcxpresso1347.h
@@ -45,8 +45,6 @@
#include "chip.h"
-#define BOARD_LED0 7
-
#ifdef __cplusplus
}
#endif