[bsp][hc32]更正pin和usart初始化顺序

This commit is contained in:
yangpeng 2024-01-02 15:03:47 +08:00 committed by Meco Man
parent 32be3c4a30
commit 7c07a97479
6 changed files with 55 additions and 10 deletions

View File

@ -11,6 +11,18 @@
#include "board.h"
#ifdef RT_USING_PIN
#include <drv_gpio.h>
#endif
#ifdef RT_USING_SERIAL
#ifdef RT_USING_SERIAL_V2
#include <drv_usart_v2.h>
#else
#include <drv_usart.h>
#endif /* RT_USING_SERIAL */
#endif /* RT_USING_SERIAL_V2 */
/* unlock/lock peripheral */
#define EXAMPLE_PERIPH_WE (LL_PERIPH_GPIO | LL_PERIPH_EFM | LL_PERIPH_FCG | \
LL_PERIPH_PWC_CLK_RMU | LL_PERIPH_SRAM)
@ -145,14 +157,24 @@ void rt_hw_board_init()
rt_system_heap_init((void *)HEAP_BEGIN, (void *)HEAP_END);
#endif
/* Board underlying hardware initialization */
#ifdef RT_USING_COMPONENTS_INIT
rt_components_board_init();
/* Pin driver initialization is open by default */
#ifdef RT_USING_PIN
rt_hw_pin_init();
#endif
/* USART driver initialization is open by default */
#ifdef RT_USING_SERIAL
rt_hw_usart_init();
#endif
#if defined(RT_USING_CONSOLE) && defined(RT_USING_DEVICE)
rt_console_set_device(RT_CONSOLE_DEVICE_NAME);
#endif
/* Board underlying hardware initialization */
#ifdef RT_USING_COMPONENTS_INIT
rt_components_board_init();
#endif
}
void rt_hw_us_delay(rt_uint32_t us)

View File

@ -11,6 +11,18 @@
#include "board.h"
#ifdef RT_USING_PIN
#include <drv_gpio.h>
#endif
#ifdef RT_USING_SERIAL
#ifdef RT_USING_SERIAL_V2
#include <drv_usart_v2.h>
#else
#include <drv_usart.h>
#endif /* RT_USING_SERIAL */
#endif /* RT_USING_SERIAL_V2 */
/* unlock/lock peripheral */
#define EXAMPLE_PERIPH_WE (LL_PERIPH_GPIO | LL_PERIPH_EFM | LL_PERIPH_FCG | \
LL_PERIPH_PWC_CLK_RMU | LL_PERIPH_SRAM)
@ -152,14 +164,24 @@ void rt_hw_board_init()
rt_system_heap_init((void *)HEAP_BEGIN, (void *)HEAP_END);
#endif
/* Board underlying hardware initialization */
#ifdef RT_USING_COMPONENTS_INIT
rt_components_board_init();
/* Pin driver initialization is open by default */
#ifdef RT_USING_PIN
rt_hw_pin_init();
#endif
/* USART driver initialization is open by default */
#ifdef RT_USING_SERIAL
rt_hw_usart_init();
#endif
#if defined(RT_USING_CONSOLE) && defined(RT_USING_DEVICE)
rt_console_set_device(RT_CONSOLE_DEVICE_NAME);
#endif
/* Board underlying hardware initialization */
#ifdef RT_USING_COMPONENTS_INIT
rt_components_board_init();
#endif
}
void rt_hw_us_delay(rt_uint32_t us)

View File

@ -503,6 +503,5 @@ int rt_hw_pin_init(void)
return rt_device_pin_register("pin", &hc32_pin_ops, RT_NULL);
}
INIT_BOARD_EXPORT(rt_hw_pin_init);
#endif /* RT_USING_PIN */

View File

@ -27,6 +27,8 @@ struct hc32_pin_irq_map
struct hc32_irq_config irq_config;
};
int rt_hw_pin_init(void);
#endif
#endif /* __DRV_GPIO_H__ */

View File

@ -1447,7 +1447,7 @@ static const struct rt_uart_ops hc32_uart_ops =
.dma_transmit = hc32_dma_transmit
};
int hc32_hw_uart_init(void)
int rt_hw_usart_init(void)
{
rt_err_t result = RT_EOK;
rt_size_t obj_num = sizeof(uart_obj) / sizeof(struct hc32_uart);
@ -1489,8 +1489,6 @@ int hc32_hw_uart_init(void)
return result;
}
INIT_BOARD_EXPORT(hc32_hw_uart_init);
#endif
#endif /* RT_USING_SERIAL */

View File

@ -26,6 +26,8 @@ extern "C"
{
#endif
int rt_hw_usart_init(void);
/*******************************************************************************
* Global type definitions ('typedef')
******************************************************************************/