接口设计
Clock API
API 函数
|
功能描述
|
fixed
rate
clock
|
fixed
parent
clock
|
multi
parent
clock
|
disp
clock
|
pll
clock
|
---|---|---|---|---|---|---|
hal_clk_enable() |
使能时钟 |
- |
√ |
√ |
- |
√ |
hal_clk_disable() |
关闭时钟 |
- |
√ |
√ |
- |
√ |
hal_clk_enable_deassertrst() |
使能时钟的同时放开复位 |
- |
√ |
- |
- |
- |
hal_clk_disable_assertrst() |
关闭时钟的同时使能复位 |
- |
√ |
- |
- |
- |
hal_clk_enable_iter() |
迭代的使能时钟及其父时钟 |
- |
√ |
√ |
- |
√ |
hal_clk_enable_deassertrst_iter()
|
迭代的使能时钟及其父时钟
同时放开复位
|
- |
√
|
- |
- |
- |
hal_clk_get_freq() |
获取时钟频率 |
√ |
√ |
√ |
√ |
√ |
hal_clk_set_freq() |
设置时钟频率 |
- |
√ |
√ |
√ |
√ |
hal_clk_get_parent() |
获取父时钟 id |
- |
√ |
√ |
- |
√ |
hal_clk_set_parent() |
设置父时钟 id |
- |
- |
√ |
- |
- |
函数原型 |
int hal_clk_enable(uint32_t clk_id) |
---|---|
功能说明 |
使能时钟 |
参数定义 |
clk_id:时钟 ID (CLK_xxxx 格式定义的宏) |
返回值 |
操作是否成功 (0=OK, other=Error) |
注意事项 |
- |
函数原型 |
int hal_clk_disable(uint32_t clk_id) |
---|---|
功能说明 |
关闭时钟 |
参数定义 |
clk_id:时钟 ID (CLK_xxxx 格式定义的宏) |
返回值 |
操作是否成功 (0=OK, other=Error) |
注意事项 |
- |
函数原型 |
int hal_clk_enable_deassertrst(uint32_t clk_id) |
---|---|
功能说明 |
使能时钟的同时放开复位 |
参数定义 |
clk_id:时钟 ID (CLK_xxxx 格式定义的宏) |
返回值 |
操作是否成功 (0=OK, other=Error) |
注意事项 |
- |
函数原型 |
int hal_clk_disable_assertrst(uint32_t clk_id) |
---|---|
功能说明 |
关闭时钟的同时使能复位 |
参数定义 |
clk_id:时钟 ID (CLK_xxxx 格式定义的宏) |
返回值 |
操作是否成功 (0=OK, other=Error) |
注意事项 |
- |
函数原型 |
int hal_clk_enable_iter(uint32_t clk_id) |
---|---|
功能说明 |
迭代的使能时钟及其父时钟 |
参数定义 |
clk_id:时钟 ID (CLK_xxxx 格式定义的宏) |
返回值 |
操作是否成功 (0=OK, other=Error) |
注意事项 |
- |
函数原型 |
int hal_clk_enable_deassertrst_iter(uint32_t clk_id) |
---|---|
功能说明 |
迭代的使能时钟及其父时钟,同时放开复位 |
参数定义 |
clk_id:时钟 ID (CLK_xxxx 格式定义的宏) |
返回值 |
操作是否成功 (0=OK, other=Error) |
注意事项 |
- |
函数原型 |
unsigned long hal_clk_get_freq(uint32_t clk_id) |
---|---|
功能说明 |
获取时钟频率 |
参数定义 |
clk_id:时钟 ID (CLK_xxxx 格式定义的宏) |
返回值 |
时钟频率,单位为 Hz |
注意事项 |
- |
函数原型 |
int hal_clk_set_freq(uint32_t clk_id, unsigned long freq) |
---|---|
功能说明 |
设置时钟频率 |
参数定义 |
clk_id:时钟 ID (CLK_xxxx 格式定义的宏)
freq:时钟频率,单位为 Hz
|
返回值 |
操作是否成功 (0=OK, other=Error) |
注意事项 |
- |
函数原型 |
unsigned int hal_clk_get_parent(uint32_t clk_id) |
---|---|
功能说明 |
获取父时钟 ID |
参数定义 |
clk_id:时钟 ID (CLK_xxxx 格式定义的宏) |
返回值 |
父时钟 ID |
注意事项 |
- |
函数原型 |
int hal_clk_set_parent(uint32_t clk_id, unsigned int parent_clk_id) |
---|---|
功能说明 |
设置父时钟 ID |
参数定义 |
clk_id:时钟 ID (CLK_xxxx 格式定义的宏)
parent_clk_id:父时钟 ID
|
返回值 |
操作是否成功 (0=OK, other=Error) |
注意事项 |
- |
Reset API
CMU 驱动提供了 Reset API 接口函数:
API 函数 |
功能描述 |
---|---|
hal_reset_assert() |
使能复位 |
hal_reset_deassert() |
放开复位 |
hal_reset_status() |
获取复位状态 |
函数原型 |
int hal_reset_assert(uint32_t rst_id) |
---|---|
功能说明 |
使能复位 |
参数定义 |
rst_id:Reset ID (RESET_xxxx 格式定义的宏) |
返回值 |
操作是否成功 (0=OK, other=Error) |
注意事项 |
- |
函数原型 |
int hal_reset_deassert(uint32_t rst_id) |
---|---|
功能说明 |
放开复位 |
参数定义 |
rst_id:Reset ID (RESET_xxxx 格式定义的宏) |
返回值 |
操作是否成功 (0=OK, other=Error) |
注意事项 |
- |
函数原型 |
int hal_reset_status(uint32_t rst_id) |
---|---|
功能说明 |
查看复位状态 |
参数定义 |
rst_id:Reset ID (RESET_xxxx 格式定义的宏) |
返回值 |
操作是否成功 (0=复位有效, 1=复位无效) |
注意事项 |
- |