logo

STM8应用笔记 STM8单片机内核剖析 STM8 刹车功能 马达控制

STM8 刹车功能 马达控制

以下资料由微雪电子整理并发布,未经许可不得转载,否则追究相应责任!

STM8 刹车功能

STM8刹车功能常用于马达控制中。当使用刹车功能时,依据相应的控制位(TIM1_BKR寄存器中的MOE、OSSI和OSSR位),输出使能信号和无效电平都会被修改。
MCU系统复位后,刹车电路被禁止,MOE位为低。设置TIM1_BKR寄存器中的BKE位可以使能刹车功能。刹车输入信号的极性可以通过配置同一个寄存器中的BKP位选择。BKE和BKP可以被同时修改。
MOE下降沿相对于时钟模块可以是异步的,因此在实际信号(作用在输出端)和同步控制位(在TIM1_BKR寄存器中)之间设置了一个再同步电路。这个再同步电路会在异步信号和同步信号之间产生延迟。特别的,如果当它为低时写MOE=1,则读出它之前必须先插入一个延时(空指令)才能读到正确的值。这是因为写入的是异步信号而读的是同步信号。
当发生刹车时(在刹车输入端出现选定的电平),有下述动作:

  • MOE位被异步地清除,将输出置于无效状态、空闲状态或者复位状态(由OSSI位选择)。这个特性在MCU的振荡器关闭时依然有效。
  • 一旦MOE=0,每一个输出通道输出由TIM1_OISR寄存器的OISi位设定的电平。如果OSSI=0,则定时器不再控制输出使能信号,否则输出使能信号始终为高。
  • 当使用互补输出时:
    ─ 输出首先被置于复位状态即无效的状态(取决于极性)。这是异步操作,即使定时器没有时钟时,此功能也有效。
    ─ 如果定时器的时钟依然存在,死区生成器将会重新生效,在死区之后根据OISi和OISiN位指示的电平驱动输出端口。即使在这种情况下,OCi和OCiN也不能被同时驱动到有效的电平。注,因为重新同步MOE,死区时间比通常情况下长一些(大约2个时钟周期)。
    如果设置了TIM1_IER寄存器的BIE位,当刹车状态标志(TIM1_SR1寄存器中的BIF位)为'1'时,则产生一个中断。
    如果设置了TIM1_BKR寄存器中的AOE位,在下一个更新事件UEV时MOE位被自动置位;
    例如,这可以用来进行波形控制。否则,MOE始终保持低直到被再次置'1'。STM8S中的这个特性可以被用在安全方面,你可以把刹车输入连到电源驱动的报警输出、热敏传感器或者其他安全器件上。

注:刹车输入为电平有效。所以,当刹车输入有效时,不能同时(自动地或者通过软件)设置MOE。同时,状态标志BIF不能被清除。
刹车由BRK输入(BKIN)产生,它的有效极性是可编程的,且由TIM1_BKR寄存器的BKE位开启或禁止。
除了刹车输入和输出管理,刹车电路中还实现了写保护以保证应用程序的安全。它允许用户冻结几个配置参数(OCi极性和被禁止时的状态,OCiM配置,刹车使能和极性)。用户可以通过TIM1_BKR寄存器的LOCK位,从三种级别的保护中选择一种。在MCU复位后LOCK位域只能被修改一次。
图74显示刹车响应的输出实例。

STM8 刹车响应的输出(不带互补输出的通道)
(图74:STM8刹车响应的输出(不带互补输出的通道))

图75显示了带互补输出的刹车响应实例 。

STM8 刹车响应的输出(TIM1互补输出)
(图75:STM8刹车响应的输出(TIM1互补输出))

STM8 刹车功能 马达控制

——