跳转至内容
  • 版块
  • 最新
  • 标签
  • 热门
折叠
品牌标识

YunTu Forum

YTMicro.com
  1. 主页
  2. Blogs
  3. EMTR 同步机制说明及PWM更新方法

EMTR 同步机制说明及PWM更新方法

已定时 已固定 已锁定 已移动 Blogs
1 帖子 1 发布者 57 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • xianghanX 离线
    xianghanX 离线
    xianghan YunTu
    写于 最后由 编辑
    #1
    1. 同步机制
      因为计数器和总线上访问寄存器使用两个不同的时钟域,又或是因为在有些应用(例如电机)场景中,需要硬件保证的同步更新一组寄存器,而不能又软件一个一个地赋值(否则切换过程中出现不当配置,电机就烧啦),eTMR为一些同计数相关的寄存器设计了缓冲寄存器(Buffered Registers),或者被称为“影子寄存器”(Shadow Registers)。影子寄存器对用户来说是不可见的。当启用影子模式后(eTMR_SYNC[REGLD] != 0),用户通过APB总线向拥有影子寄存器的真实寄存器中写数时,实际由硬件控制先写到影子寄存器中,当预设的同步触发信号到来之时,硬件自动将影子寄存器中的数值写入到实际的寄存器中生效。如图x所示
      2ad8e074-ba1c-4f22-b297-90fd87136d48-image.png
      图x中展示了,eTMR中拥有影子的寄存器包括:eTMR_INIT、eTMR_MOD、eTMR_MID、eTMR_CHn_VAL0、eTMR_CHn_VAL1、eTMR_CHn_MASK。
      注:
      1 影子寄存器带有保护机制,当LDOK=0的时候,用户可以写影子寄存器,当LDOK =1时,禁止用户写影子寄存器,写操作无效;
      2 LDOK清0包含两种方式如下:
      a 硬件方式: LDOK需要等待加载时机的到来,硬件才会自动清零,
      b 软件方式:通过软件操作CLDOK后,对LDOK进行软件清零,LDOK为零后,此时用户可以写影子寄存器;

    2. PWM更新
      如何确保PWM修改周期和占空比能成功?
      Q:如何确保PWM修改周期和占空比能成功?
      A:有标准流程来确保操作成功。
      先清LDOK标志位,然后修改PWM的周期和占空比,再设置LDOK标志位。 只有这样才能确保加载成功。
      如下图所示:在操作影子寄存器之前,清LDOK标志位,保证每次都可以成功写入PWM。
      51ff9620-0139-46d7-af83-c1058afa00cb-image.png

    1 条回复 最后回复
    2

  • 云途论坛规则/Yuntu Forum Rules

    发帖前请查看

  • YCT离线License申请流程

    帮助没办法联网的电脑使用YCT

  • YT CONFIG TOOL调查问卷

    帮助改进和优化YT CONFIG TOOL,有机会抽取YTM32B1ME0 EVB哦...

  • can
    16
    demo
    15
    uds
    7
    lin stack
    6
    fbl
    5
    yt-link
    5
    md14
    4
    adc模块
    3
    Online Users
    Tiger987T
    Tiger987
    FrankF
    Frank
    DZHD
    DZH
    kid_liK
    kid_li
    carpeC
    carpe
    zhdZ
    zhd
    ganyongchaoG
    ganyongchao
    • 登录

    • 登录或注册以进行搜索。
    • 第一个帖子
      最后一个帖子
    0
    • 版块
    • 最新
    • 标签
    • 热门