定时器,计数器和PWM模块.ppt_第1页
定时器,计数器和PWM模块.ppt_第2页
定时器,计数器和PWM模块.ppt_第3页
定时器,计数器和PWM模块.ppt_第4页
定时器,计数器和PWM模块.ppt_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第7章 定时器、计数器和PWM模块,何宾 2011.12,本章内容,本章介绍了定时器、计数器、PWM模块,以 及使用PWM方式控制LED的实现。在介绍定时 器、计数器和PWM模块时,分别介绍了这些模块 的功能和一些典型应用。在介绍PWM控制LED的 实现中,详细介绍了使用PSoC Creator实现的设计 方法和设计流程,定时器模块-定时器模块功能概述,定时器模块提供了捕获定时器用于确定硬件事件的时 间间隔。定时器提供了一种简单的方法来精确的确定实时 事件的时序,几乎不需要CPU的干预。定时器元件与其它 模拟和数字元件一起使用来建立更复杂的外设。 定时器模块的实现有两种方式:固定功能和UDB。

2、当 布局选项使用固定模式配置定时器模块时,定时器被放置 在芯片的固定功能块内。当使用固定功能的配置时,定时 器为一个简单的定时装置,如下图所示,定时器模块-定时器模块功能概述,其功能包括: 只有8/16位模式; 在只有计数停止和/或捕获 时产生中断; 只在上升沿捕获; 必须运行在连续模式,不可使用触发模式; 禁止7位捕获计数器,定时器固定功能实现,定时器模块-定时器模块功能概述,而当使用UDB的配置时,计数器具有可配置的复杂功 能,如右图所示,其功能主要包括: 8/16/24/32位分辨率; 可配置的捕获模式; 4个深度的捕获FIFO; 可选的捕获边沿计数器; 可配置的触发和中断; 可配置的软

3、件/硬件使能; 连续或一次运行模式,图 定时器UDB实现,定时器模块-定时器模块的应用,1默认的定时器 如下图所示,实时的TC输出表示计数值是否到达了预 设的停止计数值(0)。周期是可编程的,范围为12*分 辨率-1。 默认的捕获功能配置成捕获Capture输入的上升沿。在 固定功能时,只允许连续模式,默认定时器的波形,定时器模块-定时器模块的应用,2高/低时间测量模式 定时经常用来测量信号高和低得时间。定时器配置成 使实现更加简单。通过配置Trigger Mode为“Rising Edge” 和Capture Mode为“Either Edge”,定时器将在周期值的第 一个上升沿启动,之后在

4、输入信号的每个跳变沿捕获,高/低时间测量模式,定时器模块-定时器模块的应用,如上图所示,只要从捕获FIFO中读取数据,捕获的 高和低时间就可以按照下式进行计算: 高时间#1=(Period-Capture#1)*时钟频率; (1) 低时间#2=(Capture#1-Capture#2)*时钟频率;(2) 高时间#2=(Capture#2-Capture#3)*时钟频率;(3,计数器模块-计数器模块功能概述,计数器模块的实现有两种方式:固定功能和UDB。 当布局选项使用固定模式配置定时器模块时,计数器 被放置在芯片的固定功能块内。当使用固定功能的配置 时,计数器为一个简单的计数器,如下图所示,计

5、数器模块-计数器模块功能概述,如右图所示,其功能包括: 8/16位计数模式; 只有向下计数; 在复位时,重新加载和停止计数; 只有停止计数时,产生中断,固定功能计数器,计数器模块-计数器模块功能概述,而当使用UDB的配置时,计数器具有可配置的复杂功 能,其功能主要包括: 8/16/24/32位的计数模式; 可配置的向上、向下或者向上 和向下计数模式; 可选择的比较输出; 具有使能和复位输入来和其它 元件同步; 一个可选择的捕获输入,在上升 沿时将当前的计数值复制到存储区域。只要捕获FIFO有空间,CPU可以在任何时候读取捕获值,而没有时序限制。捕获FIFO允许保存最多4个捕获值,UDB模式下计

6、数器实现,计数器模块-计数器模块的应用,1. 默认的计数器实现 如下图所示,计数器的默认配置提供了最基本的计 数功能用于在输入时钟上升沿简单的增加计数值。当复 位的时候,计数器归零。TC终止计数指示计数值是否达 到了预设的计数初值。计数值的范围:12*分辨率-1,默认计数器实现波形,计数器模块-计数器模块的应用,比较输出是一个实时比较器,将计数值和在比较配 置所定义的值进行比较。默认的最大计数值为2*分辨率- 1,比较的值设置为最大计数值的1/2,计数器模块-计数器模块的应用,2. 时钟分频器的实现 如果输入到计数器的时钟使用了默认的周期和比较 参数设置,则比较器的输出为50%的占空比,频率为

