CN110244590B - 多功能定时器 - Google Patents

多功能定时器 Download PDF

Info

Publication number
CN110244590B
CN110244590B CN201810195580.2A CN201810195580A CN110244590B CN 110244590 B CN110244590 B CN 110244590B CN 201810195580 A CN201810195580 A CN 201810195580A CN 110244590 B CN110244590 B CN 110244590B
Authority
CN
China
Prior art keywords
counter
sub
output
counters
timer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810195580.2A
Other languages
English (en)
Other versions
CN110244590A (zh
Inventor
魏寿强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xiaohua Semiconductor Co ltd
Original Assignee
Huada Semiconductor Chengdu Co ltd
Huada Semiconductor Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huada Semiconductor Chengdu Co ltd, Huada Semiconductor Co ltd filed Critical Huada Semiconductor Chengdu Co ltd
Priority to CN201810195580.2A priority Critical patent/CN110244590B/zh
Publication of CN110244590A publication Critical patent/CN110244590A/zh
Application granted granted Critical
Publication of CN110244590B publication Critical patent/CN110244590B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0423Input/output
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P23/00Arrangements or methods for the control of AC motors characterised by a control method other than vector control
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25257Microcontroller

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Inverter Devices (AREA)

Abstract

本发明涉及一种多功能定时器,用于电机控制,包括计数器和与计数器相连接的第一触发器,其中所述计数器包括多个子计数器和多个子计数器多路复用器,所述第一触发器包括多个PWM比较发生模块,所述多个子计数器多路复用器的输出分别连接至各PWM比较发生模块。由此,实现IO选择面宽、PCB布局更灵活。

Description

多功能定时器
技术领域
本发明涉及多功能定时器(MFT),主要用于三相电机高精度稳定控制模块。尤其涉及多功能定时器,其通过结合A/D转换器(ADC)模块,可提供各种不同应用的电机控制方案。此外,多功能定时器的电机控制紧急输入(EMI)可用于在发生紧急情况下停止电机驱动,由此实现对电机的保护,比如过流保护。
背景技术
目前,市面上主流的定时器的功能较为单一,例如,现有的定时器的功能单一的作为计数和计时或者用于产生脉宽调制信号(PWM信号)。但本领域中,存在多种需求,例如对计数器精度也会有多种需求,有些应用中要求精度较低,有些应用中要求精度较高。因此,用户可能需要既能匹配低精度要求,也能匹配高精度要求的电路。由于这些不同需要的电路所匹配的IO接口也将不同,通过提供多功能定时器,可与多种需求的电路兼容。
发明内容
本发明的示例性实施例的目的在于克服现有技术中的上述的和/或其他的问题。能以简单的结构,提供可变位数的计数器模块,使其能够选择输出精度。
根据本发明的一方面,提供一种多功能定时器,用于电机控制,包括计数器和与计数器相连接的第一触发器,其特征在于,所述计数器包括多个子计数器和多个子计数器多路复用器,所述第一触发器包括多个PWM比较发生模块,所述多个子计数器多路复用器的输出分别连接至各PWM比较发生模块。
根据本发明的另一方面,提供一种用于实现多功能定时器的可变位数计数的方法,用于电机控制,该多功能定时器包括计数器和与计数器相连接的第一触发器,所述计数器包括计数器控制器、译码器、多个子计数器和多个子计数器多路复用器,所述第一触发器包括多个PWM比较发生模块,该方法包括如下步骤:由所述计数器控制器向所述多个子计数器、译码器输出控制信号;由所述译码器根据所述控制信号,生成译码信号来决定工作的子计数器的数量;以及由所述子计数器多路复用器根据来自所述译码器的信号来选择所输入的子计数器的输出。
根据本发明的进一步的方面,提供一种存储介质,存储有在计算装置上执行以便实现本发明的方法的指令。
附图说明
图1是根据本发明的一实施方式的多功能定时器的示意性框图。
图2是根据本发明的一实施方式的PWM比较发生模块的示意性框图。
图3是根据本发明的一实施方式的ADC启动触发模块的示意性框图。
图4是根据本发明的一实施方式的与第一PWM比较发生模块联动的计数器的情形示意图。
图5是根据本发明的一实施方式的与第二PWM比较发生模块联动的计数器的情形示意图。
图6是根据本发明的一实施方式的与第NPWM比较发生模块发生联动的计数器的情形示意图。
图7是根据本发明的一实施方式的锯齿波计数模式的示意图。
图8是根据本发明的一实施方式的三角波计数模式的示意图。
图9是根据本发明的一实施方式的比较输出模块的示意性框图。
图10是根据本发明的一实施方式的PWM直通模式下的输出波形示例。
图11是根据本发明的一实施方式的死区定时器模式波形的示例。
图12是根据本发明的另一实施方式的死区定时器模式波形的示例。
图13是根据本发明的一实施方式的死区定时器滤波模式波形的示例。
图14是根据本发明的另一实施方式的死区定时器滤波模式波形的示例。
具体实施方式
以下将描述本发明的具体实施方式,需要指出的是,在这些实施方式的具体描述过程中,为了进行简明扼要的描述,本说明书不可能对实际的实施方式的所有特征均作详尽的描述。应当可以理解的是,在任意一种实施方式的实际实施过程中,正如在任意一个工程项目或者设计项目的过程中,为了实现开发者的具体目标,为了满足***相关的或者商业相关的限制,常常会做出各种各样的具体决策,而这也会从一种实施方式到另一种实施方式之间发生改变。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本发明公开的内容相关的本领域的普通技术人员而言,在本公开揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本公开的内容不充分。
除非另作定义,权利要求书和说明书中使用的技术术语或者科学术语应当为本发明所属技术领域内具有一般技能的人士所理解的通常意义。本发明专利申请说明书以及权利要求书中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“一个”或者“一”等类似词语并不表示数量限制,而是表示存在至少一个。“包括”或者“包含”等类似的词语意指出现在“包括”或者“包含”前面的元件或者物件涵盖出现在“包括”或者“包含”后面列举的元件或者物件及其等同元件,并不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,也不限于是直接的还是间接的连接。
图1是根据本发明的一实施例的定时器的示意性框图。在图1所示的定时器的示意性框图中,定时器1包括与APB总线相连接的计数器2、与该计数器2连接的第一触发器11和第二触发器12。具体地,计数器2中输入有来自APB总线的信号和外部时钟信号EXT_CLK。
此外,图1中示出的定时器中,第一触发器11包括N个PWM比较发生模块,即第一PWM比较发生模块、第二PWM比较发生模块、......、以及第NPWM比较发生模块。第一触发器11的输出信号为PWM1、PWM2、......、PWMN。N代表任意的自然数,可以是2、3、4.....9等等。对N的数量没有特别的限定,只要满足具体应用需求的数量即可。
在图1中示出的定时器中,第二触发器12由多个ADC启动触发模块和一个触发多路复用器tmux构成。多个ADC启动触发模块分别表示为第一ADC启动触发模块、第二ADC启动触发模块、......、第NADC启动触发模块等。他们的输出信号分别为ADC_TRG。此外,该触发多路复用器tmux的输出信号为VTRG。N代表任意的自然数,可以是2、3、4.....9等等。对N的数量没有特别的限定,只要满足具体应用需求的数量即可。此外,本领域普通技术人员将理解当仅将定时器用作计数器时,无需额外设置该第二触发器(即ADC启动触发模块),可使用计数器2和第一触发器(PWM比较发生模块)11之间的协作来实现灵活性高的计数功能。
图2是根据本发明的一实施方式的PWM比较发生模块的示意性框图。在图2中示出了第一PWM比较发生模块,但本领域普通技术人员将理解该框图仅仅是示意性的,而且并非仅限于第一PWM比较发生模块。第一PWM比较发生模块、第二PWM比较发生模块、第NPWM比较发生模块可具有相同结构,也可具有不同结构,对他们的结构和关系没有特殊的限定。
如图2所示,PWM比较发生模块与总线相连接,且输入有计数器的输出cntdata0。具体的,该第一PWM比较发生模块包括比较控制器、基准值设定寄存器、计数寄存器以及比较输出模块。比较控制器的输出分别输入至该基准值设定寄存器、计数寄存器以及比较输出模块。此外,比较输出模块的输入为来自基准值设定寄存器的OCR0和OCR1、来自比较控制器的PCR:WMD、以及来自计数寄存器的cntdata0。最终,由比较输出模块输出脉宽调制信号PWM0、PWM1。
本领域普通技术人员将理解,第二PWM比较发生模块的输出为PWM2、PWM3,如此类推,第NPWM比较发生模块的输出为PWM2(N-1)、PWM2N-1。
接着,参照图3,对ADC启动触发模块进行说明。图3是第一ADC启动触发模块的示意性框图。本领域普通技术人员将理解,多个ADC启动触发模块可具有相同结构,因此无需一一说明,其它ADC启动触发模块的结构可参见第一ADC启动触发模块的结构。当然,多个ADC启动触发模块亦可具有不同结构,但本文中对此不做特殊限定。
在图3中,示出了第一ADC启动触发模块包括:与总线相连接的ADC启动触发控制器、多路复用器1(mux1)、多路复用器2(mux2)、多路复用器3(mux3)、触发比较器、触发计数器以及等值比较器等。mux1、mux2、mux3又称为第一多路复用器、第二多路复用器和第三多路复用器。ADC启动触发控制器(ADCT register)设置设定值(AVR)、第一选择值(ATR.OCS)、第二选择值(ATR.TRGMD)、比较控制信号(compare control singal)、计数控制信号(countcontrol singal)。总线信号、ZIC[3:0]输入至ADC启动触发控制器,ADC启动触发控制器向触发比较器输出AVR以及比较控制信号,向触发计数器输出计数控制信号,向第一多路复用器输出第二选择值(ATR.TRGMD)、向第二多路复用器输出第一选择值(ATR.OCS),向第三多路复用器输出设定值(AVR)。第二多路复用器根据比较基准值OCR0、OCR1和ADC启动触发控制器的第一选择值(ATR.OCS),输出选中的值-OCRX。等值比较器根据OCRX和计数数据cntdata0,两者相等时输出高电平的e1,不相等时输出低电平的e1。第三多路复用器根据0、AVR和e1,输出m3,触发计数器根据计数控制信号和m3,在cntdata1=AVR时输出c2。第一多路复用器输入有c1、c2和第二选择值ATR.TRGMD,根据这些输入输出ADC_TRG信号。
图4-6是根据本发明的一实施方式所示的计数器的示意性框图。参见这些附图,对计数器2进行进一步的说明。其中,图4是根据本发明的一实施方式所示的与第一PWM比较发生模块联动的计数器的情形示意图,图5是根据本发明的一实施方式所示的与第二PWM比较发生模块联动的计数器的情形示意图,图6是根据本发明的一实施方式所示的与第NPWM比较发生模块发生联动的计数器的情形示意图。
图4-6的示意性框图的结构大致相似,因此,以图4为代表,对该电路结构进行说明。
计数器2与APB总线相连,具体包括如下模块:计数器控制器、子计数器1、子计数器2、......、子计数器n、译码器以及多路复用器(亦称作子计数器多路复用器)。图中,子控制器的输出分别表示为CNTDATA11、CNTDATA2、......、CNTDATAn,译码器的输出设为bsel=1~n,即bsel可以是1、2、......、或n。最终,多路复用器输出C1,与第一PWM比较发生模块联动。
具体地,图4-6是与比较发生模块联动的计数器的情况的框图,其中1~n个,每个子计数器可以独立工作,也可以如图所示的联合为多位的计数器,计数器控制器与APB总线连接,计数器控制器设定计数器控制信号,CNRn.STOP,CNRn.BSEL,CNRn.CLEAR,CNRn.DCLK,CNRn.BUFEN,CNRn.CNTMD,CNRn.ECKEN,CMRn.PIM,CMRn.ZIM,CMRn.PIC,CMRn.ZIC,CNRn.ICLR,CNRn.IRQZF,CNRn.ICLREN,CNRn.IRQZEN,设定周期值PSRn。
CNRn.BSEL经过译码器可以选择子计数器工作个数和周期值的组合位数,比如当bsel=1时,一个计数器工作,周期值为8bit,当bsel=2时,两个子计数器工作,周期值为16bit,第一个子计数器周期为第一8bit,第二个子计数器为第二8bit,并将cntdata值(计数值)输出给oco和adct模块,以此类推。此外,当一个字计数器工作的周期值为n bit,且bsel=x时,计数器的周期值成为n×x bit。用户可根据需要,选择工作的字计数器的数量。
子计数器1单独工作的计数值为CNTDATA11,子计数器2单独工作的计数值为CNTDATA21,以此类推,子计数器n单独工作的计数值为CNTDATAn1;当选择两个计数器工作时,可以选择子计数器1、2工作,计数值为CNTDATA2;当选择三个计数器工作时,可以选择子计数器1、2、3工作,计数值为CNTDATA3;以此类推,当选择n个计数器工作时,可以选择子计数器1、2、...n工作,计数值为CNTDATAn。
每一个多路复用器MUX对应一个子计数器的单独工作,MUX1接受子计数器1的计数值CNTDATA11,MUX2接受子计数器2的计数值CNTDATA21,以此类推,MUXn接受子计数器n的计数值CNTDATAn1。所有的MUX均接收多个子计数器的计数值,即MUX1、2、…、n均接收CNTDATA2、CNTDATA3、…CNTDATAn。
MUX1在计数值CNTDATA11、CNTDATA2、CNTDATA3、…CNTDATAn中选择一个作为输出C1;MUX2在计数值CNTDATA21、CNTDATA2、CNTDATA3、…CNTDATAn中选择一个作为输出C2;以此类推,MUXn在计数值CNTDATAn1、CNTDATA2、CNTDATA3、…CNTDATAn中选择一个作为输出Cn。
每一个输出可以对应发送给一个pwm比较发生模块,例如,输出C1发送给第一PWM比较发生模块,输出C2发送给第二PWM比较发生模块,以此类推,输出Cn发送给第N PWM比较发生模块。当然,也可以一个输出对应发送给多个PWM比较发生模块。此外,还可以直接将计数值CNTDATA11、CNTDATA21、…、CNTDATAn1分别发送给一个PWM比较发生模块,还可以将计数值CNTDATA2、CNTDATA3、…CNTDATAn发送给PWM比较发生模块。还可以在多个输出C1、C2、…Cn、计数值CNTDATA11、CNTDATA21、…、CNTDATAn1、计数值CNTDATA2、CNTDATA3、…CNTDATAn中任意选择几个发送给PWM比较发生模块。
每一个输出可以对应发送给一个ADC启动触发模块,例如,输出C1发送给第一ADC启动触发模块,输出C2发送给第二ADC启动触发模块,以此类推,输出Cn发送给第N ADC启动触发模块。当然,也可以一个输出对应发送给多个ADC启动触发模块。此外,还可以直接将计数值CNTDATA11、CNTDATA21、…、CNTDATAn1分别发送给一个ADC启动触发模块,还可以将计数值CNTDATA2、CNTDATA3、…CNTDATAn发送给ADC启动触发模块。还可以在多个输出C1、C2、…Cn、计数值CNTDATA11、CNTDATA21、…、CNTDATAn1、计数值CNTDATA2、CNTDATA3、…CNTDATAn中任意选择几个发送给ADC启动触发模块。
通过在计数器2中设置多个子计数器、译码器和子计数器多路复用器,可实现PWM的更加稳定和高精度的输出。此外,上述结构使得IO选择面宽,PCB布局更加灵活。
接下来,讨论本发明的多功能定时器的操作。由于本发明的实施方式所涉及的多功能定时器具有如下主要模块,即计数器、比较输出模块。
(1)计数器(Counter)
计数器(CNT)作为计时器输出MFT4的功能模块的动作基准计数单元。1个三相电机控制单元包含1个计数器单元。
(2)比较输出模块(Output Compare&Output)
比较输出模块(OCO)是以计数器的计数值为基准,生成输出PWM信号的功能模块,将输出比较的信号生成电机控制用的信号波形。1个三相电机控制单元包含3个比较输出单元。
(3)电机控制紧急输入(Emergency stop input)
电机控制紧急输入(EMI)用于在发生紧急情况下停止电机驱动。
下面,分为计数器模块和比较输出模块,针对各模块的操作分别进行具体说明。
1.计数器的操作
首先,讨论计数器的操作。通常,计数器中包含计数器控制寄存器。
计数器初始化(分频比,计数模式)需在计数器停止时进行设置,之后可启动计数器操作(CNR.STOP=0)。
计数器的计数值和计数状态作为比较输出模块(OCO)的输入。OCO的操作与计数器同步,如寄存器缓冲操作等。对于OCO的操作在下文中进行详细说明。
当计数器的计数值为0x0000时,过零检测标志(CNR.IRQZF)位置“1”;当计数器计数到峰值时(=PSR)时,峰值检测标志(CNR.ICLR)位置“1”。可以设定是否将该中断信号通知CPU。可以通过配置中断屏蔽计数器将希望输出的中断(CNR.IRQZF)和(CNR.ICLR)标志数减少。
下表介绍计数器的控制寄存器功能和设定时序:
表1计数器控制寄存器
Figure BDA0001593002170000071
Figure BDA0001593002170000081
接下来,对计数器的计数模式进行说明。大致而言,计数器的计数模式可分为锯齿波模式和三角波模式。下表示出计数器的不同计数模式。
表2:计数器的计数模式
Figure BDA0001593002170000082
计数模式可选择锯齿波(递增计数)模式或者三角波(递增递减计数)模式。具体说明上述2种计数模式。
1)锯齿波(递增计数)模式
图7示例当锯齿波(递增计数)模式设置下的操作。
锯齿波计数操作与控制流程如下:
设置模式CNR.CNTMD=0。
设置计数峰值PSR寄存器。
写入CNR.STOP=0和CNR.CLEAR=1,计数器计数值(CIR)被初始化到0x0000并启动计数操作。
计数器值从0x0000开始递增计数,当达到峰值(=PSR),计数值归0x0000,依次重复此操作。
计数周期=(PSR+1)×计数时钟周期。
计数过程中,写入CNR.STOP=0和CNR.CLEAR=1可以将计数值初始化到0x0000并继续进行计数操作。
写入CNR.STOP=1和CNR.CLEAR=1可以将计数值初始化到0x0000并停止计数操作。
2)三角波(递增递减计数)模式
图8示例当三角波(递增递减计数)模式设置下的操作。
三角波计数操作与控制流程如下:
设置模式CNR.CNTMD=1。
设置计数峰值PSR寄存器。
写入CNR.STOP=0和CNR.CLEAR=1,计数器计数值(CIR)被初始化到0x0000并启动计数操作。
计数器值从0x0000开始做递增计数计数,在到达计数峰值之前做递增计数;当达到峰值(=PSR)时,计数器开始做递减计数,直到计数值归0x0000;之后重新进行递增计数操作,依次重复此操作。
计数周期=(PSR)×2×计数时钟周期。
计数过程中,写入CNR.STOP=0和CNR.CLEAR=1可以将计数值初始化到0x0000并重新进行递增计数操作,之后重复上述操作。
写入CNR.STOP=1和CNR.CLEAR=1可以将计数值初始化到0x0000并停止计数操作。
接下来,讨论另一重要模块,即比较输出模块的操作。
2.比较输出的操作
作为定时器的另一主要部件的比较输出,该比较输出(OCO)模块的输入与计数器的输出相连接,接下来,继续参照图9,详细说明比较输出模块的结构和操作,图9为比较输出模块的框图。
比较输出模块包含比较输出模块控制寄存器。此外,比较输出模块还包括死区寄存器等。具体的连接结构可见图9所示。
比较输出模块初始化需在比较输出模块停止(OCE1=OCE0=0)时进行设置,之后可启动比较输出模块。
OCO的操作与计数器(CNT)的计数操作同步,如寄存器缓冲操作,输出中间信号OP0/OP1和当计数器的值与输出比较器的值匹配时输出中断标志OCF1/OCF0等。
下表介绍比较输出模块(OCO)的控制寄存器功能和设定时序:
表3比较输出控制寄存器
Figure BDA0001593002170000091
Figure BDA0001593002170000101
接着,讨论输出比较Ch.0、Ch.1的通道独立设置条件。通道Ch.0的输出信号为OP0、通道Ch.1的输出信号为OP1。下列表4和5为示例1-8的配置对比表。
表4输出比较ch.0配置示例表
Figure BDA0001593002170000102
接着,讨论输出比较Ch.1通道独立设置条件。下表5为输出比较Ch.1的配置示例5-8。
向寄存器OMR(1)的bit[31:20]和bit[15:4]写入相同的12位值,同时将OMR(1)[19:16]写入“0x0000”,此时通道Ch.1的OP1信号和OCF1的改变条件在配置上与OCR(0)和OCR(1)一致。因此可视作通道Ch.1的操作与OCR(0)配置无关,将此模式叫做通道独立操作模式----通道Ch(0)由OCR(0)决定,通道Ch(1)由OCR(1)决定配置。如果不能满足该条件,通道Ch.1的变化将与OCR(0)相关,将其称作通道链接操作模式。
表5输出比较ch.1配置示例表
Figure BDA0001593002170000111
接下来,进一步地,讨论通道链接操作模式。
在链接操作模式下,两个比较值OCR(0)和OCR(1)都用于控制Ch.1的内部信号OP1输出。链接操作模式下读Ch.0的OP0控制无效。
可以分别设置通道Ch.0和Ch.1的缓冲寄存器传输时刻,比如可以设置计数值为0x0000时传输Ch.0的OCR(0)值,而在计数器为峰值(=PSR)时传输Ch.1的OCR(1)值。
当OCR(0)与计数器值匹配时,不会产生Ch.1的OCF1中断标志。如需产生OCR(0)与计数器值匹配下Ch.0的OPF0中断标志,需设置通道Ch.0为使能操作状态(OCE0=1)。如果只需要产生OP1的输出,而不需要OP0及OCF0,则不必设置通道Ch.0为使能操作状态(OCE0=1)。详情参见表6。
表6输出比较ch.0和ch.1链接操作模式配置示例表
Figure BDA0001593002170000112
Figure BDA0001593002170000121
后面,讨论直通模式,即,直接输出OP(0)和OP(1)的模式。具体而言,PWM信号包括OP(0)和OP(1),在直通模式下,直接向节点A或B输出OP(0)和OP(1)。
PWM输出直通模式(PCR:WMD[1:0]=00)操作如下所述:
直通模式下,OP(0)通过PWM0引脚输出片外,OP(1)通过PWM1引脚输出到芯片外。
图10示出PWM10在直通模式下的输出波形。图中,OP0和OP1分别作为输出比较内部信号不经过处理直接输出到芯片外。
在接着,讨论死区定时器模式,死区定时器模式是不进行滤波的模式,在死区定时器模式下,数字滤波器仅仅作为计数器使用。
PWM输出死区定时器模式(PCR:WMD[1:0]=01)操作如下所述:
死区定时器模式下,根据前级OP(1)信号和由寄存器PDA和PDB分别设定死区时间,产生不交叠的PWM(1)和PWM(0)输出信号。
死区定时器模式约定比较输出产生有效电平为高的内部信号OP(1)。此模式下,设置PFR寄存器和OP(0)信号无效。
当通过改写PCR:WMD[1:0]寄存器设定模式为死区定时器模式时,输出信号PWM(0)的极性与OP1相同,输出信号PWM(1)的极性与OP1相反。
如果检测到信号OP(1)上升沿,PWM(1)输出变为低电平;死区计数器加载PDB寄存器的设定值并启动递减计数,当计数值变为0x0000时,计数器停止并使PWM(0)输出高电平。
如果检测到信号OP(1)下降沿,PWM(0)输出变为低电平;死区计数器加载PDA寄存器的设定值并启动递减计数,当计数值变为0x0000时,计数器停止并使PWM(1)输出高电平。
通过设置死区时间寄存器PDA和PDB,输出上升和下降变化的死区时间可以相应设定。
图11为输出通道Ch10的死区定时器模式波形示例1。
图12为输出通道Ch10的死区定时器模式波形示例2。
当信号OP1的高电平脉冲宽度小于PDB设定的死区时间时,仅PWM(1)输出变为低电平。PWM(1)输出电平变为高的条件是当OP1下降沿之后经过PDA寄存器设定的死区时间之后。在此情况下,输出PWM(0)将持续保持为低电平。
当信号OP1的低电平脉冲宽度小于PDA设定的死区时间时,仅PWM(0)输出变为低电平。PWM(0)输出电平变为高的条件是当OP1上升沿之后经过PDB寄存器设定的死区时间之后。在此情况下,输出PWM(1)将持续保持为低电平。
再接着,讨论死区定时器滤波模式,这是一种滤波模式,在该模式下,数字滤波器对PWM信号进行滤波。
死区定时器滤波模式(滤波模式,数字滤波器对PWM进行滤波)
PWM输出死区定时器滤波模式(PCR:WMD[1:0]=10)操作如下所述:
首先利用数字滤波器,该数字滤波器将脉冲宽度小于所滤宽度(由寄存器PFR设定)的OP(1)信号吞噬掉(使其不影响最后的PWM输出)。
当OP1的脉冲宽度大于寄存器PFR设定的时间时,数字滤波器将OP1信号推迟PFR设定的时间后输出,再去经过前面死区定时器模式所描述的方式产生PWM(1)和PWM(0)输出。此模式约定比较输出产生有效电平为高的内部信号OP(1)。
当通过改写PCR:WMD[1:0]寄存器设定模式为死区定时器模式时,输出信号PWM(0)的极性与OP1相同,输出信号PWM(1)的极性与OP1相反。
如果检测到信号OP(1)上升沿,数字滤波器加载PFR寄存器值并启动计量信号OP1的高电平宽度,当OP1的高电平脉冲宽度大于寄存器PFR设定的时间时,经过PFR所设定时间之后,PWM(1)输出变为低电平;死区计数器加载PDB寄存器的设定值并启动递减计数,当计数值变为0x0000时,计数器停止并使PWM(0)输出高电平。
如果检测到信号OP(1)下降沿,数字滤波器加载PFR寄存器值并启动计量信号OP1的低电平宽度,当OP1的低电平脉冲宽度大于寄存器PFR设定的时间时,经过PFR所设定时间之后,PWM(0)输出变为低电平;死区计数器加载PDA寄存器的设定值并启动递减计数,当计数值变为0x0000时,计数器停止并使PWM(1)输出高电平。
当OP1的电平脉冲宽度小于寄存器PFR设定的时间时,输出PWM(0)和PWM(1)将保持不变。
通过设置死区时间寄存器PDA和PDB,输出上升和下降变化的死区时间可以相应设定。
图12为输出死区定时器滤波模式波形示例1。
图13为输出死区定时器滤波模式波形示例2。
当OP1的脉冲宽度小于PFR设定的时间时,OP1信号被过滤掉,输出信号PWM(0)和PWM(1)不发生变化。当满足条件PFR10≥PDA10且PFR10≥PDB10时,输出信号PWM(0)和PWM(1)可按照图13所示变化。
再接下来,讨论输出极性翻转的情形。
PCR.LVLS[1:0]用于改变PWM0/PWM1输出的极性。
当PCR.LVLS[1:0]=00,PWM0和PWM1的极性不变;
当PCR.LVLS[1:0]=01,PWM0和PWM1的极性都翻转
当PCR.LVLS[1:0]=10,PWM0的极性翻转,PWM1的极性不变。
当PCR.LVLS[1:0]=11,PWM1的极性翻转,PWM0的极性不变。
通过应用本发明的多功能定时器,不仅可以使PWM的输出更加稳定,还可提高PWM的精度,且实现紧急刹车信号稳定降低容错率。本发明不仅可用于三相电机的控制,在不做实质性变更的情况下,可能用于其他模式的电机控制,无需限定于三相电机。
如上所述,本发明通过在计数器模块中加入子计数器和与之配合工作的多个字计数器多路复用器,可实现PWM的更加稳定和高精度的输出。此外,上述结构使得IO选择面宽,PCB布局更加灵活。
本领域普通技术人员将理解本发明的应用不限于6相电机。此外,也可以只使用通道链接操作模式、直通模式、死区定时器模式死区定时器滤波模式中的一种或多种。应当理解,上述说明书和附图中提供的具体的实施方式均是说明下的,而非限定性的。
上面已经描述了一些示例性实施例。然而,应该理解的是,可以做出各种修改。例如,如果所描述的技术以不同的顺序执行和/或如果所描述的***、架构、设备或电路中的组件以不同方式被组合和/或被另外的组件或其等同物替代或补充,则可以实现合适的结果。相应地,其他实施方式也落入权利要求的保护范围内。

