Component - Clock (Cy_Clock) V1.50 Datasheet (Chinese).pdf

PSoC Creator™ 组件数据手册
®
时钟
1.50
特性
•
快速定义新时钟
•
请参见系统或设计范围时钟
•
配置时钟频率容差
概述
时钟组件具有两个重要功能:首先,它提供创建本地时钟的方法;其次,它还提供连接设计与系
统及设计范围时钟的方法。有关所有时钟的详细信息,请参见“设计范围资源 (DWR) 时钟编辑器”
这部分。有关详细信息,请参见“PSoC Creator 帮助”、“时钟编辑器”这两部分。
定义时钟的方法有多种,例如:
•
作为自动选择的源时钟频率
•
作为用户选择的源时钟频率
•
作为分频器和用户选择的源时钟
如果指定所需频率,PSoC Creator 将自动选择能够产生最精确结果频率的分频系数。若允许,
PSoC Creator 还检测系统和设计范围时钟,并选择能够产生最精确结果频率的源和分频器对。
外观
时钟组件波形符号的颜色随时钟域的变化而变化(参见“DWR 时钟编辑器”),如下所示:
•
数字 - 波形颜色与数字导线的颜色相同,均为黑色外形
•
模拟 - 波形与模拟导线颜色相同,均为黑色外形
Cypress Semiconductor Corporation • 198 Champion Court • San Jose, CA 95134-1709 • 408-943-2600
Document Number: 001-78720 Rev. **
Revised April 26, 2012
时钟
•
PSoC Creator™ 组件数据手册
®
中间 - 波形颜色为白色,无外形
输入/输出连接
本节介绍时钟的各种输入和输出连接。I/O 列表中的星号 (*) 表示 I/O 可能在该 I/O 说明中所列条
件下的符号中隐藏。
时钟 – 输出
时钟具有标准的输出终端,可以通过此终端访问时钟信号。
数据域 – 输出 *
若启用,此可选输出可以从模拟时钟接入数字域输出。通过 Configure(配置)对话框中的
Advanced(高级)选项卡来启用此输出。
元件参数
将时钟拖入设计中,双击时钟,打开 Component(配置)对话框。
注意: 对于您添加到设计中的任何本地时钟,DWR 时钟编辑器均包含“Start on Reset”(“复位
启动”)选项,默认情况下,此选项为启用状态。在某些情况下,您需要以编程的方式来控制时
钟,例如,降低功耗。在这种情况下,取消选择“Start on Reset”(“复位启动”)选项,在代码中插
入 Clock_Start() 函数。更多信息,请参见 API 和“PSoC Creator 帮助的时钟编辑器”这部分。
Page 2 of 20
Document Number: 001-78720 Rev. **
PSoC Creator™ 组件数据手册
®
时钟
配置时钟选项卡
Configure Clock(配置时钟)选项卡包含时钟类型和源参数。根据您的选择,此选项卡将包含其
他各种参数,如下图所示:
图 1 时钟类型:新建/源:<自动>
图 2 时钟类型:新建/源:特定时钟
Document Number: 001-78720 Rev. **
Page 3 of 20
时钟
PSoC Creator™ 组件数据手册
®
图 3 时钟类型:现有的
以下各节介绍时钟组件参数:
时钟类型
共有两种时钟类型:新建时钟和现有时钟。对于新建时钟而言,可以指定时钟源以使用或支持
PSoC Creator 通过选择 <自动> 来完成选择。如果选择 <自动>,还可以输入特定频率和可选容
差。如果指定一个源,则既可以指定频率,也可以选择分频器。对于现有时钟而言,仅可以选择
时钟源。
在电路图中,不同的配置显示不同的时钟符号,如以下示例所示。
在器件中,配置为“新建时钟”的时钟组件消耗时钟源,并具有适时生成的 API。在器件中,配置到
系统或设计范围时钟的“现有”时钟组件不消耗任何物理源,而且不具有适时生成的 API。相反,他
们使用选定系统或设计范围时钟。
Page 4 of 20
Document Number: 001-78720 Rev. **
PSoC Creator™ 组件数据手册
时钟
®
源
如果 PSoC Creator 自动定位可用源时钟,而该源时钟在向下分频时提供精确的结果频率,则选择
<自动>(默认)。带有 <自动> 源的时钟仅可以输入所需频率。此外,还可以提供一个容差(可
选)。
从供应列表中选择一个系统或设计范围时钟,用来强制 PSoC Creator 使用作为源的时钟。
频率
输入所需频率和单位(默认值 = 24 MHz) 然后,PSoC Creator 将计算分频系数,用它创建一个
尽可能接近于所需频率的时钟信号。
容差
如果将 <自动> 选作时钟源,则可以输入该时钟所需的容差值(默认值为 +/- 5%)。PSoC
Creator 将确保结果时钟的精确度介于指定容差范围之内,如果所需时钟无法实现,则会生成警
告。时钟容差指定为百分比。(注意:输入 ppm 将导致所输入的值被转换成相应的百分比值。)
如果不存在所需容差范围,则取消勾选容差旁边的复选框,而此时钟不会生成任何警告。
除数
如果选择特定的源时钟,则可以为分频器输入显式值。另外,如果保留源时钟的设置为 <自动>,
Divider(分频器)选项不可用(默认)。
如果确实选择 Divider(分频器)选项,则 Frequency(频率)选项不可用。
Document Number: 001-78720 Rev. **
Page 5 of 20
时钟
PSoC Creator™ 组件数据手册
®
“高级”选项卡
Advanced(高级)选项卡包含两个参数。
Page 6 of 20
Document Number: 001-78720 Rev. **
PSoC Creator™ 组件数据手册
时钟
®
Enable Digital Domain Output(启用数据域输出)
若勾选此选项(默认值 = 未勾选),该选项添加模拟时钟版本终端,并且,该模拟时钟使用主数
据同步时钟作为重新同步时钟。若使用该时钟,则系统强制该时钟进入模拟域;然而,新添加的
终端位于数字域。
与 MASTER_CLK 同步
若勾选该选项(默认值 = 勾选),时钟与 MASTER 时钟保持同步;否则,该时钟不同步。
位置和资源
资源使用情况因配置和连接的不同而异。
•
配置为“现有”的时钟组件不消耗芯片上的任何资源。
•
配置为“新建”的时钟组件消耗单个时钟源。PSoC Creator 显示时钟是与数字外设连接还是
与模拟外设连接,并在必要时消耗数字时钟或模拟时钟源。
API 存储器
数字模块
(字节)
引脚(每个
模拟模块
数据路径
宏单元
状态寄存器
控制寄存器
计数器 7
闪存
RAM
外部 I/O)
不可用
不可用
不可用
不可用
不可用
不可用
698
0
不可用
Document Number: 001-78720 Rev. **
Page 7 of 20
时钟
PSoC Creator™ 组件数据手册
®
应用程序编程接口
应用程序编程接口 (API) 子程序允许您使用软件配置组件。下表列出了每个函数的接口,并进行了
说明。以下各节将更详细介绍每个函数。
默认情况下,PSoC Creator 将实例名称“Clock_1”分配给指定设计中组件的第一个实例。您可以将
其重命名为遵循标识符语法规则的任何唯一值。实例名称会成为每个全局函数名称、变量和常量
符号的前缀。出于可读性考虑,下表中使用的实例名称为“Clock(时钟)”。
注意:在 Configure(配置)对话框中,配置为“现有”时钟类型的本地时钟均不生成任何 API。
函数
说明
Clock Start
启用时钟。
Clock Stop
禁用时钟。
Clock StopBlock
禁用时钟,然后等待,直到该时钟被禁用时为止。
Clock StandbyPower
选择待机(备用活动)操作模式的功耗。
Clock SetDivider
设置时钟分频器,并立即重启该时钟分频器。
Clock SetDividerRegister
设置时钟分频器,并立即重启该时钟分频器(可选)。
Clock SetDividerValue
设置时钟分频器,并立即重启该时钟分频器。
Clock GetDividerRegister
获得时钟分频器寄存器值。
Clock SetMode
设置用于控制时钟操作模式的标志。
Clock SetModeRegister
设置用于控制时钟操作模式的标志。
Clock GetModeRegister
获得时钟模式寄存器值。
Clock ClearModeRegister
清除用于控制时钟操作模式的标志。
Clock SetSource
设置时钟源。
Clock SetSourceRegister
设置时钟源。
Page 8 of 20
Document Number: 001-78720 Rev. **
PSoC Creator™ 组件数据手册
时钟
®
函数
说明
Clock GetSourceRegister
获得时钟源。
Clock SetPhase
设置模拟时钟的相位延迟(仅为模拟时钟生成)。
Clock SetPhaseRegister
设置模拟时钟的相位延迟(仅为模拟时钟生成)。
Clock SetPhaseValue
设置模拟时钟的相位延迟(仅为模拟时钟生成)。
Clock GetPhaseRegister
获得模拟时钟的相位延迟(仅为模拟时钟生成)。
void Clock_Start(void)
说明:
启动时钟。
注:启动时,如果在 DWR 时钟编辑器中启用“复位启动”选项,则时钟已经运行。
参数:
void。
返回值:
void。
副作用:
启用时钟。
void Clock_Stop(void)
说明:
停止时钟并立即返回。此 API 不需要运行源时钟,但可能在实际禁用硬件之前返回。如果调用
此函数之前更改时钟设置,则在启动时,时钟可能产生短时脉冲。为避免产生短时脉冲,请使
用 Clock_StopBlock() 函数。
参数:
void。
返回值:
void。
副作用:
禁用时钟。输出将为逻辑 0。
Document Number: 001-78720 Rev. **
Page 9 of 20
时钟
PSoC Creator™ 组件数据手册
®
void Clock_StopBlock(void)
说明:
返回前,停止时钟并等待硬件实际被禁用。这样确保时钟从未被截断(禁用时钟和 API 返回
前,大半个周期将终止)。注意:由于无法禁用停止的时钟,必须运行源时钟,或从不返回
API。
参数:
void。
返回值:
void。
副作用:
禁用时钟。输出将为逻辑 0。
注意:在 PSoC3 ES2 和 PSoC5 ES1 上不支持 Clock_StopBlock() API,并且不将生成 Clock_StopBlock() API。
void Clock_StandbyPower(uint8 state)
说明:
选择待机(备用活动)操作模式的功耗。
参数:
uint8 状态:0 值用于在备用活动模式期间禁用时钟,而非零用于启用时钟。
返回值:
void。
副作用:
无
void Clock_SetDivider(uint16 clkDivider)
说明:
修改时钟分频器,由此修改频率。当时钟分频器寄存器设置为零或被更改为除零以外的值时,
将暂时禁用该时钟,以便更改模式位。如果调用 Clock_SetDivider() 时启用时钟,则必须运行
源时钟。当前时钟周期将被截断,新的分频值将立即生效。
参数:
uint16 clkDivider:分频器寄存器值 (0-65,535)。该值不是分频器;时钟硬件由 clkDivider 分
频,然后加 1。例如,要按 2 对时钟进行分频,则此参数应设置为 1。
返回值:
void。
副作用:
无
Page 10 of 20
Document Number: 001-78720 Rev. **
PSoC Creator™ 组件数据手册
时钟
®
void Clock_SetDividerRegister(uint16 clkDivider, uint8 reset)
说明:
修改时钟分频器,由此修改频率。当时钟分频器寄存器设置为零或被更改为除零以外的值时,
将暂时禁用该时钟,以便更改模式位。如果调用 Clock_SetDivider() 时启用时钟,则必须运行
源时钟。
参数:
uint16 clkDivider:分频器寄存器值 (0-65,535)。该值不是分频器;时钟硬件由 clkDivider 分
频,然后加 1。例如,要按 2 对时钟进行分频,则此参数应设置为 1。
uint8 复位:如果为非零值,重启时钟分频器;当前时钟周期将被截断,新的分频值立即生效。
如果为零,新的分频值将在当前时钟周期结束时生效。
返回值:
void。
副作用:
无
void Clock_SetDividerValue(uint16 clkDivider)
说明:
修改时钟分频器,由此修改频率。当时钟分频器寄存器设置为零或被更改为除零以外的值时,
将暂时禁用该时钟,以便更改模式位。如果调用 Clock_SetDivider() 时启用时钟,则必须运行
源时钟。当前时钟周期将被截断,新的分频值将立即生效。
参数:
uint16 clkDivider:分频值 (1-65535) 或零。如果 clkDivider 为零,则时钟为 65,536 分频。
该函数与 Clock_SetDivider() 之间的差异在于不必考虑 +1 因子。
返回值:
void。
副作用:
无
uint16 Clock_GetDividerRegister(void)
说明:
获得时钟分频器寄存器值。
参数:
void。
返回值:
时钟的分频值减去 1。例如,如果时钟设置为 2 分步频,则返回值为 1。
副作用:
无
Document Number: 001-78720 Rev. **
Page 11 of 20
时钟
PSoC Creator™ 组件数据手册
®
void Clock_SetMode(uint8 clkMode)
说明:
设置用于控制时钟操作模式的标志。此函数仅将标志从 0 改为 1;而已经为 1 的标志保持不
变。要清除标志,请使用 Clock_ClearModeRegister() 函数。该时钟必须在更改模式前禁用。
参数:
uint8 clkMode:位掩码包含要设置的位。对于 PSoC 3 和 PSoC 5 而言,clkMode 应是以下可
选位集合或组合。
•
CYCLK_EARLY:启用初期相位模式。当分频器计时器达到分频值的 1/2 时,输出时钟
将出现上升沿。
•
CYCLK_DUTY:启用 50% 点空比输出。当启用时,输出时钟激活时间约为半个周期。
当禁用时,输出时钟激活时间为一个源时钟周期。
•
CYCLK_SYNC:启用输出同步化到主控时钟。这应针对所有同步化时钟而启用。
有关设置时钟模式的详细信息,请参见《技术参考手册》。有关具体内容,请参见
CLKDIST.DCFG.CFG2 寄存器。
返回值:
void。
副作用:
无
void Clock_SetModeRegister(uint8 clkMode)
说明:
与 Clock_SetMode() 相同。设置用于控制时钟操作模式的标志。此函数仅将标志从 0 改为 1;
而已经为 1 的标志保持不变。要清除标志,请使用 Clock_ClearModeRegister() 函数。该时钟
必须在更改模式前禁用。
参数:
uint8 clkMode:位掩码包含要设置的位。它应是下列可选位设置或组合:
•
CYCLK_EARLY:启用初期相位模式。当分频器计时器达到分频值的 1/2 时,输出时钟
将出现上升沿。
•
CYCLK_DUTY:启用 50% 点空比输出。当启用时,输出时钟激活时间约为半个周期。
当禁用时,输出时钟激活时间为一个源时钟周期。
•
CYCLK_SYNC:启用输出同步化到主控时钟。这应针对所有同步化时钟而启用。
有关设置时钟模式的详细信息,请参见《技术参考手册》。有关具体内容,请参见
CLKDIST.DCFG.CFG2 寄存器。
返回值:
void。
副作用:
无
Page 12 of 20
Document Number: 001-78720 Rev. **
PSoC Creator™ 组件数据手册
时钟
®
uint8 Clock_GetModeRegister(void)
说明:
获得时钟模式寄存器值。
参数:
Void.
返回值:
位掩码表示已启用模式位。有关模式位的详细信息,请参见 Clock_SetModeRegister() 和
Clock_ClearMode() 寄存器说明。
副作用:
无
void Clock_ClearModeRegister(uint8 clkMode)
说明:
清除用于控制时钟操作模式的标志。此函数仅将标志从 1 改为 0;而已经为 0 的标志保持不
变。要清除标志,请使用 Clock_ClearModeRegister() 函数。该时钟必须在更改模式前禁用。
参数:
uint8 clkMode:位掩码包含要清除的位。它应是下列可选位设置或组合:
•
CYCLK_EARLY:启用初期相位模式。当分频器计时器达到分频值的 1/2 时,输出时钟
将出现上升沿。
•
CYCLK_DUTY:启用 50% 点空比输出。当启用时,输出时钟激活时间约为半个周期。
当禁用时,输出时钟激活时间为一个源时钟周期。
•
CYCLK_SYNC:启用输出同步化到主控时钟。这应针对所有同步化时钟而启用。
有关设置时钟模式的详细信息,请参见《技术参考手册》。有关具体内容,请参见
CLKDIST.DCFG.CFG2 寄存器。
返回值:
void。
副作用:
无
Document Number: 001-78720 Rev. **
Page 13 of 20
时钟
PSoC Creator™ 组件数据手册
®
void Clock_SetSource(uint8 clkSource)
说明:
设置时钟的输入源。该时钟必须在更改源之前禁用。必须运行新和旧时钟源。
参数:
uint8 clkSource:它应是下列输入源之一:
•
CYCLK_SRC_SEL_SYNC_DIG:相位延迟主控时钟。
•
CYCLK_SRC_SEL_IMO:内部主振荡器。
•
CYCLK_SRC_SEL_XTALM:4-33 MHz 外部晶振。
•
CYCLK_SRC_SEL_ILO:内部低速振荡器。
•
CYCLK_SRC_SEL_PLL:锁相互环输出。
•
CYCLK_SRC_SEL_XTALK:32.768 MHz 外部晶振。
•
CYCLK_SRC_SEL_DSI_G:DSI 全局输入信号。
•
CYCLK_SRC_SEL_DSI_D:DSI 数字输入信号。
•
CYCLK_SRC_SEL_DSI_A:DSI 模拟输入信号。
有关时钟源的详细信息,请参见《PSoC 技术参考手册》。
返回值:
void。
副作用:
无
void Clock_SetSourceRegister(uint8 clkSource)
说明:
与 Clock_SetSource() 相同 设置时钟的输入源。该时钟必须在更改源之前禁用。必须运行新和
旧时钟源。
参数:
uint8 clkSource:它应是下列输入源之一:
•
CYCLK_SRC_SEL_SYNC_DIG:相位延迟主控时钟。
•
CYCLK_SRC_SEL_IMO:内部主振荡器。
•
CYCLK_SRC_SEL_XTALM:4-33 MHz 外部晶振。
•
CYCLK_SRC_SEL_ILO:内部低速振荡器。
•
CYCLK_SRC_SEL_PLL:锁相互环输出。
•
CYCLK_SRC_SEL_XTALK:32.768 MHz 外部晶振。
•
CYCLK_SRC_SEL_DSI_G:DSI 全局输入信号。
•
CYCLK_SRC_SEL_DSI_D/CYCLK_SRC_SEL_DSI_A:DSI 输入信号。
有关时钟源的详细信息,请参见《PSoC 技术参考手册》。
返回值:
void。
副作用:
无
Page 14 of 20
Document Number: 001-78720 Rev. **
PSoC Creator™ 组件数据手册
时钟
®
uint8 Clock_GetSource(void)
说明:
获得时钟的输入源。
参数:
void。
返回值:
时钟的输入源。有关详细信息,请参见 Clock_SetSourceRegister()。
副作用:
无
void Clock_SetPhase(uint8 clkPhase)
说明:
设置模拟时钟的相位延迟。此函数仅用于模拟时钟。更改相位延迟之前,必须禁用该时钟以避
免产生短时脉冲。
参数:
uint8 clkPhase:总计达到时钟相位延迟,以 1.0 ns 递增。clkPhase 必须介于 1-11(含)。其
他值(包括 0)禁用时钟。
clkPhase 值
PSoC 3 ES2 和更早版本
PSoC 3 ES3 和更新版本 PSoC 5
0
禁用时钟
禁用时钟
1
2
3
4
5
6
7
8
9
10
11
12-15
2.5 ns
3.5 ns
4.5 ns
5.5 ns
6.5 ns
7.5 ns
8.5 ns
9.5 ns
10.5 ns
11.5 ns
12.5 ns
0.0 ns
1.0 ns
2.0 ns
3.0 ns
4.0 ns
5.0 ns
6.0 ns
7.0 ns
8.0 ns
9.0 ns
10.0 ns
禁用时钟
禁用时钟
返回值:
void。
副作用:
无
Document Number: 001-78720 Rev. **
Page 15 of 20
时钟
PSoC Creator™ 组件数据手册
®
void Clock_SetPhaseRegister(uint8 clkPhase)
说明:
与 Clock_SetPhase() 相同。设置模拟时钟相位延迟。此函数仅用于模拟时钟。更改相位延迟之
前,必须禁用该时钟以避免产生短时脉冲。
参数:
uint8 clkPhase:总计达到时钟相位延迟,以 1.0 ns 递增。clkPhase 必须介于 1-11(含)。
其他值(包括 0)禁用时钟。
clkPhase 值
PSoC 3 ES3 和更新版本 PSoC 5
0
禁用时钟
禁用时钟
1
2
3
4
5
6
7
8
9
10
11
12-15
2.5 ns
3.5 ns
4.5 ns
5.5 ns
6.5 ns
7.5 ns
8.5 ns
9.5 ns
10.5 ns
11.5 ns
12.5 ns
0.0 ns
1.0 ns
2.0 ns
3.0 ns
4.0 ns
5.0 ns
6.0 ns
7.0 ns
8.0 ns
9.0 ns
10.0 ns
禁用时钟
禁用时钟
返回值:
void。
副作用:
无
Page 16 of 20
PSoC 3 ES2 和更早版本
Document Number: 001-78720 Rev. **
PSoC Creator™ 组件数据手册
时钟
®
void Clock_SetPhaseValue(uint8 clkPhase)
说明:
设置模拟时钟的相位延迟。此函数仅用于模拟时钟。更改相位延迟之前,必须禁用该时钟以避
免产生短时脉冲。与 Clock_SetPhase() 相同,但 Clock_SetPhaseValue() 添加一个值,然后通
过该值调用 Clock_SetPhaseRegister()。
参数:
uint8 clkPhase:总计达到时钟相位延迟,以 1.0 ns 递增。clkPhase 必须介于 0-10(含)。
其他值禁用时钟。
clkPhase 值
0
1
2
3
4
5
6
7
8
9
10
11-15
返回值:
void。
副作用:
无
PSoC 3 ES2 和更早版本
PSoC 3 ES3 和更新版本 PSoC 5
2.5 ns
3.5 ns
4.5 ns
5.5 ns
6.5 ns
7.5 ns
8.5 ns
9.5 ns
10.5 ns
11.5 ns
12.5 ns
0.0 ns
1.0 ns
2.0 ns
3.0 ns
4.0 ns
5.0 ns
6.0 ns
7.0 ns
8.0 ns
9.0 ns
10.0 ns
禁用时钟
禁用时钟
uint8 Clock_GetPhaseRegister(void)
说明:
获得模拟时钟的相位延迟。此函数仅用于模拟时钟。
参数:
void。
返回值:
模拟时钟(纳秒)的相位。更多信息,请参见 Clock_SetPhaseRegister()。
副作用:
无
固件源代码示例
PSoC Creator 在“查找示例项目”对话框中提供了大量包括原理图和代码示例的示例项目。要获取
组件特定的示例,请打开组件目录中的对话框或原理图中的组件实例。要获取通用的示例,请打
Document Number: 001-78720 Rev. **
Page 17 of 20
时钟
PSoC Creator™ 组件数据手册
®
开开始页或文件菜单中的对话框。根据需要,使用对话框中的滤波器选项可缩小可选项目的列
表。
有关更多信息,请参考 PSoC Creator 帮助中的“查找示例项目”主题。
已知问题
适用于 PSoC 5 的 cy_clock v1.50 组件不就与 Clock_SetDividerRegister() 函数一起使用。此函数
与此硅片同时使用时所发生的已知问题。如果需要此函数,应将组件更新到最新版本。
组件更改
本节介绍组件与以前版本相比的主要更改。
版本
更改说明
1.50.b
在数据表中补充了“已知问题”这部分
1.50.a
在数据表中补充了 Clock_StopBlock() 注解,
更改/影响原因
以说明硅片支持的欠缺。
对数据表进行了少量编辑和更新
1.50
补充了 Clock_StopBlock() API
此函数用来停止时钟,并等待时钟被禁用。更改设置和重
新启用时钟时,要防止短时脉冲。
补充了 Clock_GetPhaseRegister() API
允许固件读取电流相位值。
(仅限模拟)
补充了 Clock_SetPhaseValue() API
此宏返转 Clock_SetPhaseRegister(),并自动添加 1 到
(仅限模拟)
相位值,以提供更多直观接口。
重新命名 Clock_SetPhase() 为
以便与其他名称保持一致。对于兼容性,SetPhase 用作
Clock_SetPhaseRegister()(仅限模拟)
宏,并与 Clock_SetPhaseRegister() 的作用相同。
补充了 Clock_GetSourceRegister() API
允许固件读取电流时钟源。
重新命名 Clock_SetSource() 为
Clock_SetSourceRegister()
以便与其他名称保持一致。对于兼容性,SetSource 用作
Page 18 of 20
宏,并与 Clock_SetSourceRegister() 的作用相同。
Document Number: 001-78720 Rev. **
PSoC Creator™ 组件数据手册
时钟
®
版本
更改说明
更改/影响原因
补充了 Clock_GetModeRegister() API
允许固件读取电流模式标志。
补充了 Clock_SetModeRegister() API
此函数用来替换 Clock_SetMode()。对于兼容性,
SetMode 用作宏,并与 Clock_SetModeRegister() 的作
用相同。Clock_SetModeRegister() 仅将模式标志从 0 改
为 1。这样可以防止意外清除其他模式位,例如,
SYNC。
补充了 Clock_ClearModeRegister() API
此函数类似于 Clock_SetModeRegister(),但只将模式标
志从 1 改为 0。
补充了 Clock_GetDividerRegister() API
允许固件读取电流分频器的值。
补充了 Clock_SetDividerRegister() API
The Clock_SetDivider() API 无条件地复位时钟分频器。
Clock_SetDividerRegister() 支持固件作者控制是否复位
分频器。
补充了 Clock_SetDividerValue() API
此宏返转 Clock_SetDividerRegister(),并自动从分频器
减去 1,以提供更多直观接口。
设置 SSS in Clock_SetDividerRegister()
按 1 分频(分频值为 0),必须设置 SSS 位,以便绕过
分频器。Clock_SetDividerRegister() 函数将自动设置/清
除 SSS,如有必要,可暂时禁用时钟。
更改寄存器定义
更新以符合组件编码准则。
更正了 Clock_SetDivider() API 文档
Clock_SetDivider() API 文档声明 clkDivider 参数分频值
应为 + 1。此分频值应为 -1。文档错误地声明 0 对于
clkDivider 而言是无效值。
将“与总线同步”改为“与主控同步”,并与
更新以符合器件的工作方式。这仅是外观更改。
Configure(配置)对话框的工具提示相
关联。
补充了参数以实现模拟时钟的数字域输出。
来自硬件模拟时钟的信号可用,但该信号以前未在组件上
暴露。
Document Number: 001-78720 Rev. **
Page 19 of 20
时钟
PSoC Creator™ 组件数据手册
®
版本
更改说明
将 `=ReentrantKeil($INSTANCE_NAME .
更改/影响原因
如需重入,请允许用户将这些 API 设置为重新进入。
"_...")` 添加到下列函数中:
void Clock_Start()
void Clock_Stop()
void Clock_StopBlock()
void Clock_StandbyPower()
void Clock_SetDividerRegister()
uint16 Clock_GetDividerRegister()
void Clock_SetModeRegister()
void Clock_ClearModeRegister()
uint8 Clock_GetModeRegister()
void Clock_SetSourceRegister()
uint8 Clock_GetSourceRegister()
void Clock_SetPhaseRegister()
uint8 Clock_GetPhaseRegister()
1.0a
将 CYCLK_ constants 移到
此时从所选器件寄存器映射中生成适用于模式和源的
cydevice.h/cydevice_trm.h。
CYCLK_ constants。这允许时钟组件不再依赖于器件特
定的寄存器值。包含时钟头的 cydevice.h 文件,因此不
必更改用户代码。
在数据表中补充了 CYCLK_ constants
Clock_SetMode() 和 Clock_SetSource() API 当前包含每
描述。
个值的描述。
© 赛普拉斯半导体公司,2010-2012。此处所包含的信息可能会随时更改,恕不另行通知。除赛普拉斯产品的内嵌电路之外,赛普拉斯半导体公司不对任何其他电路的使用承担任何责任。也不根据
专利或其他权利以明示或暗示的方式授予任何许可。除非与赛普拉斯签订明确的书面协议,否则赛普拉斯产品不保证能够用于或适用于医疗、生命支持、救生、关键控制或安全应用领域。此外,
对于可能发生运转异常和故障并对用户造成严重伤害的生命支持系统,赛普拉斯不授权将其产品用作此类系统的关键组件。若将赛普拉斯产品用于生命支持系统中,则表示制造商将承担因此类使
用而招致的所有风险,并确保赛普拉斯免于因此而受到任何指控。
®
PSoC® 是赛普拉斯半导体公司的注册商标,PSoC Creator™ 和 Programmable System-on-Chip™ 是赛普拉斯半导体公司的商标。此处引用的所有其他商标或注册商标归其各自所有者所有。
所有源代码(软件和/或固件)均归赛普拉斯半导体公司(赛普拉斯)所有,并受全球专利法规(美国和美国以外的专利法规)、美国版权法以及国际条约规定的保护和约束。赛普拉斯据此向获许
可者授予适用于个人的、非独占性、不可转让的许可,用以复制、使用、修改、创建赛普拉斯源代码的派生作品、编译赛普拉斯源代码和派生作品,并且其目的只能是创建自定义软件和/或固件,
以支持获许可者仅将其获得的产品依照适用协议规定的方式与赛普拉斯集成电路配合使用。除上述指定的用途之外,未经赛普拉斯的明确书面许可,不得对此类源代码进行任何复制、修改、转
换、编译或演示。
免责声明:赛普拉斯不针对此材料提供任何类型的明示或暗示保证,包括(但不仅限于)针对特定用途的适销性和适用性的暗示保证。赛普拉斯保留在不做出通知的情况下对此处所述材料进行更
改的权利。赛普拉斯不对此处所述之任何产品或电路的应用或使用承担任何责任。对于可能发生运转异常和故障并对用户造成严重伤害的生命支持系统,赛普拉斯不授权将其产品用作此类系统的
关键组件。若将赛普拉斯产品用于生命支持系统中,则表示制造商将承担因此类使用而招致的所有风险,并确保赛普拉斯免于因此而受到任何指控。
产品使用可能受适用的赛普拉斯软件许可协议限制。
Page 20 of 20
Document Number: 001-78720 Rev. **