7、输 入时钟频率的1/256。默认是计数值在0-127时,输出为 高,否则为低。下图给出了时钟分频器的输出波形。该 分频器的比较值设置为2,则结果是将输入时钟6分频, 有50%的占空比,时钟分频器的实现波形,计数器模块-计数器模块的应用,3频率计数器的实现 添加硬件使能功能到基本的计数器将使用户很容易的 实现频率的计数功能。如果使能信号被一个未知周期的信 号驱动,比如一个1KHz的信号,从00开始向上计数,这 样很容易的确定输入信号的频率,频率计数器的实现,PWM模块-PWM模块概述,脉冲宽度调制模块(Pulse Width Modulator,PWM) 提供了比较输出用于产生单独或连续的时序和

8、控制信号。 PWM提供了一种简单的方法来产生精确的复杂实时事 件。 PWM模块可以产生最多两个左/右对齐的PWM输 出,1个中心对齐或双沿PWM输出。 PWM输出被双缓冲用于避免由于运行时占空比改变 所产生的毛刺。左对齐PWM是通常使用的PWM形式。中 心对齐PWM经常使用在AC电机控制来保证相位的对齐。 双沿PWM被优化用于功率转换,在功率转换中必须调整 相位,PWM模块-PWM模块概述,可选的死区控制及可调的死区时间提供了互补的输 出,在每个过渡过程输出为低。互补输出和死区时间经 常用在驱动半桥配置的功率器件,以避免短路对器件造 成的损害。当使能一个kill输入时,能禁止死区输出。 PWM

9、模块提供了3个kill模式来支持多重应用环境,PWM模块-PWM模块概述,提供两个硬件抖动(dither)模式用于提高PWM的灵 活性。 第一种抖动模式在资源或时钟频率不包含一个标准的实现 时(在一个PWM计数器内),增加2位的有效分辨率; 第二种是使用数字输入在两个PWM输出之间选择其中的一个,用于在功率转换时快速的过渡过程的响应。 PWM模块的实现有两种方式:固定功能和UDB。当 布局选项使用固定模式配置PWM模块时,PWM被放置 在芯片的固定功能块内,PWM模块-PWM模块概述,当使用固定功能的配置时,其功能包括: 无计数值访问,即ReadCapture()和ReadCounter()不

10、可用; 只有一种输出模式,无中心对齐、双沿、抖动或两个输出模式; 只有异步Kill模式; 无触发功能; 只有连续运行模式; 只有软件使能模式; 简化的死区功能,限制在0-3死区计数; 当使能死区时,简化I/O,即TC和CMP1变成了PH1和PH2,固定功能PWM模块图,PWM模块-PWM模块概述,而当使用UDB的配置时,计数器具有可配置的复杂 功能,其功能主要包括: 8/16位分辨率; 多个脉冲宽度调制模式; 可配置的触发器; 可配置的捕获模式; 可配置的软件/硬件使能; 可配置的死区; 多种Kill模式; 定制的配置工具,PWM模块-PWM模块概述,图 UDB功能PWM模块图,PWM模块-P

11、WM输出模式,1一个输出 一个输出PWM只有一个输出,该输出由一个单独的 比较值控制。如下图所示,波形为左对齐,比较模式设 置为“大于”或者“大于或等于”;或者为右对齐,比较模式 设置为“小于”或者“小于或等于,一个输出的波形,PWM模块-PWM输出模式,2两个输出 两个输出的PWM是一个默认的配置。两个PWM输出 使用两个比较值独立定义和控制。如下图所示,每个输 出可以象一个输出那样左对齐或者右对齐,两个输出的波形,PWM模块-PWM输出模式,3. 双沿 双沿PWM使用两个比较输出和两个比较模式产生单 个的PWM输出。如下图所示,最终的输出为两个独立 定义比较值和比较模式输出信号的“与”。比

12、较值、比较 模式和周期值在运行时是可以设置和改变的,双沿输出的波形,PWM模块-PWM输出模式,4中心对齐 中心对齐的PWM和其它模式的实现是不同的。期望 的输出要求周期计数器从0开始,计数到周期值,然后 计数器递减到0。在这种模式下,周期值是最终输出周 期的一半。在该功能中,使用单独比较值和比较模式。 下图给出了中心对齐PWM的波形,中心对齐PWM波形,PWM模块-PWM死区控制,死区是PWM模块可选的配置。如下图所示,当死区 控制使能时,两个新的输出ph1和ph2将出现在PWM模块 符号中。 死区输出作用于单独的PWM输出。除了两个PWM输 出模式外其它模式,死区输出和单独的PWM输出相关

13、。 在两个输出模式下,死区输出只在pwm1输出上实现。在 所有的死区模式中,原始输出、ph1、ph2是可用的,PWM死区控制,PWM模块-PWM死区控制,死区能被配置成1-4个时钟周期或者1-256。1-4个周 期的配置,通过在PLD内实现计数器(而不是使用数据 通路)来减少资源的使用量。当选择1-256范围的死区 时,选择UDB阵列内的数据通路和必要的逻辑,PWM控制LED显示的实现,这个工程将利用PSoC芯片实现基本的软件和硬件 功能。它将单独控制两个LED的闪烁,一个通过硬件实 现,一个通过软件实现。硬件控制的LED灯通过使能一 个数字端口和脉宽调制产生一个运行周期来控制LED灯 的闪烁

