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

YunTu Forum

YTMicro.com
  1. 主页
  2. Discussion & Question
  3. YTM32B1H系列
  4. 关于MCAL环境下的时钟监测问题

关于MCAL环境下的时钟监测问题

已定时 已固定 已锁定 已移动 已解决 YTM32B1H系列
5 帖子 2 发布者 2.0k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • yxydoctorY 离线
    yxydoctorY 离线
    yxydoctor
    写于 最后由 yxydoctor 编辑
    #1

    请教一下:MCAL环境下是如何实现时钟监测的?没找到相关设置项。
    之前在z20下通过如下方式实现片外时钟和片内高速时钟之间的切换。

        // 2-时钟初始化
        if(reset_reson & 0x40000){                         // 时钟丢失                                             
            Mcu_InitClock(1);                                      // 选择FIRC作为PLL时钟源
            INPUT_CLK_FREQ =96;
        }
        else{
            Mcu_InitClock(0);                                    // 选择FXOSC作为PLL时钟源
            INPUT_CLK_FREQ = 24;    
            // 使能OSC时钟丢失复位
            Mcu_EnableOscClockMonitor(MCU_OSC_CLOCK_LOSS_RST);                             
        } 
    

    现在Mcu_InitClock(0)或Mcu_InitClock(1)独立运行都是正常的。但自动切换实现不了,片外24M时钟接地后会造成系统死机。且MCAL库也没有Mcu_EnableOscClockMonitor()函数。

    1 条回复 最后回复
    0
    • jiankang_wangJ 离线
      jiankang_wangJ 离线
      jiankang_wang YunTu
      在 回复了 yxydoctor 最后由 编辑
      #4
      • 这两个门限控制允许的监测时钟频率范围,超过该频率范围会 产生时钟频率超出限制 的标志位。
      • 这里的单位是 Tick。其含义如下:
        6961d3f5-56d8-4be8-af9c-75cb290a743b-image.png
        其中 128 是固定参数,为 CMU 的时钟监测周期,20% 为允许的偏差
      yxydoctorY 1 条回复 最后回复
      0
      • jiankang_wangJ 离线
        jiankang_wangJ 离线
        jiankang_wang YunTu
        写于 最后由 jiankang_wang 编辑
        #2

        MCAL 环境下,可以通过CMU实现时钟监测,包括时钟丢失,参考时钟丢失,时钟频率不正常等功能
        配置项路径在这里:Mcu/McuModuleConfiguration/McuClockSettingConfig/McuClockSettingConfig_0/McuCMUConfig

        根据 Reset 原因初始化可以参考:

        int main(void)
        {
           Mcu_Init(&Mcu_Config);
           uint32 ResetReason = Mcu_GetResetRawValue();
           if (ResetReason == 1) {
               Mcu_InitClock(1);
           }else {
               Mcu_InitClock(0);
           }
           while(1) {
           }
        }
        
        yxydoctorY 1 条回复 最后回复
        0
        • yxydoctorY 离线
          yxydoctorY 离线
          yxydoctor
          在 回复了 jiankang_wang 最后由 编辑
          #3

          jiankang_wang 可以切换了,多谢!
          再请教一下:
          无标题.png
          这两个门限参数具体指的是什么?单位呢?

          jiankang_wangJ 1 条回复 最后回复
          0
          • jiankang_wangJ 离线
            jiankang_wangJ 离线
            jiankang_wang YunTu
            在 回复了 yxydoctor 最后由 编辑
            #4
            • 这两个门限控制允许的监测时钟频率范围,超过该频率范围会 产生时钟频率超出限制 的标志位。
            • 这里的单位是 Tick。其含义如下:
              6961d3f5-56d8-4be8-af9c-75cb290a743b-image.png
              其中 128 是固定参数,为 CMU 的时钟监测周期,20% 为允许的偏差
            yxydoctorY 1 条回复 最后回复
            0
            • yxydoctorY 离线
              yxydoctorY 离线
              yxydoctor
              在 回复了 jiankang_wang 最后由 编辑
              #5

              jiankang_wang 好的,非常感谢

              1 条回复 最后回复
              0
              • jiankang_wangJ jiankang_wang 在 中 引用了 这个主题
              • ,FrankieF Frankie 将这个主题转为问答主题
              • ,FrankieF Frankie 将这个主题标记为已解决

            • 云途开发生态介绍

              快速上手云途开发生态

            • 云途论坛规则/Yuntu Forum Rules

              发帖前请查看

            • YT CONFIG TOOL调查问卷

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

            • can
              25
              demo
              22
              lin stack
              13
              uds
              13
              md14
              6
              yt-link
              6
              fbl
              5
              adc模块
              4
              Online Users
              • 登录

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