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

YunTu Forum

YTMicro.com
  1. 主页
  2. Discussion & Question
  3. YTM32B1H系列
  4. MCAL库里的ICU模块代码的疑似BUG

MCAL库里的ICU模块代码的疑似BUG

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

    MCAL库中ICU代码中数组变量IcuWkupPortBuff的赋值似乎是错了。

    ICU_CONST const uint16 IcuWkupPortBuff[ ICU_WKUP_PORT_MAX ] =
        {
    #if defined( YTM32B1MC_LQFP48 )
            ( (uint16)( ICU_PORTA << 8U ) | 0U ), ( (uint16)( ICU_PORTA << 8U ) | 1U ), ( (uint16)( ICU_PORTA << 8U ) | 2U ), ( (uint16)( ICU_PORTA << 8U ) | 3U ),
            ( (uint16)( ICU_PORTA << 8U ) | 4U ), ( (uint16)( ICU_PORTA << 8U ) | 5U ), ( (uint16)( ICU_PORTA << 8U ) | 7U ), ( (uint16)( ICU_PORTA << 8U ) | 10U ),
            ( (uint16)( ICU_PORTA << 8U ) | 11U ), ( (uint16)( ICU_PORTA << 8U ) | 12U ), ( (uint16)( ICU_PORTA << 8U ) | 13U ), ( (uint16)( ICU_PORTB << 8U ) | 0 ),
            ( (uint16)( ICU_PORTB << 8U ) | 1U ), ( (uint16)( ICU_PORTB << 8U ) | 2U ), ( (uint16)( ICU_PORTB << 8U ) | 3U ), ( (uint16)( ICU_PORTB << 8U ) | 4U ),
            ( (uint16)( ICU_PORTB << 8U ) | 5U ), ( (uint16)( ICU_PORTB << 8U ) | 6U ), ( (uint16)( ICU_PORTB << 8U ) | 7U ), ( (uint16)( ICU_PORTB << 8U ) | 13U ),
            ( (uint16)( ICU_PORTC << 8U ) | 1U ), ( (uint16)( ICU_PORTC << 8U ) | 2U ), ( (uint16)( ICU_PORTC << 8U ) | 3U ), ( (uint16)( ICU_PORTC << 8U ) | 4U ),
            ( (uint16)( ICU_PORTC << 8U ) | 5U ), ( (uint16)( ICU_PORTC << 8U ) | 6U ), ( (uint16)( ICU_PORTC << 8U ) | 7U ), ( (uint16)( ICU_PORTC << 8U ) | 8U ),
            ( (uint16)( ICU_PORTC << 8U ) | 9U ), ( (uint16)( ICU_PORTC << 8U ) | 14U ), ( (uint16)( ICU_PORTC << 8U ) | 15U ), ( (uint16)( ICU_PORTC << 8U ) | 16U ),
            ( (uint16)( ICU_PORTD << 8U ) | 0U ), ( (uint16)( ICU_PORTD << 8U ) | 1U ), ( (uint16)( ICU_PORTD << 8U ) | 2U ), ( (uint16)( ICU_PORTD << 8U ) | 3U ),
            ( (uint16)( ICU_PORTD << 8U ) | 5U ), ( (uint16)( ICU_PORTD << 8U ) | 15U ), ( (uint16)( ICU_PORTD << 8U ) | 16U ), ( (uint16)( ICU_PORTE << 8U ) | 4U ),
            ( (uint16)( ICU_PORTE << 8U ) | 5U ), ( (uint16)( ICU_PORTE << 8U ) | 8U ), ( (uint16)( ICU_PORTE << 8U ) | 9U ), (uint16)0x0f00U /*0x0f00 is ACMP*/
    #elif defined( YTM32B1MC_LQFP64 )
            ( (uint16)( ICU_PORTA << 8U ) | 0U ), ( (uint16)( ICU_PORTA << 8U ) | 1U ), ( (uint16)( ICU_PORTA << 8U ) | 2U ), ( (uint16)( ICU_PORTA << 8U ) | 3U ),
            ( (uint16)( ICU_PORTA << 8U ) | 4U ), ( (uint16)( ICU_PORTA << 8U ) | 5U ), ( (uint16)( ICU_PORTA << 8U ) | 6U ), ( (uint16)( ICU_PORTA << 8U ) | 7U ),
            ( (uint16)( ICU_PORTA << 8U ) | 10U ), ( (uint16)( ICU_PORTA << 8U ) | 11U ), ( (uint16)( ICU_PORTA << 8U ) | 12U ), ( (uint16)( ICU_PORTA << 8U ) | 13U ),
            ( (uint16)( ICU_PORTB << 8U ) | 0 ), ( (uint16)( ICU_PORTB << 8U ) | 1U ), ( (uint16)( ICU_PORTB << 8U ) | 2U ), ( (uint16)( ICU_PORTB << 8U ) | 3U ),
            ( (uint16)( ICU_PORTB << 8U ) | 4U ), ( (uint16)( ICU_PORTB << 8U ) | 5U ), ( (uint16)( ICU_PORTB << 8U ) | 6U ), ( (uint16)( ICU_PORTB << 8U ) | 7U ),
            ( (uint16)( ICU_PORTB << 8U ) | 12U ), ( (uint16)( ICU_PORTB << 8U ) | 13U ), ( (uint16)( ICU_PORTC << 8U ) | 0 ), ( (uint16)( ICU_PORTC << 8U ) | 1U ),
            ( (uint16)( ICU_PORTC << 8U ) | 2U ), ( (uint16)( ICU_PORTC << 8U ) | 3U ), ( (uint16)( ICU_PORTC << 8U ) | 4U ), ( (uint16)( ICU_PORTC << 8U ) | 5U ),
            ( (uint16)( ICU_PORTC << 8U ) | 6U ), ( (uint16)( ICU_PORTC << 8U ) | 7U ), ( (uint16)( ICU_PORTC << 8U ) | 8U ), ( (uint16)( ICU_PORTC << 8U ) | 9U ),
            ( (uint16)( ICU_PORTC << 8U ) | 14U ), ( (uint16)( ICU_PORTC << 8U ) | 15U ), ( (uint16)( ICU_PORTC << 8U ) | 16U ), ( (uint16)( ICU_PORTC << 8U ) | 17U ),
            ( (uint16)( ICU_PORTD << 8U ) | 0U ), ( (uint16)( ICU_PORTD << 8U ) | 1U ), ( (uint16)( ICU_PORTD << 8U ) | 2U ), ( (uint16)( ICU_PORTD << 8U ) | 3U ),
            ( (uint16)( ICU_PORTD << 8U ) | 4U ), ( (uint16)( ICU_PORTD << 8U ) | 5U ), ( (uint16)( ICU_PORTD << 8U ) | 6U ), ( (uint16)( ICU_PORTD << 8U ) | 7U ),
            ( (uint16)( ICU_PORTD << 8U ) | 15U ), ( (uint16)( ICU_PORTD << 8U ) | 16U ), ( (uint16)( ICU_PORTE << 8U ) | 0U ), ( (uint16)( ICU_PORTE << 8U ) | 1U ),
            ( (uint16)( ICU_PORTE << 8U ) | 2U ), ( (uint16)( ICU_PORTE << 8U ) | 3U ), ( (uint16)( ICU_PORTE << 8U ) | 4U ), ( (uint16)( ICU_PORTE << 8U ) | 5U ),
            ( (uint16)( ICU_PORTE << 8U ) | 6U ), ( (uint16)( ICU_PORTE << 8U ) | 7U ), ( (uint16)( ICU_PORTE << 8U ) | 8U ), ( (uint16)( ICU_PORTE << 8U ) | 9U ),
            ( (uint16)( ICU_PORTE << 8U ) | 10U ), ( (uint16)( ICU_PORTE << 8U ) | 11U ), (uint16)0x0f00U /*0x0f00 is ACMP*/
    #elif defined( CPU_YTM32B1ME0 )
            ( (uint16)( ICU_PORTE << 8U ) | 11U ), ( (uint16)( ICU_PORTE << 8U ) | 10U ),
            ( (uint16)( ICU_PORTE << 8U ) | 5U ), ( (uint16)( ICU_PORTE << 8U ) | 4U ), ( (uint16)( ICU_PORTE << 8U ) | 3U ), ( (uint16)( ICU_PORTE << 8U ) | 1U ),
            ( (uint16)( ICU_PORTE << 8U ) | 0U ), ( (uint16)( ICU_PORTE << 8U ) | 9U ), ( (uint16)( ICU_PORTE << 8U ) | 8U ), ( (uint16)( ICU_PORTC << 8U ) | 3U ),
            ( (uint16)( ICU_PORTC << 8U ) | 2U ), ( (uint16)( ICU_PORTD << 8U ) | 5U ), ( (uint16)( ICU_PORTC << 8U ) | 1U ), ( (uint16)( ICU_PORTC << 8U ) | 0U ),
            ( (uint16)( ICU_PORTC << 8U ) | 15U ), ( (uint16)( ICU_PORTC << 8U ) | 14U ), ( (uint16)( ICU_PORTB << 8U ) | 1U ), ( (uint16)( ICU_PORTB << 8U ) | 0U ),
            ( (uint16)( ICU_PORTA << 8U ) | 7U ), ( (uint16)( ICU_PORTA << 8U ) | 6U ), ( (uint16)( ICU_PORTB << 8U ) | 13U ), ( (uint16)( ICU_PORTB << 8U ) | 12U ),
            ( (uint16)( ICU_PORTD << 8U ) | 3U ), ( (uint16)( ICU_PORTD << 8U ) | 2U ), ( (uint16)( ICU_PORTA << 8U ) | 3U ), ( (uint16)( ICU_PORTA << 8U ) | 2U ),
            ( (uint16)( ICU_PORTC << 8U ) | 7U ), ( (uint16)( ICU_PORTC << 8U ) | 6U ), ( (uint16)( ICU_PORTE << 8U ) | 6U ), ( (uint16)( ICU_PORTE << 8U ) | 2U ),
            ( (uint16)( ICU_PORTA << 8U ) | 13U ), ( (uint16)( ICU_PORTA << 8U ) | 12U ), (uint16)0x0f00U /*0x0f00 is ACMP*/
    #elif defined( CPU_YTM32B1MD1 )
            ( (uint16)( ICU_PORTE << 8U ) | 11U ), ( (uint16)( ICU_PORTE << 8U ) | 4U ),
            ( (uint16)( ICU_PORTE << 8U ) | 3U ), ( (uint16)( ICU_PORTE << 8U ) | 0U ), ( (uint16)( ICU_PORTE << 8U ) | 8U ), ( (uint16)( ICU_PORTC << 8U ) | 2U ),
            ( (uint16)( ICU_PORTC << 8U ) | 1U ), ( (uint16)( ICU_PORTC << 8U ) | 15U ), ( (uint16)( ICU_PORTB << 8U ) | 1U ), ( (uint16)( ICU_PORTA << 8U ) | 7U ),
            ( (uint16)( ICU_PORTB << 8U ) | 12U ), ( (uint16)( ICU_PORTD << 8U ) | 3U ), ( (uint16)( ICU_PORTA << 8U ) | 2U ), ( (uint16)( ICU_PORTC << 8U ) | 6U ),
            ( (uint16)( ICU_PORTE << 8U ) | 6U ), ( (uint16)( ICU_PORTA << 8U ) | 12U ), (uint16)0x0f00U
    #elif defined( CPU_YTM32B1HA0 )
            ( (uint16)( ICU_PORTE << 8U ) | 11U ),
            ( (uint16)( ICU_PORTE << 8U ) | 10U ),
            ( (uint16)( ICU_PORTE << 8U ) | 5U ),
            ( (uint16)( ICU_PORTE << 8U ) | 4U ),
            ( (uint16)( ICU_PORTE << 8U ) | 3U ),
            ( (uint16)( ICU_PORTE << 8U ) | 1U ),
            ( (uint16)( ICU_PORTE << 8U ) | 0U ),
            ( (uint16)( ICU_PORTE << 8U ) | 9U ),
            ( (uint16)( ICU_PORTE << 8U ) | 8U ),
            ( (uint16)( ICU_PORTC << 8U ) | 3U ),
    
            ( (uint16)( ICU_PORTB << 8U ) | 26U ),
            ( (uint16)( ICU_PORTD << 8U ) | 5U ),
            ( (uint16)( ICU_PORTC << 8U ) | 1U ),
            ( (uint16)( ICU_PORTC << 8U ) | 0U ),
            ( (uint16)( ICU_PORTC << 8U ) | 15U ),
            ( (uint16)( ICU_PORTC << 8U ) | 14U ),
            ( (uint16)( ICU_PORTB << 8U ) | 1U ),
            ( (uint16)( ICU_PORTB << 8U ) | 0U ),
            ( (uint16)( ICU_PORTA << 8U ) | 7U ),
            ( (uint16)( ICU_PORTA << 8U ) | 6U ),
    
            ( (uint16)( ICU_PORTB << 8U ) | 13U ),
            ( (uint16)( ICU_PORTB << 8U ) | 12U ),
            ( (uint16)( ICU_PORTD << 8U ) | 3U ),
            ( (uint16)( ICU_PORTD << 8U ) | 2U ),
            ( (uint16)( ICU_PORTA << 8U ) | 3U ),
            ( (uint16)( ICU_PORTA << 8U ) | 2U ),
            ( (uint16)( ICU_PORTA << 8U ) | 13U ),  // PTC7
            ( (uint16)( ICU_PORTA << 8U ) | 12U ),  // PTC6
            ( (uint16)( ICU_PORTE << 8U ) | 16U ),  // PTE6
            ( (uint16)( ICU_PORTE << 8U ) | 15 ),   // PTE2
    
            ( (uint16)( ICU_PORTE << 8U ) | 14U ),  // PTA13
            ( (uint16)( ICU_PORTE << 8U ) | 13U ),  // PTA12
            ( (uint16)( ICU_PORTE << 8U ) | 12U ),  // PTE16
            ( (uint16)( ICU_PORTE << 8U ) | 2U ),   // PTE15
            ( (uint16)( ICU_PORTA << 8U ) | 22U ),
            ( (uint16)( ICU_PORTE << 8U ) | 14U ),
            ( (uint16)( ICU_PORTD << 8U ) | 15U ),
            ( (uint16)( ICU_PORTD << 8U ) | 13U ),
            ( (uint16)( ICU_PORTB << 8U ) | 21U ),
            ( (uint16)( ICU_PORTB << 8U ) | 23U ),
    
            ( (uint16)( ICU_PORTB << 8U ) | 25U ),  // PTB2
            ( (uint16)( ICU_PORTC << 8U ) | 25U ),  // PTC25
            ( (uint16)( ICU_PORTC << 8U ) | 11U ),
            ( (uint16)( ICU_PORTC << 8U ) | 9U ),
            ( (uint16)( ICU_PORTB << 8U ) | 17U ),
            ( (uint16)( ICU_PORTD << 8U ) | 4U ),
            ( (uint16)( ICU_PORTB << 8U ) | 9U ),
            ( (uint16)( ICU_PORTB << 8U ) | 8U ),
            ( (uint16)( ICU_PORTA << 8U ) | 15U ),
            ( (uint16)( ICU_PORTE << 8U ) | 23U ),
    
            ( (uint16)( ICU_PORTE << 8U ) | 25U ),
            ( (uint16)( ICU_PORTA << 9U ) | 8U ),  // PTA9
            ( (uint16)( ICU_PORTA << 8U ) | 8U ),
            ( (uint16)( ICU_PORTB << 8U ) | 16U ),
            ( (uint16)( ICU_PORTB << 8U ) | 15U ),
            ( (uint16)( ICU_PORTA << 8U ) | 1U ),
            ( (uint16)( ICU_PORTA << 8U ) | 16U ),
            ( (uint16)( ICU_PORTA << 8U ) | 25U ),
            ( (uint16)( ICU_PORTA << 8U ) | 30U ),
            ( (uint16)( ICU_PORTB << 8U ) | 28U ),
    
            ( (uint16)( ICU_PORTC << 8U ) | 18U ),
            ( (uint16)( ICU_PORTA << 8U ) | 26U ),
            ( (uint16)( ICU_PORTC << 8U ) | 23U ),
            ( (uint16)( ICU_PORTB << 8U ) | 11U ),
            (uint16)0x0f00U /*0x0f00 is ACMP*/
    #endif
    };
    

    有部分定义跟规格书上写的对不上,里面( (uint16)( ICU_PORTA << 9U ) | 8U ),看着就是移位操作错了。0469befb-2fc3-4506-8aca-b0061b52009f-image.png

    1 条回复 最后回复
    0
    • janJ 离线
      janJ 离线
      jan YunTu
      写于 最后由 编辑
      #2

      您好,感谢您的反馈,后续软件版本更新时会修复这个问题。

      1 条回复 最后回复
      0

    • 云途论坛规则/Yuntu Forum Rules

      发帖前请查看

    • YCT离线License申请流程

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

    • YT CONFIG TOOL调查问卷

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

    • demo
      12
      can
      9
      lin stack
      6
      yt-link
      5
      vscode
      3
      adc模块
      2
      i2c
      2
      uuid
      2
      Online Users
      • 登录

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