提供 hwtimer 设备的查找、打开、初始化、控制接口
更多...
|
rt_device_t | rt_device_find (const char *name) |
| 查找指定名称的 hwtimer 设备 更多...
|
|
rt_err_t | rt_device_open (rt_device_t dev, rt_uint16_t oflag) |
| 打开 hwtimer 设备 更多...
|
|
rt_err_t | rt_device_init (rt_device_t dev) |
| 初始化 hwtimer 设备 更多...
|
|
rt_ssize_t | rt_device_read (rt_device_t dev, rt_off_t pos, void *buffer, rt_size_t size) |
| 从 hwtimer 获取定时器当前值 更多...
|
|
rt_ssize_t | rt_device_write (rt_device_t dev, rt_off_t pos, const void *buffer, rt_size_t size) |
| 设置 hwtimer 的超时值 更多...
|
|
rt_err_t | rt_device_set_rx_indicate (rt_device_t dev, rt_err_t(*rx_ind)(rt_device_t dev, rt_size_t size)) |
| 设置 hwtimer 定时器超时回调函数 更多...
|
|
rt_err_t | rt_device_control (rt_device_t dev, int cmd, void *arg) |
| 对 hwtimer 设备执行控制操作 更多...
|
|
rt_err_t | rt_device_close (rt_device_t dev) |
| 关闭 hwtimer 设备 更多...
|
|
提供 hwtimer 设备的查找、打开、初始化、控制接口
◆ rt_hwtimer_ctrl_t
hwtimer 控制命令枚举
该枚举定义了 hwtimer 的控制命令, 用于配置频率、停止定时器、获取信息以及设置定时模式。
枚举值 |
---|
HWTIMER_CTRL_FREQ_SET | 设置计数频率
|
HWTIMER_CTRL_STOP | 停止定时器
|
HWTIMER_CTRL_INFO_GET | 获取定时器特性信息
|
HWTIMER_CTRL_MODE_SET | 设置定时模式(单次 / 周期)
- 单次模式(oneshot):定时器到期后停止
- 周期模式(period):定时器到期后自动重载
|
◆ rt_hwtimer_mode_t
hwtimer 计时模式枚举
定义 hwtimer 的工作模式,包括单次模式和周期模式。
枚举值 |
---|
HWTIMER_MODE_ONESHOT | 单次模式
定时器到期后自动停止,不会重新加载。
|
HWTIMER_MODE_PERIOD | 周期模式
定时器到期后自动重载并继续运行。
|
◆ rt_device_find()
rt_device_t rt_device_find |
( |
const char * |
name | ) |
|
查找指定名称的 hwtimer 设备
本函数通过 hwtimer 设备名称查找已注册的 hwtimer 设备
- 参数
-
- 返回值
-
!RT_NULL | 返回 hwtimer 设备结构体指针 |
RT_NULL | 当前系统没有找到对应的 hwtimer 设备 |
◆ rt_device_open()
rt_err_t rt_device_open |
( |
rt_device_t |
dev, |
|
|
rt_uint16_t |
oflag |
|
) |
| |
打开 hwtimer 设备
本函数用于打开 hwtimer 设备
- 参数
-
[in] | dev | 指向 hwtimer 设备结构体的指针 |
[in] | oflag | 设备打开标志 |
标志位 | 含义 |
RT_DEVICE_OFLAG_RDWR | 以读写方式打开 hwtimer 设备 |
- 返回值
-
◆ rt_device_init()
rt_err_t rt_device_init |
( |
rt_device_t |
dev | ) |
|
初始化 hwtimer 设备
本函数用于初始化 hwtimer 设备
- 参数
-
[in] | dev | 指向 hwtimer 设备结构体的指针 |
- 返回值
-
◆ rt_device_read()
rt_ssize_t rt_device_read |
( |
rt_device_t |
dev, |
|
|
rt_off_t |
pos, |
|
|
void * |
buffer, |
|
|
rt_size_t |
size |
|
) |
| |
从 hwtimer 获取定时器当前值
- 参数
-
[in] | dev | 指向 hwtimer 设备结构体的指针 |
[in] | pos | hwtimer 设备该项无效 |
[out] | buffer | 指向 struct rt_hwtimerval 结构体的指针 |
[in] | size | 缓冲区大小,表示希望读取的数据大小 |
- 返回值
-
◆ rt_device_write()
rt_ssize_t rt_device_write |
( |
rt_device_t |
dev, |
|
|
rt_off_t |
pos, |
|
|
const void * |
buffer, |
|
|
rt_size_t |
size |
|
) |
| |
设置 hwtimer 的超时值
- 参数
-
[in] | dev | 指向 hwtimer 设备结构体的指针 |
[in] | pos | hwtimer 设备该项无效 |
[in] | buffer | 指向 struct rt_hwtimerval 结构体的指针 |
[in] | size | 值恒定为 struct rt_hwtimerval 结构体的大小 |
- 返回值
-
◆ rt_device_set_rx_indicate()
rt_err_t rt_device_set_rx_indicate |
( |
rt_device_t |
dev, |
|
|
rt_err_t(*)(rt_device_t dev, rt_size_t size) |
rx_ind |
|
) |
| |
设置 hwtimer 定时器超时回调函数
当 hwtimer 超时之后,会调用传入的函数并附带一些信息
- 参数
-
[in] | dev | 指向设备驱动结构体的指针 |
[in] | rx_ind | 接收通知回调函数指针,其原型为: |
函数传参 | 含义 |
rt_device_t | 触发中断回调的 hwtimer 设备结构体的指针 |
rt_size_t | 值恒定为 struct rt_hwtimerval 结构体大小 |
rt_err_t | 回调函数是否执行成功 |
- 返回值
-
◆ rt_device_control()
rt_err_t rt_device_control |
( |
rt_device_t |
dev, |
|
|
int |
cmd, |
|
|
void * |
arg |
|
) |
| |
对 hwtimer 设备执行控制操作
- 参数
-
[in] | dev | 指向 hwtimer 设备结构体的指针 |
[in] | cmd | 发送给 hwtimer 设备的命令标识 |
[in,out] | arg | 命令的参数 |
- 返回值
-
◆ rt_device_close()
rt_err_t rt_device_close |
( |
rt_device_t |
dev | ) |
|
关闭 hwtimer 设备
本接口用于关闭一个 hwtimer 设备
- 参数
-
- 返回值
-