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

YunTu Forum

YTMicro.com
  1. 主页
  2. Discussion & Question
  3. YTM32B1M系列
  4. YTM32B1MC03H0MLH ,看门狗,WDG,怎么设置时间都无效

YTM32B1MC03H0MLH ,看门狗,WDG,怎么设置时间都无效

已定时 已固定 已锁定 已移动 YTM32B1M系列
25 帖子 5 发布者 1.3k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • jankyJ 离线
    jankyJ 离线
    janky
    在 回复了 Diga 最后由 编辑
    #7

    @Say 不是啊, 我两个都是配LPO啊

    DigaD 1 条回复 最后回复
    0
    • jankyJ 离线
      jankyJ 离线
      janky
      在 回复了 Diga 最后由 编辑
      #8

      Diga 6d4fe9a8-8873-4bc4-bf70-10786544ee01-image.png

      ae591b21-df21-4187-8419-64de20521776-image.png

      找到原因,但是不知道怎么修复, 看门狗寄存器base->TOVR的值, 并不是我要设置的值。

      1 条回复 最后回复
      0
      • DigaD 离线
        DigaD 离线
        Diga
        在 回复了 janky 最后由 编辑
        #9

        janky 时钟配置界面那边配置的是 LPO,分频16,也就是 2k
        模块配置界面那边配置的是 LPO,分频是1,也就是32k,模块配置界面都没有分频系数配置,你怎么分频

        jankyJ 1 条回复 最后回复
        0
        • jankyJ 离线
          jankyJ 离线
          janky
          在 回复了 Diga 最后由 编辑
          #10

          Diga 意思是我在时钟配置界面配置的分配, 对看门狗是不起作用的吗? 看门狗仍然是32K?

          1 条回复 最后回复
          0
          • DigaD 离线
            DigaD 离线
            Diga
            写于 最后由 编辑
            #11

            WDG 这个模块,你在时钟界面配置的时钟只是供 WDG 正常工作,例如寄存器读写之类的。WDG 的计数时钟是内部配置的,不能分频,但可以选择与时钟界面配置的时钟一致,可以参考我第一个回复

            jankyJ 1 条回复 最后回复
            0
            • jankyJ 离线
              jankyJ 离线
              janky
              在 回复了 Diga 最后由 编辑
              #12

              Diga

              就以不能分频来说, 那就是32K, 那为什么 .timeoutValue=(32*1000)*5, 不是5秒复位呢? 而且无论我怎么改,复位时间都是不变的。,

              428a0e6e-617e-4de4-8de4-6e40ca4ee62c-image.png

              int main(void)
              {
              /* USER CODE BEGIN 1 /
              /
              USER CODE END 1 /
              Board_Init();
              /
              USER CODE BEGIN 2 */

                  PRINTF("Setup WDG and wait for WDG timeout!\n");
                 
                  /* Init wdg module. */
                  WDG_DRV_Init(0, &wdg_config0);
              
              
              /* USER CODE END 2 */
              
              /* Infinite loop */
              /* USER CODE BEGIN WHILE */
              while (1)
              {
                  /* USER CODE END WHILE */
                  /* USER CODE BEGIN 3 */
              }
              /* USER CODE END 3 */
              

              }

              static void Board_Init(void)
              {
              CLOCK_SYS_Init(g_clockManConfigsArr,CLOCK_MANAGER_CONFIG_CNT,g_clockManCallbacksArr,CLOCK_MANAGER_CALLBACK_CNT);
              CLOCK_SYS_UpdateConfiguration(CLOCK_MANAGER_ACTIVE_INDEX,CLOCK_MANAGER_POLICY_AGREEMENT);
              PINS_DRV_Init(NUM_OF_CONFIGURED_PINS0,g_pin_mux_InitConfigArr0);
              UTILITY_PRINT_Init();
              lpTMR_DRV_Init(0,&LPTMR_Config,false);
              }

              zyqZ 1 条回复 最后回复
              0
              • zyqZ 离线
                zyqZ 离线
                zyq YunTu
                在 回复了 janky 最后由 编辑
                #13

                janky 需要注意一下MC0 WDG计数器是16 bit的

                jankyJ 2 条回复 最后回复
                0
                • jankyJ 离线
                  jankyJ 离线
                  janky
                  在 回复了 zyq 最后由 编辑
                  #14

                  zyq f804c536-332f-4abb-9d63-6c341cfee130-image.png
                  57d09148-093b-408a-99e7-a7fda823b177-image.png
                  不是32bit吗? 寄存器结构体就是用32. 数据手册没有描述,

                  zyqZ 1 条回复 最后回复
                  0
                  • jankyJ 离线
                    jankyJ 离线
                    janky
                    在 回复了 zyq 最后由 编辑
                    #15

                    zyq 如果是16bit, 又不能分频,32K, 最多只能2秒多一点点。 这样要频繁唤醒喂狗啊。我已经选了最慢的时钟了。

                    1 条回复 最后回复
                    0
                    • zyqZ 离线
                      zyqZ 离线
                      zyq YunTu
                      在 回复了 janky 最后由 编辑
                      #16

                      janky

                      1. 手册里有的
                        93eb8ba5-5dfe-45a5-9cf4-db5a57358a03-image.png

                      6153e368-a7ba-4e4d-b17b-fc53efe87bfb-image.png

                      1. 可以分频,按照前面同事的回复配置即可,WDG模块中选择IPC时钟,Clock Configuration里面分频
                        4e5e295a-fe72-41ab-987a-5ed31c5e40be-image.png
                      jankyJ 2 条回复 最后回复
                      0
                      • jankyJ 离线
                        jankyJ 离线
                        janky
                        在 回复了 zyq 最后由 编辑
                        #17

                        zyq

                        a733ed29-af1a-4ab9-86f2-bcd23cffd6d7-image.png

                        感谢你的指出, ,看门狗选WDG_LPO_CLOCK, 配置时间生效了,但最长只能2秒多。

                        那我这样设置,看门狗频率会是多少呢? 我猜是2K, 但是并不对,我设置 .timeoutValue= (2*1000)*2, 很久都没复位。

                        1 条回复 最后回复
                        0
                        • jankyJ 离线
                          jankyJ 离线
                          janky
                          在 回复了 zyq 最后由 编辑
                          #18

                          zyq 另外, 我下载的 数据手册,YTM32B1MC0x_DS_v1.2.pdf 只到第7章,我看你的截图都到31章节了。 麻烦上传一份数据手册。谢谢

                          1 条回复 最后回复
                          0
                          • zyqZ 离线
                            zyqZ 离线
                            zyq YunTu
                            写于 最后由 编辑
                            #19

                            是2K,是不是你配置了中断,第一次超时后进中断了,第二次才复位。
                            我那个到31章节的是Reference Manual手册,可以在YCT里下载。

                            jankyJ 2 条回复 最后回复
                            0
                            • jankyJ 离线
                              jankyJ 离线
                              janky
                              在 回复了 zyq 最后由 编辑
                              #20

                              zyq 1e771246-42e3-44fe-9451-64720b52cf25-image.png

                              并没有配置中断。

                              1 条回复 最后回复
                              0
                              • jankyJ 离线
                                jankyJ 离线
                                janky
                                在 回复了 zyq 最后由 编辑
                                #21

                                zyq b0f79e88-9961-4b62-86aa-d847dc7c402e-Wdg_Demo.zip

                                离成功不远了,如果可以, 请帮忙配一下, 我的需求是,
                                1, 尽可能选择低功耗下的时钟, 因为产品有很高的功耗要求,所以我选LPO
                                2,可进行秒级的超时配置,以ms级*1000也可(我在以往的平台就是这样的)
                                3,最好能支持10秒的超时配置, 因为频繁唤醒喂狗也会引起功耗提高。

                                1 条回复 最后回复
                                0
                                • DigaD 离线
                                  DigaD 离线
                                  Diga
                                  写于 最后由 编辑
                                  #22

                                  恭喜你发现了个bug
                                  这个是因为 SDK LPO 的 INDEX 配置错误,也就是说你的 IPC 没有配置有效时钟。当前代码配置的是 reseved 的时钟,所以当 WDG 选择 IPC 时钟时,由于没有有效的时钟,WDG 配置失效,未工作。

                                  26d39c58-ee3a-47cd-9236-d2940c597c05-image.png img_v3_02nk_6a6b1879-c29b-4568-90f8-329d35ce3dfg.jpg

                                  下个版本会修复该问题,当前可以在 WDG 初始化之前增加下述代码,让 IPC 配置正常的时钟

                                      /* Disable WDG IPC at first */
                                      IPC->CTRL[IPC_WDG0_INDEX] = 0;
                                      /* Select LPO as function clock and divider is 1 */
                                      IPC->CTRL[IPC_WDG0_INDEX] = 0x401;
                                      ...
                                      WDG_DRV_Init(0, &wdg_config0);
                                  
                                  jankyJ 1 条回复 最后回复
                                  0
                                  • yt0069Y 离线
                                    yt0069Y 离线
                                    yt0069 YunTu
                                    写于 最后由 编辑
                                    #23

                                    当选择lpo作为wdg时钟源时请注意lpo时钟的精度范围

                                    img_v3_02nk_a78a0dc5-8197-469b-8873-4fbdb5497c0g.jpg

                                    1 条回复 最后回复
                                    0
                                    • jankyJ 离线
                                      jankyJ 离线
                                      janky
                                      在 回复了 Diga 最后由 编辑
                                      #24

                                      Diga f1547e9e-6474-4200-bf39-d7110190ed9b-d80e8f516f90aab39a7a661dae6ad42.png

                                      请问是这样操作吗?但是还是不对啊。。

                                      1 条回复 最后回复
                                      0
                                      • DigaD 离线
                                        DigaD 离线
                                        Diga
                                        写于 最后由 编辑
                                        #25

                                        你的96行 0x401 配置的1分频的,如果要16分频,应该写 0xF0401, bit16-19 是分频数

                                        1 条回复 最后回复
                                        0

                                      • 云途开发生态介绍

                                        快速上手云途开发生态

                                      • 云途论坛规则/Yuntu Forum Rules

                                        发帖前请查看

                                      • YT CONFIG TOOL调查问卷

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

                                      • demo
                                        19
                                        can
                                        18
                                        uds
                                        11
                                        lin stack
                                        7
                                        fbl
                                        5
                                        yt-link
                                        5
                                        md14
                                        4
                                        adc模块
                                        3
                                        Online Users
                                        mcM
                                        mc
                                        • 登录

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