Claims (17)

1.一种多功能定时器,用于电机控制,包括计数器和与计数器相连接的第一触发器,其特征在于,
所述计数器包括多个子计数器和多个子计数器多路复用器,所述多个子计数器的每一个均输入至所述多个子计数器多路复用器,
所述第一触发器包括多个PWM比较发生模块,
所述多个子计数器多路复用器的输出分别连接至各PWM比较发生模块,从而由所述PWM比较发生模块的输出形成所述多功能定时器的输出。
2.如权利要求1所述的多功能定时器,其特征在于,所述计数器还包括计数器控制器和译码器,由所述计数器控制器向各子计数器和所述译码器以及各所述子计数器多路复用器输出控制信号,各所述子计数器多路复用器输出与所述控制信号相应的信号。
3.如权利要求2所述的多功能定时器,其特征在于,各子计数器单独工作时的信号、以及多个子计数器一起工作时的信号输入至对应的子计数器多路复用器,由所述对应的子计数器多路复用器选择与所述计数器控制器、所述译码器的输出相应的信号。
4.如权利要求2所述的多功能定时器,其特征在于,根据由所述译码器输出的信号,来决定需要工作的子计数器的数量。
5.如权利要求4所述的多功能定时器,其特征在于,各子计数器的周期为xbit,若工作的子计数器个数为n,则计数器的周期值成为x×n bit。
6.如权利要求1所述的多功能定时器,其特征在于,所述子计数器、所述子计数器多路复用器、所述PWM比较发生模块的数量互不相同;或,所述子计数器、所述子计数器多路复用器、所述PWM比较发生模块中任意2者的数量相同。
7.如权利要求1所述的多功能定时器,其特征在于,所述PWM比较发生模块包括比较控制器,根据所述比较控制器的输出信号,所述定时器在多个模式之间进行切换。
8.如权利要求7所述的多功能定时器,其特征在于,所述多个模式包含通道链接操作模式、直通模式、死区定时器滤波模式以及死区定时器模式中的至少一种。
9.如权利要求1所述的多功能定时器,其特征在于,还包含第二触发器,所述第二触发器包括多个ADC启动触发模块和触发多路复用器,所述多个子计数器多路复用器的输出分别连接至各ADC启动触发模块;所述ADC启动触发模块包括ADC启动触发控制器、触发比较器、触发计数器、等值比较器以及多个多路复用器,所述ADC启动触发控制器设置设定值、第一选择值、第二选择值、比较控制信号和计数控制信号,由所述ADC启动触发控制器进行控制,从而使得所述多功能定时器在多个模式之间进行切换;所述多个模式包括比较模式和延迟模式。
10.一种用于实现多功能定时器的可变位数计数的方法,用于电机控制,该多功能定时器包括计数器和与计数器相连接的第一触发器,所述计数器包括计数器控制器、译码器、多个子计数器和多个子计数器多路复用器,所述第一触发器包括多个PWM比较发生模块,所述多个子计数器的每一个均输入至所述多个子计数器多路复用器,由所述PWM比较发生模块的输出形成所述多功能定时器的输出,该方法包括如下步骤:
由所述计数器控制器向所述多个子计数器、译码器输出控制信号;
由所述译码器根据所述控制信号,生成译码信号来决定工作的子计数器的数量;
由所述子计数器多路复用器根据来自所述译码器的信号来选择所输入的子计数器的输出。
11.如权利要求10所述的方法,其特征在于,各子计数器的周期为x bit,若工作的子计数器个数为n,则计数器的周期值成为x×n bit。
12.如权利要求10所述的方法,其特征在于,各子计数器单独工作时的信号、以及多个子计数器一起工作时的信号输入至对应的子计数器多路复用器,由所述对应的子计数器多路复用器选择与所述计数器控制器、所述译码器的输出相应的信号。
13.如权利要求10所述的方法,其特征在于,所述子计数器、所述子计数器多路复用器、所述PWM比较发生模块的数量互不相同;或,所述子计数器、所述子计数器多路复用器、所述PWM比较发生模块中任意2者的数量相同。
14.如权利要求10所述的方法,其特征在于,所述PWM比较发生模块包括比较控制器,通过所述比较控制器的输出信号,所述定时器在多个模式之间进行切换。
15.如权利要求14所述的方法,其特征在于,所述多个模式包含通道链接操作模式、直通模式、死区定时器滤波模式以及死区定时器模式中的至少一种。
16.如权利要求10所述的方法,其特征在于,所述多功能定时器还包含第二触发器,所述第二触发器包括多个ADC启动触发模块和触发多路复用器,所述多个子计数器多路复用器的输出分别连接至各ADC启动触发模块;所述ADC启动触发模块包括ADC启动触发控制器、触发比较器、触发计数器、等值比较器以及多个多路复用器,所述ADC启动触发控制器设置设定值、第一选择值、第二选择值、比较控制信号和计数控制信号,由所述ADC启动触发控制器进行控制,从而使得所述多功能定时器在多个模式之间进行切换;所述多个模式包括比较模式和延迟模式。
17.一种存储介质,存储有在计算装置上执行以便实现权利要求10-16中的任一项所述的方法的指令。
CN201810195580.2A 2018-03-09 2018-03-09 多功能定时器 Active CN110244590B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810195580.2A CN110244590B (zh) 2018-03-09 2018-03-09 多功能定时器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810195580.2A CN110244590B (zh) 2018-03-09 2018-03-09 多功能定时器