14、。软件控制的LED灯使用软件使能的数字端口和 一个简单的延迟函数控制LED一定的频率的闪烁,PWM控制LED显示的实现-创建和配置工程,1在计算机上的桌面上,选择开始-所有程序- Cypress-PSoC Creator 2.0-PsoC Creator 2.0。打开 PSoC Creator软件; 2在PSoC Creator 2.0软件的主界面下,选择File- New-Project.; 3在New Project窗口,选择Empty PSoC3 Design 模板,并将工程命Ex1_LED_with_PWM。选择工程保 存路径,点击“OK”按钮,PWM控制LED显示的实现-放置和配置P

15、WM模块,下面给出放置并配置PWM模块的步骤,这些步骤包 括: 1拖动并在工作窗口放置PWM器件(Component Catalog-Digital- Functions-PWM)。 2双击原理图的器件PWM_1,打开配置窗口。 3按如下方式配置PWM,PWM控制LED显示的实现-放置和配置PWM模块,图7.17 Configure标签界面,PWM控制LED显示的实现-放置和配置PWM模块,如图7.17所示,在Configure标签下,进行如下配置: Name: PWM_1 Implementation : UDB(使用通用的数字块实现) Resolution: 8-Bit PWM Mode:

16、 One Output Period: 100 CMP Value 1: 50 CMP Value Type 1: Less or Equal Dead Band: Disabled(禁止使用“死区”功能,PWM控制LED显示的实现-放置和配置PWM模块,如图7.18,在Advanced标签下,进行如下配置,图7.18 Advanced标签配置界面,PWM控制LED显示的实现-放置和配置PWM模块,Enable Mode: Hardware Only Run Mode: Continuous Trigger Mode: None Kill Mode: Disabled Capture Mode

17、: None Interrupt: None(不产生中断) 点击“OK”按扭,退出属性设置界面,PWM控制LED显示的实现-添加和配置硬件数字输出端口,下面给出添加并配置数字输出端口硬件的步骤,其步 骤主要包括: 1拖动并将数字端口的器件放到工作窗口(Component Catalog -Ports and Pins-Digital Output Pin)。 2双击原理图中的Pin_1打开配置窗口 3按照如下方式配置数字端口: 如图7.19所示,在Type标签下,进行如下参数配置,PWM控制LED显示的实现-添加和配置硬件数字输出端口,图7.19 Type标签配置界面,PWM控制LED显示的实

18、现-添加和配置硬件数字输出端口,Name: LED1 选中Digital Output选项 选中HW Connection选项 Number of Pins: 1 在General标签下进行如下配置: Drive Mode: Strong Drive 其余选项均为默认值,PWM控制LED显示的实现-添加和配置软件数字输出端口,下面给出添加并配置软件数字输出端口的步骤,其 步骤主要包括: 1拖动并将数字端口放置到工作窗口(Component Catalog -Ports and Pins-Digital Output Pin) 2双击原理图中的Pin_1元件,打开配置窗口。如图 7.20所示,在

19、Type标签下,进行如下参数配置,PWM控制LED显示的实现-添加和配置软件数字输出端口,图7.20 Type标签配置界面,PWM控制LED显示的实现-添加和配置软件数字输出端口,Name: LED2。 Number of Pins: 1 选中Digital Output选项,但不选中HW Connection选项(表示没有硬件连接,由软件控制)。 在General标签下进行如下配置: Drive Mode:Strong Drive 其余选项均为默认值,PWM控制LED显示的实现-添加和配置时钟模块,下面给出添加并配置时钟模块的步骤,其步骤主要包 括: 1从元件库选择时钟模块(Componen

20、t Catalog - System-Clock),将其拖到原理图工作窗口界面中。 2如图7.21所示,双击Clock_1按如下方式进行配 置,PWM控制LED显示的实现-添加和配置时钟模块,图7.21 Clock_1配置界面,PWM控制LED显示的实现-添加和配置时钟模块,在Configure Clock标签下,配置参数如下: Name: Clock_1 Source:ILO (1.000 kHz) Divider:10 其余均为默认值。 3点击“OK”按扭,退出配置界面,PWM控制LED显示的实现-添加逻辑高低控制端口,下面给出添加逻辑高低控制端口的步骤,其步骤主 要包括: 1从元件库选择逻辑低模块(Component Catalog - Digital-Logic-Logic Low 0),将其拖到原理图工 作窗口界面中。 2从元件库选择逻辑低模块(Component Catalog Digital-Logic-Logic High 1),将其拖到原理图 工作窗口界面中。 3. 这两个端口将分别连接到PWM模块的reset和 enable端口上,PWM控制LED显示的实现-连接元器件,使用连线工具按钮 ,按照图7.22将IP核连接在一 起,图7.22 连接后的原理图结构,PWM控制LED显示的实现-配置引

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论