NXP LPC 状态可配置的定时器(SCT)
状态可配置的定时器(SCT)
前言
正在申请专利的状态可配置的定时器(SCT),是一个复杂的,但易于配置的定时器,它提供前所未有的灵活性,使工程师们在未来证明他们的设计,并减少进入市场的时间。
在其最简单的配置中,它为设计师提供了更多的定时器或多个高分辨率的脉冲宽度调制器(PWMs),其分辨率<1ns。它也允许设计师配置先进的定时操作,包括那些需要复杂的电机控制功能的操作,同时满足严格的开发时间表。
SCT是一个定时器捕获单元,拥有高度灵活的、事件驱动的状态机。它给计时领域带来了两个熟悉的概念——事件和状态,从而使多种定时、计数、输出调制、输入捕捉的操作成为可能。它是一个拥有8个输入,16个输出的定时器系统,拥有16个匹配/捕获寄存器,16个事件和32个状态。它可以配置为两个16位定时器或一个32位定时器。
通过将定时器阵列同状态机相结合,SCT可以实现复杂的功能,包括生成事件控制的PWM波形,ADC同步和无需CPU干预的死区时间控制。它在广泛的应用中简化了用户定义的波形和控制信号的设计,包括电源转换,照明,电机控制和音频应用。
SCT在恩智浦Cortex-M4的LPC4300,以及Cortex-M3的LPC1800系列上可用。
概述
SCT 提供更多的定时器,高分辨率的PWM,并能够产生复杂波形
SCT 是一个复杂的,但易于配置的定时器
SCT 是一个可编程的和灵活的外设
SCT 使工程师在未来证明他们的设计
SCT 通过消除设计的复杂性,从而降低进入市场时间
SCT 关闭负载的CPU带宽;一旦编程完毕,SCT 可以独立于CPU核心运行
核心特色
状态可配置的定时器(SCT)是一个定时器/捕捉单元,再加上一个高度灵活的,事件驱动状态机模块。它包含:
8个输入
16个输出
16个匹配/捕获寄存器
16个事件
32个状态
操作
例子
下面的应用实例是很简单的,仅用于解释SCT的功能。更加复杂的情况,如应用于电机控制,数字电源,太阳能,照明市场等仍适用于SCT。请参阅题为“交流感应电机控制,对称PWM信号发生器”的应用笔记。
易于使用
1. 设计状态机
2. 设置寄存器/定时器
LPC_SCT->CTRL |= (1UL << 7);
LPC_SCT->TIM = 0x4534;
LPC_SCT->ENB &= 0x8001;
3. 让SCT开始工作!
有一个例子库可用。
恩智浦的优势
SCT - 抖动功能
50MHz的系统频率意味着总能得到20ns的PWM分辨率
较高的频率可以得到更高的分辨率
或经过平均周期数→抖动
在16个周期的时间内抖动
在此期间内,有可能滞后或提前的匹配事件:1,2,3,4,5,6,7,8提前的或推迟的匹配条件
定义的匹配条件 X 可以调整为:X±n/16→非整数!
假设分辨率为20ns,平均PWM分辨率变为20*1/16=1.25ns
例如:10KHZ的PWM→相当于16位精度
产品
SCT在恩智浦Cortex-M4的LPC4300,以及Cortex-M3的LPC1800系列上可用。
LPC1800系列
LPC4300系列
工具
SCT 的工具
恩智浦的SCT 工具支持LPC1800“ - ”版本(首次修订)。发布后,同一工具将可用于LPC1800 A 版本和LPC4300 A 版本。
SCT 工具(用于LPC18xx的状态可配置的定时器)使用Windows V2.0(2011年07月8日)
LPCXpresso
Red State 的 SCT 状态机发生器包含在LPCXpresso V4.1中,于2011年9月28日发布。
LPCXpresso下载