编辑: 木头飞艇 2019-07-31
Cypress Semiconductor Corporation ?

198 Champion Court ? San Jose, CA 95134-1709 ? 408-943-2600 Document Number: 001-66289 Rev.

** Revised December 29,

2010 16-Bit 定时器数据表 Timer16 V 2.6 001-66289 Rev. ** 16-Bit Timer Copyright ? 2000-2010 Cypress Semiconductor Corporation. All Rights Reserved. 如需获取一个或多个使用此用户模块的完整配置功能性示例项目,请转到 www.cypress.com/psocexampleprojects. 特性与概述 ? 16-bit 通用定时器使用两个 PSoC 模块 ? 源时钟频率高达

48 MHz ? 在计数周期完成后自动重新加载周期参数 ? 时钟捕获速率高达

24 MHz ? 终端计数输出脉冲可用作其他模拟和数字功能的输入时钟 ? 中断选项包括:基于终端计数、捕获 (部分器件中可用)或当计数器达到某预定值时触发中断 16-bit 定时器用户模块提供了具有可编程周期和捕获功能的递减计数器. 可从任何系统时基或外部源选 择时钟和使能信号. 一旦启动,定时器便持续运行,并从周期寄存器重新加载其内部值,直至达到终端计 数. 在终端计数之后的时钟周期中,输出将为高电平. 事件能够通过置位边沿敏感捕获输入信号,来捕获 当前定时器计数值. 在每个时钟周期中,定时器都会将计数与比较寄存器的值进行对比测试,测试两数为 小于 (Less Than) 还是 小于或等于 (Less Than or Equal To) 关系. 可以基于终端计数或比较 信号生成中断. 部分器件系列提供了两个附加功能. 即中断选项包括 捕获中断方式 (interrupt on capture),以及可将比较信号路由到行总线上. 如果您选择的器件上提供了这些选项,则它们会显示在器 件编辑器中. 资源 PSoC? 模块 API 存储器 (字节) 引脚 (每个外 部I/O) 数字 模拟 CT 模拟 SC 闪存 RAM CY8C29/27/24/22/21xxx、CY8C23x

33、CYWUSB

6953、CY7C

64215、CY8CLED02/04/08/

16、CY8CLED0xD、CY8CLED0xG、 CY8CTST

110、CY8CTMG

110、CY8CTST

120、CY8CTMG

120、CY8CTMA

120、CY8C21x

45、CY8CTMA30xx、CY8C28x

45、 CY8CPLC

20、CY8CLED16P

01、 CY8C28xxx

2 0

0 93

0 1 CY8C26/25xxx

2 0

0 142

0 1 [+] Feedback 16-Bit Timer Document Number: 001-66289 Rev. ** Page

2 of

17 Figure 1. 定时器模块图 (对于大多数 PSoC 器件) ,数据路径宽度 n =

16 Figure 2. 定时器模块图 (对于不含终端计数输出的器件) ,数据路径宽度 n =

16 功能说明 Timer16 用户模块利用了两个数字 PSoC 模块,每个模块提供

8 位分辨率. 连续模块彼此关联,因此能够 同时链接内部进位位、终端计数和比较信号. 这样可使模块间的 8-bit 计数、周期和比较寄存器 (分别 对应数据寄存器 DR

0、DR1 和DR2)相互连结,以提供所需的分辨率. 通过这种方法,16-bit 定时器的运 行效率可相当于单片同步定时器. 定时器 API 提供了可用 C 语言和汇编语言调用的多种函数,以便停止或启动定时器操作以及读写各种数 据寄存器. 提供了一个控制寄存器,用于启动和停止定时器用户模块. 当定时器停止时,对周期寄存器的 写入操作会导致将周期寄存器的值复制到计数寄存器中. 当定时器停止时,输出被置于低电平. 定时器启动时,计数寄存器会在每个时钟上升沿出现时递减 1. 零计数之后,再次出现时钟上升沿时,计 数寄存器将从周期寄存器重新加载值. 在下一个下降沿出现时,将触发终端计数事件,并将输出置为高电 平,持续半个时钟周期,或者,在CY8C29/27/24/22/21xxx, CY8C23x33, CYWUSB6953, CY7C64215, CY8CLED02/04/08/16, CY8CLED03D/04D, CY8CNP102, CY8CTST110, CY8CTMG110, CY8CTST120, CY8CTMG120, CY8CTMA120, CY8C21x45, CY8CTMG300, CY8CTST300, CY8CTMA300, CY8CTMA301, CY8CTMA301D, CY8C28x45, CY8CPLC20, CY8CLED16P01, CY8C28xxx 器件系列中可选择持续整个时钟周期. 通过这种方法,定时器可充当时钟分频器. 其周期和频率与源时钟的周期和频率相关,系数等于定时器周 期寄存器的值加 1. Equation

1 [+] Feedback 16-Bit Timer Document Number: 001-66289 Rev. ** Page

