时基外围装置制造方法

文档序号:6533232阅读:155来源:国知局
时基外围装置制造方法
【专利摘要】本发明涉及一种微控制器,其具有可编程时基(100),其中所述时基具有用以起动所述时基的计时器或计数器(110)的触发输入,且其中所述时基可经配置以在接收到触发信号后即刻在第一模式中操作以产生多个计时器/计数器事件信号(190)直到设定控制寄存器中的复位位且在第二模式中操作以产生单个计时器/计数器事件信号,且其中所述时基可经配置以在第三模式中操作以产生预定义数目个计时器/计数器事件信号,其中所述预定义数目由寄存器(180)的多个位定义。
【专利说明】时基外围装置
[0001] 相关申请案的夺叉参考
[0002] 本申请案主张于2012年2月1日提出申请的第61/593,435号美国临时申请案的 权益,所述临时申请案的全文并入本文中。

【技术领域】
[0003] 本发明涉及一种时基外围单元,特定来说涉及一种具有经改进触发模式的时基外 围装置。

【背景技术】
[0004] 微控制器(MCU)包括微处理器、存储器及多个外围装置,其中一些外围装置可经 配置以与MCU独立地操作。典型MCU通常包括呈计时器的形式的可编程时基作为这些外围 装置中的一者。此计时器可经编程以提供系统功能的触发信号。典型MCU时基外围装置经 设计以作为连续运行的计时器操作。此特征通常经实施以使得时基外围装置可提供其它系 统功能的复杂触发。通常,所述功能性置于目的地功能内。举例来说,常规16位时基可具 有包含如图2中所展示的单发能力的触发模式。所述触发模式使用外部信号来告知时基何 时起动。时基保持处于复位直到被触发。图1展示常规时基的第一模式,其中触发信号起 动计时器。计时器然后无限期地运行且产生事件信号直到用户清除位CCPxSTAT. TRIG,这致 使计时器停止。图2展示以不同方式操作的单发模式。在此模式中,时基将在事件的产生 之后停止。


【发明内容】

