/* * Copyright 2017-2018 NXP * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ /** * @file board.h * @brief define imxrt1052-board init configure and start-up function * @version 1.0 * @author AIIT XUOS Lab * @date 2021-05-28 */ /************************************************* File name: board.h Description: define imxrt1052-board board init function and struct Others: History: 1. Date: 2021-05-28 Author: AIIT XUOS Lab Modification: 1. define imxrt-board InitBoardHardware 2. define imxrt-board heap struct *************************************************/ #ifndef __BOARD_H__ #define __BOARD_H__ #include "fsl_common.h" #include "fsl_gpio.h" #include "fsl_clock.h" #include "fsl_enet.h" #include "clock_config.h" #include #include #include "enet_ethernetif.h" extern int heap_start; extern int heap_end; #define HEAP_BEGIN (&heap_start) #define HEAP_END (&heap_end) #define HEAP_SIZE ((uint32_t)HEAP_END - (uint32_t)HEAP_BEGIN) void InitBoardHardware(void); /******************************************************************************* * Definitions ******************************************************************************/ /*! @brief The board name */ #define BOARD_NAME "IMXRT1050-EVKB" /* The UART to use for debug messages. */ #define BOARD_DEBUG_UART_TYPE kSerialPort_Uart #define BOARD_DEBUG_UART_BASEADDR (uint32_t) LPUART1 #define BOARD_DEBUG_UART_INSTANCE 1U #define BOARD_DEBUG_UART_CLK_FREQ BOARD_DebugConsoleSrcFreq() #define BOARD_UART_IRQ LPUART1_IRQn #define BOARD_UART_IRQ_HANDLER LPUART1_IRQHandler #ifndef BOARD_DEBUG_UART_BAUDRATE #define BOARD_DEBUG_UART_BAUDRATE (115200U) #endif /* BOARD_DEBUG_UART_BAUDRATE */ /*! @brief The USER_LED used for board */ #define LOGIC_LED_ON (0U) #define LOGIC_LED_OFF (1U) #ifndef BOARD_USER_LED_GPIO #define BOARD_USER_LED_GPIO GPIO1 #endif #ifndef BOARD_USER_LED_GPIO_PIN #define BOARD_USER_LED_GPIO_PIN (9U) #endif #define USER_LED_INIT(output) \ GPIO_PinWrite(BOARD_USER_LED_GPIO, BOARD_USER_LED_GPIO_PIN, output); \ BOARD_USER_LED_GPIO->GDIR |= (1U << BOARD_USER_LED_GPIO_PIN) /*!< Enable target USER_LED */ #define USER_LED_ON() \ GPIO_PortClear(BOARD_USER_LED_GPIO, 1U << BOARD_USER_LED_GPIO_PIN) /*!< Turn off target USER_LED */ #define USER_LED_OFF() GPIO_PortSet(BOARD_USER_LED_GPIO, 1U << BOARD_USER_LED_GPIO_PIN) /*!