Publications (2)

Publication Number Publication Date
CN110244590A CN110244590A (zh) 2019-09-17
CN110244590B true CN110244590B (zh) 2021-09-03

Family

ID=67882279

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810195580.2A Active CN110244590B (zh) 2018-03-09 2018-03-09 多功能定时器

Country Status (1)

Country Link
CN (1) CN110244590B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115603718B (zh) * 2022-11-04 2023-08-15 湖南毂梁微电子有限公司 多周期数字脉冲宽度调制电路及调制方法
CN116707493B (zh) * 2023-07-31 2023-10-20 苏州萨沙迈半导体有限公司 触发信号发生装置、功率驱动模块及电机控制芯片

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4528491A (en) * 1982-12-28 1985-07-09 Tokyo Keiki Company, Ltd. Pulse motor control apparatus
CN2236193Y (zh) * 1995-05-02 1996-09-25 北京市海淀区三友激光图象公司 步进电机变频控制器
CN1378679A (zh) * 1999-10-13 2002-11-06 全斯美达有限公司 可编程事件计数器***
CN101006646A (zh) * 2004-08-19 2007-07-25 英特尔公司 多级可编程约翰逊计数器
CN106374893A (zh) * 2016-09-22 2017-02-01 北方电子研究院安徽有限公司 一种嵌入式SoC***中通用死区可配置PWM波生成电路
CN109075789A (zh) * 2016-05-27 2018-12-21 高通股份有限公司 自适应控制从功率多路复用***中的供电轨到被供电电路的经多路复用电源的驱动强度
CN109643953A (zh) * 2016-09-22 2019-04-16 苹果公司 用于电压转换器的数字辅助控制环

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4528491A (en) * 1982-12-28 1985-07-09 Tokyo Keiki Company, Ltd. Pulse motor control apparatus
CN2236193Y (zh) * 1995-05-02 1996-09-25 北京市海淀区三友激光图象公司 步进电机变频控制器
CN1378679A (zh) * 1999-10-13 2002-11-06 全斯美达有限公司 可编程事件计数器***
CN101006646A (zh) * 2004-08-19 2007-07-25 英特尔公司 多级可编程约翰逊计数器
CN109075789A (zh) * 2016-05-27 2018-12-21 高通股份有限公司 自适应控制从功率多路复用***中的供电轨到被供电电路的经多路复用电源的驱动强度
CN106374893A (zh) * 2016-09-22 2017-02-01 北方电子研究院安徽有限公司 一种嵌入式SoC***中通用死区可配置PWM波生成电路
CN109643953A (zh) * 2016-09-22 2019-04-16 苹果公司 用于电压转换器的数字辅助控制环

