You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
73 lines
1.1 KiB
73 lines
1.1 KiB
|
5 months ago
|
/*
|
||
|
|
* Copyright (c) 2006-2025, RT-Thread Development Team
|
||
|
|
*
|
||
|
|
* SPDX-License-Identifier: Apache-2.0
|
||
|
|
*
|
||
|
|
* Change Logs:
|
||
|
|
* Date Author Notes
|
||
|
|
* 2025-10-22 kurisaw first version
|
||
|
|
*/
|
||
|
|
|
||
|
|
#ifndef __DRV_HWTIMER_H__
|
||
|
|
#define __DRV_HWTIMER_H__
|
||
|
|
|
||
|
|
#include <rthw.h>
|
||
|
|
#include <rtdevice.h>
|
||
|
|
|
||
|
|
#ifdef __cplusplus
|
||
|
|
extern "C" {
|
||
|
|
#endif
|
||
|
|
|
||
|
|
#ifdef RT_USING_HWTIMER
|
||
|
|
|
||
|
|
typedef struct
|
||
|
|
{
|
||
|
|
uint32_t reg_base;
|
||
|
|
IRQn_Type irqn;
|
||
|
|
rcu_periph_enum rcu;
|
||
|
|
} gd32_hwtimer_data;
|
||
|
|
|
||
|
|
typedef struct
|
||
|
|
{
|
||
|
|
char dev_name[RT_NAME_MAX];
|
||
|
|
const gd32_hwtimer_data hw_data;
|
||
|
|
rt_hwtimer_t hwtimer_dev;
|
||
|
|
const struct rt_hwtimer_info hwtimer_info;
|
||
|
|
} gd32_hwtimer_device;
|
||
|
|
|
||
|
|
enum timer_index
|
||
|
|
{
|
||
|
|
#ifdef BSP_USING_HWTIMER0
|
||
|
|
TIM0_INDEX,
|
||
|
|
#endif
|
||
|
|
#ifdef BSP_USING_HWTIMER1
|
||
|
|
TIM1_INDEX,
|
||
|
|
#endif
|
||
|
|
#ifdef BSP_USING_HWTIMER2
|
||
|
|
TIM2_INDEX,
|
||
|
|
#endif
|
||
|
|
#ifdef BSP_USING_HWTIMER3
|
||
|
|
TIM3_INDEX,
|
||
|
|
#endif
|
||
|
|
#ifdef BSP_USING_HWTIMER4
|
||
|
|
TIM4_INDEX,
|
||
|
|
#endif
|
||
|
|
#ifdef BSP_USING_HWTIMER5
|
||
|
|
TIM5_INDEX,
|
||
|
|
#endif
|
||
|
|
#ifdef BSP_USING_HWTIMER6
|
||
|
|
TIM6_INDEX,
|
||
|
|
#endif
|
||
|
|
#ifdef BSP_USING_HWTIMER7
|
||
|
|
TIM7_INDEX,
|
||
|
|
#endif
|
||
|
|
};
|
||
|
|
|
||
|
|
#endif
|
||
|
|
|
||
|
|
#ifdef __cplusplus
|
||
|
|
}
|
||
|
|
#endif
|
||
|
|
|
||
|
|
#endif /* __DRV_HWTIMER_H__ */
|