diff options
| author | 勤为本 <[email protected]> | 2017-07-18 11:33:27 +0800 |
|---|---|---|
| committer | 勤为本 <[email protected]> | 2017-07-18 11:33:27 +0800 |
| commit | 878b222741dd2b628240d1b19401c04ae507860f (patch) | |
| tree | 6bae0edd135bb040778375d146147358eb8aae2f /bsp/ls1cdev/libraries/ls1c_timer.h | |
| parent | d22df879ace32d18a6fed07427a14f2f3b92b009 (diff) | |
将“龙芯1c库”中硬件定时器相关接口移植到RT-Thread
Diffstat (limited to 'bsp/ls1cdev/libraries/ls1c_timer.h')
| -rw-r--r-- | bsp/ls1cdev/libraries/ls1c_timer.h | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/bsp/ls1cdev/libraries/ls1c_timer.h b/bsp/ls1cdev/libraries/ls1c_timer.h new file mode 100644 index 0000000000..df38c705f5 --- /dev/null +++ b/bsp/ls1cdev/libraries/ls1c_timer.h @@ -0,0 +1,69 @@ +// Ӳ����ʱ��ͷ�ļ� + + +#ifndef __OPENLOONGSON_TIMER_H +#define __OPENLOONGSON_TIMER_H + + +#include "ls1c_public.h" + + +// Ӳ����ʱ�� +typedef enum +{ + TIMER_PWM0, // PWM0����Ӳ����ʱ�� + TIMER_PWM1, // PWM1����Ӳ����ʱ�� + TIMER_PWM2, // PWM2����Ӳ����ʱ�� + TIMER_PWM3 // PWM3����Ӳ����ʱ�� +}ls1c_timer_t; + + +// Ӳ����ʱ����Ϣ +typedef struct +{ + ls1c_timer_t timer; // Ӳ����ʱ�� + unsigned long time_ns; // ��ʱʱ�� +}timer_info_t; + + + +/* + * ��ʼ����ʱ��������ʼ��ʱ + * @timer_info ��ʱ���Ͷ�ʱʱ����Ϣ + */ +void timer_init(timer_info_t *timer_info); + + +/* + * �ж�ָ����ʱ���Ƿ�ʱ + * @timer_info ��ʱ�� + * @ret TRUE or FALSE + */ +BOOL timer_is_time_out(timer_info_t *timer_info); + + +/* + * ֹͣ��ʱ�� + * @timer_info ��ʱ�� + */ +void timer_stop(timer_info_t *timer_info); + + + +/* + * ��ȡ��ʱ���ӳ�ʼ�������ڵ�ʱ��(ʵ�ּ�ʱ����)����λns + * @timer_info Ӳ����ʱ�� + * @ret ʱ�䣬��λns + */ +unsigned long timer_get_time_ns(timer_info_t *timer_info); + + +/* + * ��ӡtimer��ؼĴ�����ֵ + * @timer_info Ӳ����ʱ�� + */ +void timer_print_regs(timer_info_t *timer_info); + + +#endif + |