3 of

17 周期值为

0 时,将输出移位半个时钟周期的输入源时钟,从而产生一分频的时钟. 在CY8C29/27/24/22/21xxx, CY8C23x33, CYWUSB6953, CY7C64215, CY8CLED02/04/08/16, CY8CLED03D/04D, CY8CNP102, CY8CTST110, CY8CTMG110, CY8CTST120, CY8CTMG120, CY8CTMA120, CY8C21x45, CY8CTMG300, CY8CTST300, CY8CTMA300, CY8CTMA301, CY8CTMA301D, CY8C28x45, CY8CPLC20, CY8CLED16P01, CY8C28xxx 器件系列中,终端计数脉冲宽度必须设置为半个周期. 终端计数输出的工作周期如下所示. Equation

2 此外,当终端计数脉冲宽度设置为整个周期时,工作周期将延长为两倍. Equation

3 周期寄存器值参数可以使用器件编辑器进行指定. 此外,也可以在运行时使用 API 对其进行修改. 在计 数寄存器的值达到

0 (终端计数)之后的周期中,周期寄存器将自动复制到计数寄存器中. 因此,如果通 过API 更改周期,新值将不会立刻生效. 要在运行时做出立即生效的更改,正确的步骤是:停止定时器, 写入新周期值,再重新启动定时器. 在每个输入时钟上,将计数寄存器中的计数与存储在比较寄存器中的值进行比较. 根据器件编辑器中为 CompareType 参数所指定的选项,将执行 小于 (Less Than) 或 小于或等于 (Less Than or Equal To) 对比测试. 当满足比较条件时,将在下一时钟上触发比较事件. 在CY8C29/27/24/22/21xxx, CY8C23x33, CYWUSB6953, CY7C64215, CY8CLED02/04/08/16, CY8CLED03D/04D, CY8CNP102, CY8CTST110, CY8CTMG110, CY8CTST120, CY8CTMG120, CY8CTMA120, CY8C21x45, CY8CTMG300, CY8CTST300, CY8CTMA300, CY8CTMA301, CY8CTMA301D, CY8C28x45, CY8CPLC20, CY8CLED16P01, CY8C28xxx 器件系列中,定时器用户模块提供了比较输出信号作为辅助输出. 在满足比较 条件周期之后的时钟周期中,出现上升沿时,将置位此高电平有效信号. 辅助输出不能直接连接到相邻的 数字 PSoC 模块;

但是,它能连接到其他数字 PSoC 模块,或者通过本地行输出总线连接到 GPIO 引脚. 当捕获输入被置于高电平时,系统时钟也将同步跃变,且计数寄存器中的值将传输到比较寄存器中. 在CY8C26/25xxx 系列中,如果比较类型设置为 小于或等于 (less-than-or-equal),则会在下一个定时 器输入时钟周期上触发比较事件,如果比较类型设置为 小于 (less-than),则会在两个时钟周期之后 触发比较事件. 在CY8C29/27/24/22/21xxx 和CY8CLED04/08/16 系列中,如果中断类型设置为 捕获 (capture),则会在捕获事件后发生中断. 然后,可使用 ReadTimer API 函数读取计数值. 如果满足以 下条件,则会在出现 比较真值 (compare true) 事件时发生中断. 1. 在CY8C26/25xxx 系列中,中断类型必须设置为比较事件触发方式. 在CY8C29/27/24/22/21xxx, CY8C23x33, CYWUSB6953, CY7C64215, CY8CLED02/04/08/16, CY8CLED03D/04D, CY8CNP102, CY8CTST110, CY8CTMG110, CY8CTST120, CY8CTMG120, CY8CTMA120, CY8C21x45, CY8CTMG300, CY8CTST300, CY8CTMA300, CY8CTMA301, CY8CTMA301D, CY8C28x45, CY8CPLC20, CY8CLED16P01, CY8C28xxx 系列中,中断类型必须设置为 捕获 (capture) 触发方式. 2. 必须启用定时器中断 3. 必须启用全局中断 按以下方式计算已用时间. Equation

4 [+] Feedback 16-Bit Timer Document Number: 001-66289 Rev. ** Page

4 of

17 触发中断的方式可为终端计数触发或比较事件触发,在PSoC 器件的 CY8C29/27/24/22/21xxx, CY8C23x33, CYWUSB6953, CY7C64215, CY8CLED02/04/08/16, CY8CLED03D/04D, CY8CNP102, CY8CTST110, CY8CTMG110, CY8CTST120, CY8CTMG120, CY8CTMA120, CY8C21x45, CY8CTMG300, CY8CTST300, CY8CTMA300, CY8CTMA301, CY8CTMA301D, CY8C28x45, CY8CPLC20, CY8CLED16P01, CY8C28xxx 系列中,基 于捕获信号本身触发. 在CY8C26/25xxx 系列中,在使用外部捕获信号执行事件时序时,将中断设置为比 较事件触发........

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题