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

NXP LPC 状态可配置的定时器(SCT)的更多相关文章

  1. Windows 10 如何使用「系统还原」功能备份系统状态和配置

    https://www.sysgeek.cn/windows-10-system-restore/ 在 Windows 10 系统中,「系统还原」功能旨在创建配置快照,并在检测到系统更改时将其工作状态 ...

  2. SpringCloud系列三:SpringSecurity 安全访问(配置安全验证、服务消费端处理、无状态 Session 配置、定义公共安全配置程序类)

    1.概念:SpringSecurity 安全访问 2.具体内容 所有的 Rest 服务最终都是暴露在公网上的,也就是说如果你的 Rest 服务属于一些你自己公司的私人业务,这样的结果会直接 导致你信息 ...

  3. DHCPv6,IPv6的有状态自动配置

    DHCPv6,IPv6的有状态自动配置 DHCPv6的工作原理与DHCPv4极其相似,但有一个明显的差别,那就是支持IPV6新增的编址方案.DHCP提供了一些自动配置没有的选项.在自动配置中,根本没有 ...

  4. Nginx 高级配置-状态页配置

    Nginx 高级配置-状态页配置 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 建议将nginx的监控状态的值通过zabbix或者Open-Falcon之类的监控工具来监控状态,并 ...

  5. 使用spring配置quartz定时器

    quartz是石英钟的意思,所以用这个名字来做定时器的框架名称再适合不过.一年前做项目的时候有用过这个框架,当时没有整理,今天刚好新的商城系统也需要定时器.想要达到的效果是:每天的固定时间,比如凌晨3 ...

  6. ADC配置成定时器触发的启发

    百度文库:https://wenku.baidu.com/view/99d39413f78a6529647d5344.html STM32关于使用定时器触发ADC转换的解决办法和详细说明 本人在使用S ...

  7. Haproxy状态监控配置教程

    https://www.cnblogs.com/tianciliangen/p/7985881.html 方法一:在defaults段增加如下配置: stats refresh 30s #统计页面自动 ...

  8. WEB缓存系统之varnish代理以及健康状态检测配置

    前文我们聊了下varnish的缓存项修剪配置,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/12666406.html:今天我来说一下varnish作为代理服务 ...

  9. Cortex-M3(NXP LPC 1788) 启动代码

    startup_LPC177x_8x.s启动代码分析. 参考资料: Cortex-M3 (NXP LPC1788)之启动代码分析 ARM启动过程(Cortex-M3 NXP LPC1768为例) ;/ ...

随机推荐

  1. MVC4下配置log4net 五部曲

    第一步:把log4net.dll 编译成Framework 4.0 第二步:找到项目的Properties下的AssemblyInfo.在最下面添加:[assembly: log4net.Config ...

  2. Git克隆

    用法1:Git clone <repository> <directory> 将<repository>指向的版本库创建一个克隆到<directory> ...

  3. oracle学习

    在平时的工作学习中,经常需要使用到oracle数据库,将平时用到的一些技巧记录在这里,以便以后随时可以翻阅. 1.日期类型的比较 插入日期时,经常会使用sysdate来插入数据,但sysdate插入的 ...

  4. (转).NET 4.5中使用Task.Run和Parallel.For()实现的C# Winform多线程任务及跨线程更新UI控件综合实例

    http://2sharings.com/2014/net-4-5-task-run-parallel-for-winform-cross-multiple-threads-update-ui-dem ...

  5. 使用SqlBulkCopy, 插入整个DataTable中的所有数据到指定数据库中

    string sql=""; dbhelper.ExecuteNonQuery(sql); DataTable dt = dbhelper.GetDataTable(sql); i ...

  6. loadrunner11录制脚本打开IE9失败,浏览器崩溃,显示无法响应

    解决办法:工具-->Internet选项-->高级-->禁止ie启用第三方浏览器扩展

  7. CCF 201612-1 最大波动 (水题)

    问题描述 小明正在利用股票的波动程度来研究股票.小明拿到了一只股票每天收盘时的价格,他想知道,这只股票连续几天的最大波动值是多少,即在这几天中某天收盘价格与前一天收盘价格之差的绝对值最大是多少. 输入 ...

  8. DBHelp数据处理类

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  9. Windows 8.1 应用再出发 - 几种布局控件

    本篇为大家介绍Windows 商店应用中几种布局控件的用法.分别是Canvas.Grid.StackPanel 和 VariableSizedWrapGrid. 1. Canvas Canvas使用绝 ...

  10. 十六进制转十进制函数_C编程

    /**************************十六进制转十进制函数**************************//*函数原型:uint htd(uint a)/*函数功能:十六进制转十 ...