打印
[STM32L4]

STM32L4 LPTIM无法进入中断,从STOP模式唤醒

[复制链接]
3195|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
kyzb003|  楼主 | 2019-1-24 18:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
代码如下, 根据官方例子等都不能进入中断,LSE可以使用(LPUART使用LSE能正常工作),调试过程中进入过2次, 手贱没保存。  求救。

#include "lptim.h"

LPTIM_HandleTypeDef LptimHandle;

void LPTIM1_IRQHandler(void)
{
    HAL_LPTIM_IRQHandler(&LptimHandle);
   
    log(DEBUG,"lptim count=%u\n" , HAL_LPTIM_ReadCounter(&LptimHandle));
   
}

void HAL_LPTIM1_MspInit(LPTIM_HandleTypeDef *lptimHandle)
{
    __HAL_RCC_LPTIM1_CLK_ENABLE();

    HAL_NVIC_SetPriority(LPTIM1_IRQn, 5, 0);
    HAL_NVIC_EnableIRQ(LPTIM1_IRQn);

}
#define Period               (uint32_t) 65535
#define Timeout              (uint32_t) (32768 - 1)

int lptim_hal_init(void)
{
    RCC_PeriphCLKInitTypeDef        RCC_PeriphCLKInitStruct;       
   
    HAL_Delay(2000);

        /* Select the LSE clock as LPTIM peripheral clock */
    RCC_PeriphCLKInitStruct.PeriphClockSelection = RCC_PERIPHCLK_LPTIM1;
    RCC_PeriphCLKInitStruct.Lptim1ClockSelection = RCC_LPTIM1CLKSOURCE_LSE;  
    HAL_RCCEx_PeriphCLKConfig(&RCC_PeriphCLKInitStruct);

    LptimHandle.Instance = LPTIM1;

    LptimHandle.Init.Clock.Source    = LPTIM_CLOCKSOURCE_APBCLOCK_LPOSC;
    LptimHandle.Init.CounterSource   = LPTIM_COUNTERSOURCE_INTERNAL;
    LptimHandle.Init.Clock.Prescaler = LPTIM_PRESCALER_DIV1;  
    LptimHandle.Init.Trigger.Source  = LPTIM_TRIGSOURCE_SOFTWARE;
    LptimHandle.Init.OutputPolarity  = LPTIM_OUTPUTPOLARITY_HIGH;
    LptimHandle.Init.UpdateMode      = LPTIM_UPDATE_IMMEDIATE;
    LptimHandle.Init.Input1Source    = LPTIM_INPUT1SOURCE_GPIO;
    LptimHandle.Init.Input2Source    = LPTIM_INPUT2SOURCE_GPIO;

    if (HAL_LPTIM_Init(&LptimHandle) != HAL_OK)
    {
        Error_Handler(__FILE__,__LINE__);
    }
    INIT_PRINT(INIT_OK,"LPTIM1 init");
   
    if (HAL_LPTIM_Counter_Start(&LptimHandle, 1000) != HAL_OK)
    {
        Error_Handler(__FILE__,__LINE__);
    }

    HAL_PWREx_EnterSTOP1Mode(PWR_STOPENTRY_WFI);
   
    log(DEBUG,"lptime init\n");
  
    return 0;
}



沙发
caoenq| | 2019-1-25 09:27 | 只看该作者
因为你根本就没开中断,当然进不去

使用特权

评论回复
板凳
香水城| | 2019-1-25 11:15 | 只看该作者
楼上提醒是有道理的。
HAL库里都有现存代码,你可以比较参考下。

使用特权

评论回复
地板
21mengnan| | 2019-1-25 14:47 | 只看该作者
哈哈,中断没开,

使用特权

评论回复
5
21mengnan| | 2019-1-25 14:49 | 只看该作者
楼主睡醒了,哭哭啼啼,人家问他哭啥,他说他梦见女朋友跟他分手了。
旁边人上去就是一巴掌,你丫什么时候有过女朋友?

使用特权

评论回复
6
maleisj| | 2019-1-27 14:14 | 只看该作者
是不是触发源 选的不对或者根本没有触发

使用特权

评论回复
7
paotangsan| | 2019-2-19 13:06 | 只看该作者
在中断向量那解除屏蔽了吗

使用特权

评论回复
8
蒙牛灬伊利| | 2019-5-29 17:02 | 只看该作者
楼主,我遇到了同样的问题,怎么解决的?

使用特权

评论回复
9
kyzb003|  楼主 | 2019-6-5 18:17 | 只看该作者
蒙牛灬伊利 发表于 2019-5-29 17:02
楼主,我遇到了同样的问题,怎么解决的?

设置问题, 你好需要吗, 我贴源码上来, 不过要换电脑

使用特权

评论回复
10
小蝴蝶| | 2021-4-26 09:34 | 只看该作者
楼主你好,我也遇到了这个问题,请问可以要一份代码学习一下吗

使用特权

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

本版积分规则

4

主题

34

帖子

0

粉丝