发新帖我要提问
12
返回列表
打印
[综合信息]

HC32 F00 时钟

[复制链接]
楼主: gaoke231
手机看帖
扫描二维码
随时随地手机跟帖
21
gaoke231|  楼主 | 2020-3-29 20:19 | 只看该作者 回帖奖励 |倒序浏览
设定Systick配置
en_result_t Clk_SysTickConfig(stc_clk_systickcfg_t *pstcCfg)
{
    if (NULL == pstcCfg)
    {
        return ErrorInvalidParameter;
    }

    M0P_CLOCK->PERI_CLKEN_f.TICK = 1;
    switch (pstcCfg->enClk)
    {
        case ClkRCH:
            M0P_CLOCK->SYSTICK_CR_f.CLK_SEL = 0x2;
            break;
        case ClkRCL:
            M0P_CLOCK->SYSTICK_CR_f.CLK_SEL = 0x1;
            break;
        case ClkXTH:
            M0P_CLOCK->SYSTICK_CR_f.CLK_SEL = 0x3;
            break;
        default:
            return ErrorInvalidParameter;
    }

    M0P_CLOCK->SYSTICK_CR_f.NOREF = pstcCfg->bNoRef;

    SysTick->LOAD  = (uint32_t)(pstcCfg->u32LoadVal - 1UL);                         /* set reload register */
    NVIC_SetPriority(SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL);                /* set Priority for Systick Interrupt */
    SysTick->VAL   = 0UL;                                                           /* Load the SysTick Counter Value */
    SysTick->CTRL  = SysTick_CTRL_ENABLE_Msk;
   
    return Ok;
}

使用特权

评论回复
22
gaoke231|  楼主 | 2020-3-29 20:20 | 只看该作者
Systick SKEW 获取
boolean_t Clk_SysTickSkewGet(void)
{
    return (boolean_t)M0P_CLOCK->SYSTICK_CR_f.SKEW;
}

使用特权

评论回复
23
gaoke231|  楼主 | 2020-3-29 20:21 | 只看该作者
Systick CALIB 获取
uint32_t Clk_SysTickStcalibGet(void)
{
    return (uint32_t)M0P_CLOCK->SYSTICK_CR_f.STCALIB;
}

使用特权

评论回复
24
gaoke231|  楼主 | 2020-3-29 20:23 | 只看该作者
设定时钟外设调试开关
en_result_t Clk_DebugClk(en_clk_debug_t enPeri, boolean_t bFlag)
{
    switch (enPeri)
    {
        case ClkDBGTim0:
        case ClkDBGTim1:
        case ClkDBGTim2:
        case ClkDBGLpTim:
        case ClkDBGTim4:
        case ClkDBGTim5:
        case ClkDBGTim6:
        case ClkDBGTPca:
        case ClkDBGTWdt:
        case ClkDBGTRtc:
        case ClkDBGTTick:
            setBit(&M0P_CLOCK->DEBUG_ACTIVE, 1 << enPeri, bFlag);
            break;
        default:
            return ErrorInvalidParameter;
    }
    return Ok;
}

使用特权

评论回复
25
詹求实| | 2020-3-30 09:04 | 只看该作者
为什么时钟需要解锁呢?什么情况下可以锁死时钟呢?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则