[0005] 需要一种用于经改进时基的方法及系统。
[0006] 根据一实施例,一种微控制器可包括可编程时基,其中所述时基包括用以起动所 述时基的计时器或计数器的触发输入且可经配置以在接收到触发信号后即刻在第一模式 中操作以产生多个计时器/计数器事件信号直到设定控制寄存器中的复位位且在第二模 式中操作以产生单个计时器/计数器事件信号,且其中所述时基可经配置以在第三模式中 操作以产生预定义数目个计时器/计数器事件信号,其中所述预定义数目由寄存器的多个 位定义。
[0007] 根据另一实施例,所述多个位可为所述控制寄存器的位。根据另一实施例,所述控 制寄存器可为第一控制寄存器且所述多个位可为与所述时基相关联的第二控制寄存器的 位。根据另一实施例,可通过设定第一模式位来设定所述第一模式且可通过设定第二模式 位来设定所述第二模式。根据另一实施例,所述第一位及所述第二位可为与所述时基相关 联的第三控制寄存器的位。根据另一实施例,可通过设定所述第二模式位并将所述多个位 设定到一值>〇来设定所述第三模式。根据另一实施例,所述时基可为捕获比较脉冲宽度调 制(CCP)单元或多输出CCP(MCCP)单元。
[0008] 根据示范性实施例,一种微控制器可包括可编程时基,其中所述时基包括用以起 动所述时基的计时器或计数器的触发输入且其中所述时基可经配置以在接收到触发信号 后即刻在第一模式中操作以产生多个计时器/计数器事件信号直到设定控制寄存器中的 复位位且在第二模式中操作以产生单个计时器/计数器事件信号,且其中所述时基可经配 置以在第三模式中操作以产生预定义数目个计时器/计数器事件信号,其中所述预定义数 目由寄存器的多个位定义。
[0009] 根据另一实施例,所述多个位可为所述控制寄存器的位。根据另一实施例,所述控 制寄存器可为第一控制寄存器且所述多个位为与所述时基相关联的第二控制寄存器的位。 根据另一实施例,可通过设定第一模式位来设定所述第一模式且可通过设定第二模式位来 设定所述第二模式。根据另一实施例,所述第一位及所述第二位可为与所述时基相关联的 第三控制寄存器的位。根据另一实施例,可通过设定所述第二模式位并将所述多个位设定 到一值>0来设定所述第三模式。根据另一实施例,所述微控制器可进一步包括捕获比较脉 冲宽度调制(CCP)单元或多输出CCP(MCCP)单元。根据另一实施例,所述时基包括与时基 计数器及周期寄存器耦合的比较器。根据另一实施例,所述时基进一步可包括可操作以控 制所述时基以在接收到触发信号后即刻产生单个事件信号的单发逻辑单元,其中所述事件 信号相对于所述触发信号延迟达存储于所述周期寄存器中的预定义值。根据另一实施例, 所述时基可进一步包括可操作以控制所述时基以在接收到触发信号后即刻产生预定义数 目个事件信号的计数器,其中事件之间的每一时间周期由存储于所述周期寄存器中的值及 由所述计数器定义的事件信号的所述数目来定义。根据另一实施例,所述微控制器可进一 步包括用以针对每一事件产生多个预定义控制信号的逻辑。
[0010] 根据另一实施例,一种用于借助于微控制器中的可在三个模式中的至少一者中操 作的时基来产生事件信号的方法可包括:当在第一模式中操作时:-在接收到触发输入后, 即刻起动所述时基的计时器或计数器且产生多个计时器/计数器事件信号直到设定控制 寄存器中的复位位;当在第二模式中操作时:-在接收到触发输入后,即刻产生单个计时器 /计数器事件信号;及当在第三模式中操作时:-在接收到触发输入后,即刻产生预定义数 目个计时器/计数器事件信号,其中所述预定义数目由寄存器的多个位定义。
[0011] 根据所述方法的另一实施例,可通过设定第一模式位来设定所述第一模式且可通 过设定第二模式位来设定所述第二模式。根据所述方法的另一实施例,可通过设定所述第 二模式位并将所述多个位设定到一值>〇来设定所述第三模式。根据所述方法的另一实施 例,可通过将时基计数器的值与存储于寄存器中的周期值进行比较来产生所述事件信号。 根据所述方法的另一实施例,所述第二模式中的所述单个事件信号可由单发逻辑单元控 制,所述单发逻辑单元可操作以控制所述时基以在接收到触发信号后即刻产生单个事件信 号,其中所述事件信号相对于所述触发信号延迟达存储于所述周期寄存器中的预定义值。 根据所述方法的另一实施例,计数器可计数事件信号的数目以限制事件信号的产生。根据 所述方法的另一实施例,所述方法可进一步包括:针对每一事件产生多个预定义控制信号。 根据所述方法的另一实施例,当在所述第三模式中操作时,可控制捕获比较单元以存储多 个捕获值。根据所述方法的另一实施例,当在所述第三模式中操作时,可控制电容时间测量 单元以捕获多个时间测量。根据所述方法的另一实施例,当在所述第三模式中操作时,可控 制模/数转换器以存储多个经转换值。根据所述方法的另一实施例,当在所述第三模式中 操作时,可控制直接存储器存取控制器以执行多个数据传送。根据所述方法的另一实施例, 当所述时基产生事件信号时,所述微控制器的CPU可处于低功率睡眠模式中。

【专利附图】

【附图说明】
[0012] 图1展示根据各种实施例的在第一模式中操作的时基外围装置的时序图。
[0013] 图2展示根据各种实施例的在第二模式中操作的时基外围装置的时序图。
[0014] 图3展示根据各种实施例的在第三模式中操作的时基外围装置的时序图。
[0015] 图4展示根据各种实施例的时基的框图。
[0016] 图5展示不同比较模式的模块框图。
[0017] 图6展示根据实施例的微控制器中的某些元件的另一框图。
[0018] 图7展示根据另一实施例的又一框图。