Also Published As

Publication number Publication date
CN110244590A (zh) 2019-09-17

Similar Documents

Publication Publication Date Title
TWI442704B (zh) 用以在一特定時間間隔過程中計數輸入脈衝之裝置
JP5018757B2 (ja) パラレル−シリアル変換器及びデータ受信システム
JP2009528015A (ja) 自己補正式デジタル・パルス幅変調器(dpwm)
CN110244590B (zh) 多功能定时器
JP2010136002A (ja) 遅延回路
JP5343966B2 (ja) クロック信号分周回路および方法
CN110244588B (zh) 多功能定时器
US9287884B2 (en) Enhanced numerical controlled oscillator
JP4111932B2 (ja) クロック分周器とそのトリガ信号発生回路
KR101991886B1 (ko) 고분해능 펄스폭 변조기
US8924449B2 (en) Method and apparatus for implementing variable symbol rate
KR101215763B1 (ko) 타이밍 신호 발생 회로
US7873134B2 (en) Clock generation system
US20100201409A1 (en) Frequency Divider Circuit
US7932761B1 (en) Fine tuned pulse width modulation
JP4666462B2 (ja) カウンタ回路と、それを含む半導体装置
JP6094130B2 (ja) Pwm信号生成装置
CN102624328A (zh) 电动机速度控制装置
US8762586B2 (en) Apparatus for mixed signal interface acquisition circuitry and associated methods
JP2008067323A (ja) 突入電流制御装置および突入電流制御方法
US20070001737A1 (en) System and method of generating a clock cycle having an asymmetric duty cycle
JP5023576B2 (ja) チャージポンプ回路
JP2008153733A (ja) 半導体装置
JP2007208438A (ja) デジタル逓倍回路、スイッチング制御回路及び昇降圧dc−dcコンバータ
JP4542020B2 (ja) 分周回路

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20220627

