状态可配置的定时器(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下载sso