【具体实施方式】
[0019] 单发模式仅允许一个循环。然而,一些应用可期望多个循环。举例来说,当接收到 触发输入时,以(例如)100 μ sec间隔执行若干个(例如,八个)ADC转换。在另一实例中, 当接收到触发输入时,可依序触发(举例来说)3个引脚。在又一实例中,当接收到触发时, 可调度到串行端口的4个DMA写入。
[0020] 为能够执行此些灵活多事件功能,根据各种实施例,将计数器添加到时基以使单 发模式延长达N个循环,如图4中所展示。图4中所展示的示范性时基外围装置100包括由 同步与触发控制单元130控制的16位或32位时基计数器110。同步与触发控制单元130 可接收可来自内部或外部源的多个同步信号170。比较器140与时基计数器110及周期寄 存器150耦合以产生事件信号190。事件信号190也可反馈到多路复用器120 (举例来说) 以复位计数器110。此外,提供单发单元170,所述单发单元可直接控制时基计数器110或 如图4中所展示而与同步与触发控制单元130耦合。额外计数器180接收事件信号190且 此外将控制信号提供到同步与触发控制单元130。同样,计数器180也可直接控制时基计数 器110。此外,根据其它实施例,由单发单元170及/或计数器180提供的控制信号可馈送 到多路复用器120。如图4中所展示,提供模式控制单元160以用于产生相应控制信号以视 需要控制多路复用器120及时基100的所有其它单元。为实现更佳概述,图2中未描绘这 些连接。
[0021] 如图4中的示范性实施例中所展示的时基100可在三个不同模式中操作,如图1 到3中所展示。在第一模式中,一旦起动时基计数器110,便将产生未定义数目个循序事件 信号190。停止这些循序事件信号的唯一方式是通过软件或手动地复位时基100。在第二 模式中,如图2中所展示,触发产生单发事件。换句话说,一旦触发计数器110,便产生单个 事件信号190,此后单发单元170复位时基以等待另一触发。在第三模式中,将额外计数器 180预设到预定义值。为此目的,可将预设寄存器提供或集成到计数器单元180中。在已 通过多路复用器120接收触发之后,时基计数器110产生多个循序事件信号,如图3中所展 示。每当产生事件信号时,使计数器180递减。一旦计数器180产生溢出,系统100即被复 位且将再次等待另一触发。也可通过递增计数器结合比较器及相关联寄存器来产生如上文 所阐释的递减计数器180的功能。
[0022] 根据各种实施例,输出比较外围装置可致使自动触发外部测量达预定次数(举例 来说,三次),以使得MCU可保持处于睡眠模式中以节约电力。根据各种实施例,可通过借助 输出比较外围装置施加脉冲于三个装置输出引脚且然后测量第四输入引脚上的时间延迟 来进行所述测量。在不具有此特征的情况下,MCU将需要唤醒且在每一测量之间运行代码, 从而导致额外的功率消耗。
[0023] 通过在时基外围装置内提供单发及事件计数功能,其可充当任何其它外围装置或 外部系统的通用灵活触发源。事件计数器180使得时基外围装置能够从单个硬件事件170 产生多个周期性事件190,从而节省CPU额外开销及功率消耗两者。可使用各种实施例来使 例如ADC转换及电感位置感测等周期性事件自动化或触发如由外围装置195所指示的电容 时间测量单元。可使用其它触发目的地且可视需要经由多路复用器或驱动器在装置内分配 触发事件190。在CPU处于睡眠模式中时可发生多个事件,从而节省功率消耗。
[0024] 如上文所述,根据各种实施例,时基外围装置100包括事件计数器180。事件信号 可为单个事件信号或可进一步经处理以产生多个后续相依事件信号以执行动作。当接收到 触发信号时,时基外围装置100将重复此动作达规定次数。因此,各种实施例可有助于使感 测应用自动化以使得装置(微控制器)的其它组件可保持处于睡眠模式中达较长时间以节 省功率。针对例如计量装置、健身装置等电池供电的应用,此可为极重要的。
[0025] 如图4中所展示,提供可根据一个实施例提供3个位的额外计数器0SCNT 180。然 而,也可使用其它配置。时基100具有允许外部信号170起动时基计数器110的触发功能。 所述时基将保持处于复位直到接收到触发脉冲Trig_in。在正常操作下,所述时基将起动计 数且将保持计数直到在软件中取消触发,如上文所阐释及图1中所展示。通过清除相关联 特殊功能寄存器中的TRIG状态位来取消触发。
[0026] 在如图2中所展示的单发模式中,所述时基将计数达一个计数周期,然后复位且 停止。所述单发模式允许用户基于硬件信号事件而形成单个延迟或脉冲。
[0027] 根据图3中所展示的模式,0SCNT[2:0]位(单发计数)进一步扩展单发模式的能 力。如果三个位定义额外计数器,那么可形成高达八个事件。因此,当将0SCNT位设定到非 零值时,计时器将计数达多个周期且然后停止。0SCNT值规定计数周期的数目以延长单发事 件。如果OSCNT = 011b,那么时基将计数达四个周期,然后复位且停止。此展示于图3的时 序图中。
[0028] 各种实施例具有减少原本将需要的快速、"突发"任务的软件额外开销且能够使外 围装置自动化而处于睡眠中以减少功率消耗的优点。
[0029] 图5展示(举例来说)32位微控制器中的根据各种实施例的可用以控制时基的各 种功能的控制寄存器。因此,每一寄存器配置为32位寄存器。其它实施例可使用其中不需 要提供所有功能以允许如上文所论述的操作的较多或较少寄存器。
[0030] 如在以下功能描述中可见,时基的控制寄存器可经设计以提供多种功能。CCPx控 制寄存器1-3的以下位提供以下功能性:
[0031] 位310PSSRC :输出后定标器源选择位
[0032] 1 =输出后定标器定标模块触发输出事件
[0033] 0 =输出后定标器定标时基中断事件
[0034] 此控制位可在输入捕获模式中不具有功能。
[0035] 未实施的位30-28:读取为'0
[0036] 位27_240PS[3:0]:捕获/比较/PWM中断输出后定标选择位
[0037] 1111 =每第16时基周期匹配中断CPU
[0038] 1110 =每第15时基周期匹配中断CPU
[0039] …
[0040] 0100 =每第5时基周期匹配中断CPU
[0041] 0011 =每第4时基周期匹配或在4个输入捕获事件之后中断CPU
[0042] 0010 =每第3时基周期匹配或在3个输入捕获事件之后中断CPU
[0043] 0001 =每第2时基周期匹配或在2个输入捕获事件之后中断CPU
[0044] 0000 =在每一时基周期匹配或每一输入捕获事件之后中断CPU
[0045] 位 23TRIGEN :CCPx 触发启用位
[0046] 1 =启用时基的触发操作
[0047] 0=停用时基的触发操作
[0048] 位220NESH0T :单发模式启用位
[0049] 1 =启用单发触发模式;触发持续时间由CCPxC0N3. 0SCNT[2:0]设定
[0050] 0 =停用单发触发模式
[0051] 位21SYNC0SEL :同步输出选择位
[0052] 1 =将替代信号用作模块同步输出信号(参见表2-1)
[0053] 0 =模块同步输出信号为时基复位/翻转事件
[0054] 位20_16SYNC[4:0]:捕获/比较/PWM同步源选择位
[0055] 11111 =时基处于自由运行模式中且在FFFF处翻转
[0056] 11110 =时基与源#30同步
[0057] …
[0058] 00001 =时基与源#1同步
[0059] 00000 =时基自同步且在FFFF处翻转或与周期寄存器匹配
[0060] 位150N :模块启用位
[0061] 1 =借助由M0D[3:0]控制位规定的操作模式启用模块
[0062] 〇 =停用模块
[0063] 位14FRZ :调试模式位中的冻结
[0064] 1 =当仿真器处于调试模式中时,模块冻结操作
[0065] 0 =当仿真器处于调试模式中时,模块继续操作
[0066] 注意:FRZ在操作模式中为"U-0"且在调试模式中为"R/W-0"。
[0067] 位13SIDL :在空闲模式位中停止
[0068] 1 =当装置进入空闲模式时,中止模块操作
[0069] 0 =在空闲模式中继续模块操作
[0070] 位12SLPEN :睡眠模式启用位
[0071] 1 =模块继续在睡眠模式中操作
[0072] 0 =模块不在睡眠模式中操作
[0073] 位11TSYNC :时基时钟同步位
[0074] 1 =模块时基时钟与内部系统时钟同步;时序限制适用
[0075] 0 =模块时基时钟与内部系统时钟不同步
[0076] 注意:当由CS[2:0]选择的时钟源来源于系统时钟源且与系统时钟源同步时,此 控制位不具有功能。
[0077] 位10-8CS [2:0]:捕获/比较/PWM X时钟选择位
[0078] 111 = clk_in[7]
[0079] 110 = clk_in[6]
[0080] 101 = clk_in[5]
[0081] 100 = clk_in[4]
[0082] Oil = clk_in[3]
[0083] 010 = clk_in[2]
[0084] 001 = clk_in[l]
[0085] 000 =时基时钟为TCY
[0086] 位7-6TPS [1:0]:捕获/比较/PWM x时基预定标选择位
[0087] 11 = 1:64 预定标器
[0088] 10 = 1:16 预定标器
[0089] 01 = 1:4预定标器
[0090] 00 = 1:1预定标器
[0091] 位5T32 :32位时基选择位
[0092] 1 =将32位时基用于选定计时器、单边缘输出比较或输入捕获功能
[0093] 0 =将16位时基用于选定计时器、单边缘输出比较或输入捕获功能
[0094] 注意:在双边缘输出比较模式中32位操作不可用。位4CCM :捕获/比较模式选择 位
[0095] 1 =模块操作为输入捕获外围装置
[0096] 0 =模块作为输出比较外围装置操作
[0097] 位 3-0M0D [3:0] :CCP 模式选择位
[0098] CCM = 1 (输入捕获模式)
[0099] lxxx =保留
[0100] 0111 =保留
[0101] 0110 =保留
[0102] 0101 =每第16上升边缘捕获
[0103] 0100 =每第4上升边缘捕获
[0104] 0011 =每上升及下降边缘捕获
[0105] 0010 =每下降边缘捕获
[0106] 0001 =每上升边缘捕获
[0107] 0000 =每上升及下降边缘捕获(边缘检测模式)
[0108] CCM = 0(输出比较模式)
[0109] 1111 =外部输入模式;停用脉冲产生器。由ICS[2:0]位选择源
[0110] 1110 =保留
[0111] 1101 =保留
[0112] 11〇〇=保留
[0113] 1011 =保留
[0114] 1010 =保留
[0115] 1〇〇1 =保留
[0116] 1〇〇〇 =保留
[0117] 0111=可变频率脉冲模式
[0118] 0110 =中心对准的脉冲比较模式-缓冲
[0119] 0101 =双边缘比较模式-缓冲
[0120] 0100 =双边缘比较模式
[0121] 0011 = 16位/32位单边缘模式-在比较匹配时双态切换输出
[0122] 0010 = 16位/32位单边缘模式-在比较匹配时将输出驱动为低
[0123] 0001 = 16位/32位单边缘模式-在比较匹配上驱动输出为高
[0124] 0000 = 16位/32位计时器模式-停用输出功能
[0125] CCPx控制寄存器2的以下位可提供以下功能性:
[0126] 位310ENSYNC :输出启用同步位
[0127] 1 =在下一时基复位或翻转时发生通过输出启用位的更新
[0128] 0 =通过输出启用位的更新立即发生
[0129] 未实施的位30:读取为'0
[0130] 位29_240CxEN :输出启用/引导控制位
[0131] 1 = OCx引脚由CCP模块控制且产生输出比较或PWM信号
[0132] 0 = OCx引脚并不由CCP模块控制;所述引脚可用于端口逻辑或在所述引脚上多 路复用的另一外围装置
[0133] 时基及输入捕获模式可不具有任何外部输出引脚功能;因此,OCxEN位在这些模 式中可不具有任何效应(mccp_io_pX_port_en = 0)。OCxA-OCxF引脚可用于端口逻辑或另 一外围装置。
[0134] 位23_22ICGSM[1:0]:输入捕获门控源模式控制位
[0135] 11 =保留
[0136] 10 =单发模式;来自门控源的事件将停用未来捕获事件(ICDIS = 1)
[0137] 01 =单发模式;来自门控源的事件将启用未来捕获事件(ICDIS = 0)
[0138] 00 =电平敏感模式;来自门控源的高电平将启用未来捕获事件;低电平将停用未 来捕获事件
[0139] 此位可在计时器模式、输出比较模式或PWM模式中不具有效应。
[0140] 未实施的位21:读取为'0'
[0141] 位20_19A0UTSEL[1:0]:辅助输出信号选择位
[0142] 11 =信号输出取决于模块操作模式
[0143] 10 =信号输出取决于模块操作模式
[0144] 01 =信号输出取决于模块操作模式
[0145] 00 =在mccp_aux_out上无信号输出
[0146] 位18_16ICS[2:0]:输入捕获源选择位
[0147] 111=捕获源 #8
[0148] 110=捕获源 #7
[0149] 101=捕获源 #6
[0150] 100=捕获源 #5
[0151] 011=捕获源 #4
[0152] 010=捕获源 #3
[0153] 001=捕获源 #2
[0154] 000 =捕获源 #1
[0155] 位15RSEN :CCPx PWM重新起动启用位
[0156] 1 =在关机输入已结束之后,CCPxSTAT. ASE位在下一 PWM周期开始时自动清除
[0157] 0 =必须在软件中清除CCPxSTAT. ASE以在输出引脚上重新开始PWM活动
[0158] 位14ASDGM :CCPx自动关机门模式启用位
[0159] 1 =等待直到下一时基复位或翻转以使关机发生
[0160] 0 =关机事件立即发生
[0161] 未实施的位13:读取为'0
[0162] 位12SSDG :CCPx软件关机/门控制位
[0163] 1 =手动地迫使自动关机、计时器时钟门或输入捕获信号门事件(设定ASDGM位仍 适用)
[0164] 0 =正常模块操作
[0165] 未实施的位11-8:读取为'0
[0166] 位7:0ASDG[7:0] :CCPx自动关机/门控源启用位
[0167] 1 =启用 ASDG 源 η
[0168] 0 =停用 ASDG 源 η
[0169] CCPx控制寄存器3的以下位可提供以下功能性:
[0170] 位310ETRIG :触发控制位上的输出启用
[0171] 1 =针对经触发模式(TRIGEN = 1),模块不驱动经启用输出引脚直到被触发
[0172] 0=正常输出引脚操作
[0173] 位 26_240SCNT[2:0]:单发计数字(2)
[0174] 111 =将单发触发事件延长7个时基计数循环(总共8个时基周期)
[0175] 110 =将单发触发事件延长6个时基计数循环(总共7个时基周期)
[0176] 101 =将单发触发事件延长5个时基计数循环(总共6个时基周期)
[0177] 100 =将单发触发事件延长4个时基计数循环(总共5个时基周期)
[0178] 011 =将单发触发事件延长3个时基计数循环(总共4个时基周期)
[0179] 010 =将单发触发事件延长2个时基计数循环(总共3个时基周期)
[0180] 001 =将单发触发事件延长1个时基计数循环(总共2个时基周期)
[0181] 000 =不延长单发触发事件。
[0182] 未实施的位27:读取为'0
[0183] 位26-240UTM[2:0]:输出模式控制位
[0184] 111 =保留
[0185] 110 =输出扫描模式
[0186] 101 =有刷DC输出模式,前向
[0187] 100 =有刷DC输出模式,反向
[0188] 011 =保留
[0189] 〇1〇 =半桥输出模式
[0190] 001 =推挽输出模式
[0191] 000 =可引导信号输出模式
[0192] 未实施的位23-22:读取为'0
[0193] 位21P0LACE :CCP输出引脚OCxA、OCxC及OCxE极性控制位
[0194] 1 =输出引脚极性为低态有效
[0195] 0 =输出引脚极性为高态有效
[0196] 位20P0LBDF :CCP输出引脚OCxB、OCxD及OCxF极性控制位
[0197] 1 =输出引脚极性为低态有效
[0198] 0 =输出引脚极性为高态有效
[0199] 位19-18PSSACE[1:0] :PWM输出引脚0CxA、0CxC及OCxE关机状态控制位 [0200] 11 =当关机事件发生时,将引脚驱动为有效
[0201] 10 =当关机事件发生时,将引脚驱动为无效
[0202] Ox =当关机事件发生时,将引脚三态化
[0203] 位17-16PSSBDF[1:0] :PWM输出引脚0CxB、0CxD及OCxF关机状态控制位
[0204] 11 =当关机事件发生时,将引脚驱动为有效
[0205] 10 =当关机事件发生时,将引脚驱动为无效
[0206] Ox =当关机事件发生时,将引脚三态化
[0207] 未实施的位15-6:读取为'0
[0208] 位5-0DT [5:0]:捕获/比较/PWM空载时间选择位
[0209] 111111 =在互补输出信号之间插入63个空载时间延迟周期
[0210] …
[0211] 000010 =在互补输出信号之间插入2个空载时间延迟周期
[0212] 000001 =在互补输出信号之间插入1个空载时间延迟周期
[0213] 000000 =停用空载时间逻辑
[0214] 图6展示微控制器的框图,其中仅描绘基本功能。中央处理单元(CPU) 260可与可 编程时基250耦合以进行配置。可如图4所示体现时基250。然而,所述时基可具有额外逻 辑以产生外围装置可能需要的更多的复杂信号。可编程时基250可接收用于选择的多个时 钟信号以及多个触发输入及/或同步信号。如上文所述,可编程时基250可根据其操作模 式产生各种各样的事件信号。这些信号可经由专用总线或通过个别控制线提供到相应外围 装置210到240。取决于功能性,每外围单元可提供一或多个控制线。在图6展示的实例 中,提供捕获比较单元210,其在接收到触发信号后可即刻将一或多个计时器值存储于相关 联FIFO存储器中。为此目的,可将触发信号序列供应到捕获比较单元210。替代地或结合 地,多个触发线可连接到捕获比较单元,其中可编程时基250在不同控制线上产生循序信 号。因此,举例来说,可使用三个单独控制线捕获三个不同计时器值。
[0215] 图6还展示可由事件信号触发的模/数转换器(ADC)单元220。此处,举例来说, 原始触发信号可用以起动转换,其中由可编程时基产生的事件信号可用以将经转换值读取 到FIFO或寄存器中。
[0216] 作为另一实例,图6展示可经触发以执行从存储器到外围装置(或反之亦然)的 任何类型的数据传送的直接存储器存取(DMA)控制器230。
[0217] 图6中所展示的又一实例为可由一或多个事件信号(其由可编程时基250产生) 触发的脉冲宽度调制(PWM)单元240。
[0218] 可在考虑以下目标的情况下设计如图6中所展示的模块:
[0219] -将时基、输入捕获、比较及PWM功能组合到单个外围装置中以简化在装置层级处 的信号路由。
[0220] -捕获存在于由 申请人:制造的8位产品上的CCP及ECCP模块的外观及感觉,但形 成适合于16位及32位通用MCU产品空间的外围装置。
[0221] -提供类似于存在于现有微控制器装置上的现有输出比较及输入捕获外围装置的 功能性
[0222] -在PWM模式中提供20ns或更佳边缘分辨率
[0223] -在PWM模式中提供所需功能性以支持选定范围的马达控制、电力供应及照明应 用。
[0224] -形成可适用于所有类型的微控制器的通用模块。
[0225] 根据各种实施例,可提供以下功能:
[0226] -内部时基及周期寄存器
[0227] -用于时基的输入时钟预定标器
[0228] -用于ADC转换的输出触发
[0229] -用于模块中断事件或触发的输出后定标器
[0230] -用于选定操作模式的32位时基
[0231] -时基模式
[0232] -捕获模式:
[0233] -类似于icap_v4模块的特征集合
[0234] -外部事件上的时基的16位捕获
[0235] _4深捕获缓冲器
[0236] -捕获源输入多路复用器
[0237] -输出比较模式:
[0238] -类似于ocmp_v4模块的特征集合
[0239] -单边缘比较模式
[0240] -双边缘比较模式
[0241] -中心对准的比较模式
[0242] -可变频率脉冲模式
[0243] -外部输入模式
[0244] -用于输出比较的输出控制功能:
[0245] -单个输出可引导模式
[0246] -有刷DC前向与反向模式
[0247] -具有空载时间延迟的半桥
[0248] -推挽PWM模式
[0249] -具有可编程源的自动关机及关机状态
[0250] -可编程输出极性
[0251] 根据一实施例,时基模块的多个实例可实施于装置上以提供许多捕获通道、比较 或PWM功能性。根据另一实施例,可支持多个装置输出引脚上的PWM输出。因此,可实现以 下功能:
[0252] -空载时间控制逻辑
[0253] -半桥、推挽及有刷DC操作模式
[0254] -PWM输出引导
[0255] 先进PWM特征集合可实施于具有两个、四个或六个输出引脚的装置上以简化I/O 引脚多路复用要求。
[0256] 当作为触发器操作时,计时器可在单发模式中操作。通过设定CCPxCONl. 0NESH0T 位而启用单发模式。在单发模式中,计时器保持处于复位直到触发事件发生。此事件设定 TRIG位且计时器开始计数。当计时器翻转到OOOOh时,TRIG位将由硬件清除。此使计时器 保持处于复位直到下一触发事件,从而形成单发计时器。
[0257] CCPxC0N3.0SCNT[2:0]控制位允许将单发触发事件延长达一个以上时基计数循 环。举例来说,当模块需要在触发事件处形成一个以上脉冲时,此特征是有用的。
[0258] 图7展示经触发应用中的模块计时器的典型应用。在图7中,触发事件可由另一 0C模块、计时器模块、1C模块、模拟比较器或在顶部层级处连接的任何其它功能产生。
[0259] 以下操作配置对于触发时基来说是可能的:
[0260] 1.从外部源接收触发信号且时基时钟源tmr_clk是有效的。此为模块的正常操作 配置。2.从外部源接收触发信号且时基时钟源tmr_clk为无效的。模块必须在经触发操 作可开始之前请求时基时钟源。当装置处于低功率状态中时,可使用第二配置。当从外部 源接收触发时,模块将启用用于时基的选定时钟源。当所述时钟源可用时,模块将开始经触 发操作。如果模块处于单发触发模式中,那么将在于硬件中清除TRIG状态位时停用时基时 钟源。时基将保持停用直到接收到新触发信号。此操作使模块保持处于低功率状态中直到 其被需要。触发信号由外部源或依靠低频/低功率时钟操作的内部源产生。如果SLPEN = 1,那么模块将在装置进入睡眠模式时继续请求时基时钟源。
【权利要求】
1. 一种微控制器,其包括可编程时基,其中所述时基包括用以起动所述时基的计时器 或计数器的触发输入,且其中所述时基可经配置以在接收到触发信号后即刻在第一模式中 操作以产生多个计时器/计数器事件信号直到设定控制寄存器中的复位位且在第二模式 中操作以产生单个计时器/计数器事件信号,且其中所述时基可经配置以在第三模式中操 作以产生预定义数目个计时器/计数器事件信号,其中所述预定义数目由寄存器的多个位 定义。
2. 根据权利要求1所述的微控制器,其中所述多个位为所述控制寄存器的位。
3. 根据权利要求1所述的微控制器,其中所述控制寄存器为第一控制寄存器且所述多 个位为与所述时基相关联的第二控制寄存器的位。
4. 根据权利要求1所述的微控制器,其中通过设定第一模式位来设定所述第一模式且 通过设定第二模式位来设定所述第二模式。
5. 根据权利要求4所述的微控制器,其中所述第一位及所述第二位为与所述时基相关 联的第三控制寄存器的位。
6. 根据权利要求5所述的微控制器,其中通过设定所述第二模式位并将所述多个位设 定到一值>0来设定所述第三模式。
7. 根据权利要求1所述的微控制器,其进一步包括捕获比较脉冲宽度调制CCP单元或 多输出CCP MCCP单元。
8. 根据权利要求1所述的微控制器,其中所述时基包括与时基计数器及周期寄存器耦 合的比较器。
9. 根据权利要求8所述的微控制器,其中所述时基进一步包括可操作以控制所述时基 以在接收到触发信号后即刻产生单个事件信号的单发逻辑单元,其中所述事件信号相对于 所述触发信号延迟达存储于所述周期寄存器中的预定义值。
10. 根据权利要求8所述的微控制器,其中所述时基进一步包括可操作以控制所述时 基以在接收到触发信号后即刻产生预定义数目个事件信号的计数器,其中事件之间的每一 时间周期由存储于所述周期寄存器中的值及由所述计数器定义的事件信号的所述数目来 定义。
11. 根据权利要求8所述的微控制器,其进一步包括用以针对每一事件产生多个预定 义控制信号的逻辑。
12. -种用于借助于微控制器中的可在三个模式中的至少一者中操作的时基来产生事 件信号的方法,其包括: 当在第一模式中操作时: 在接收到触发输入后,即刻起动所述时基的计时器或计数器且产生多个计时器/计数 器事件信号直到设定控制寄存器中的复位位; 当在第二模式中操作时: 在接收到触发输入后,即刻产生单个计时器/计数器事件信号; 及当在第三模式中操作时: 在接收到触发输入后,即刻产生预定义数目个计时器/计数器事件信号,其中所述预 定义数目由寄存器的多个位定义。
13. 根据权利要求12所述的方法,其中通过设定第一模式位来设定所述第一模式且通 过设定第二模式位来设定所述第二模式。
14. 根据权利要求13所述的方法,其中通过设定所述第二模式位并将所述多个位设定 到一值>0来设定所述第三模式。
15. 根据权利要求12所述的方法,其中通过将时基计数器的值与存储于寄存器中的周 期值进行比较来产生所述事件信号。
16. 根据权利要求15所述的方法,其中所述第二模式中的所述单个事件信号由单发逻 辑单元控制,所述单发逻辑单元可操作以控制所述时基以在接收到触发信号后即刻产生单 个事件信号,其中所述事件信号相对于所述触发信号延迟达存储于所述周期寄存器中的预 定义值。
17. 根据权利要求15所述的方法,其中计数器计数事件信号的所述数目以限制事件信 号的所述产生。
18. 根据权利要求15所述的方法,其进一步包括:针对每一事件产生多个预定义控制 信号。
19. 根据权利要求12所述的方法,其中当在所述第三模式中操作时,控制捕获比较单 元以存储多个捕获值。
20. 根据权利要求12所述的方法,其中当在所述第三模式中操作时,控制电容时间测 量单元以捕获多个时间测量。
21. 根据权利要求12所述的方法,其中当在所述第三模式中操作时,控制模/数转换器 以存储多个经转换值。
22. 根据权利要求12所述的方法,其中当在所述第三模式中操作时,控制直接存储器 存取控制器以执行多个数据传送。
23. 根据权利要求12所述的方法,其中当所述时基产生事件信号时,所述微控制器的 CPU处于低功率睡眠模式中。
【文档编号】G06F1/14GK104160354SQ201380012766
【公开日】2014年11月19日 申请日期:2013年1月31日 优先权日:2012年2月1日
【发明者】斯蒂芬·鲍林, 詹姆斯·E·巴特林 申请人:密克罗奇普技术公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1