Address after: 201210 floor 10, block a, building 1, No. 1867, Zhongke Road, pilot Free Trade Zone, Pudong New Area, Shanghai

Patentee after: Xiaohua Semiconductor Co.,Ltd.

Patentee after: Huada Semiconductor (Chengdu) Co.,Ltd.

Address before: 201203 room 303-304, block a, No. 112, liangxiu Road, pilot Free Trade Zone, Pudong New Area, Shanghai

Patentee before: HUADA SEMICONDUCTOR Co.,Ltd.

Patentee before: Huada Semiconductor (Chengdu) Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20221118

Address after: 201210 Floor 10, Block A, Building 1, No. 1867, Zhongke Road, Pudong New Area, Shanghai

Patentee after: Xiaohua Semiconductor Co.,Ltd.

Patentee after: HUADA SEMICONDUCTOR Co.,Ltd.

Address before: 201210 floor 10, block a, building 1, No. 1867, Zhongke Road, pilot Free Trade Zone, Pudong New Area, Shanghai

Patentee before: Xiaohua Semiconductor Co.,Ltd.

Patentee before: Huada Semiconductor (Chengdu) Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20230106

Address after: 201210 Floor 10, Block A, Building 1, No. 1867, Zhongke Road, Pudong New Area, Shanghai

Patentee after: Xiaohua Semiconductor Co.,Ltd.

Address before: 201210 Floor 10, Block A, Building 1, No. 1867, Zhongke Road, Pudong New Area, Shanghai

Patentee before: Xiaohua Semiconductor Co.,Ltd.

Patentee before: HUADA SEMICONDUCTOR Co.,Ltd.

TR01 Transfer of patent right