打印
[STM32L4]

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

[复制链接]
900|17
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
liliang9554|  楼主 | 2021-4-12 19:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
根据官方例子等都不能进入中断

使用特权

评论回复
沙发
liliang9554|  楼主 | 2021-4-12 19:39 | 只看该作者
LSE可以使用(LPUART使用LSE能正常工作)

使用特权

评论回复
评论
chenjun233 2021-6-2 23:37 回复TA
想问下 你可以用LSE给定时器当时钟源吗 停机模式下 我想让定时器输出方波 
板凳
jlyuan| | 2021-4-12 19:42 | 只看该作者

楼主程序可以公开吗?贴程序看下吧,这么说看不出什么原因

使用特权

评论回复
地板
liliang9554|  楼主 | 2021-4-12 19:43 | 只看该作者
#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;
}

使用特权

评论回复
5
liliang9554|  楼主 | 2021-4-12 19:45 | 只看该作者
调试过程中进入过2次, 手贱没保存。  

使用特权

评论回复
6
morrisk| | 2021-4-12 19:47 | 只看该作者
因为你根本就没开中断,当然进不去

使用特权

评论回复
7
wuhany| | 2021-4-12 19:49 | 只看该作者
楼上提醒是有道理的。
HAL库里都有现存代码,你可以比较参考下。

使用特权

评论回复
8
zhenykun| | 2021-4-12 19:51 | 只看该作者
哈哈,中断没开,

使用特权

评论回复
9
zhaoxqi| | 2021-4-12 19:53 | 只看该作者
是不是触发源 选的不对或者根本没有触发

使用特权

评论回复
10
chuxh| | 2021-4-12 19:56 | 只看该作者
在中断向量那解除屏蔽了吗

使用特权

评论回复
11
dingy| | 2021-4-12 19:58 | 只看该作者
楼主,我遇到了同样的问题,怎么解决的?

使用特权

评论回复
12
liliang9554|  楼主 | 2021-4-12 20:00 | 只看该作者
设置问题, 你好需要吗, 我贴源码上来, 不过要换电脑

使用特权

评论回复
13
renzheshengui| | 2021-5-7 11:51 | 只看该作者
是官方的开发板吗

使用特权

评论回复
14
wakayi| | 2021-5-7 11:52 | 只看该作者
恩恩恩 中断使能没有开启吧

使用特权

评论回复
15
wowu| | 2021-5-7 11:55 | 只看该作者
其他中断能进入吗

使用特权

评论回复
16
xiaoqizi| | 2021-5-7 11:57 | 只看该作者
有相应的触发源吗

使用特权

评论回复
17
木木guainv| | 2021-5-7 11:58 | 只看该作者
修改哪里了啊

使用特权

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

本版积分规则

950

主题

11568

帖子

6

粉丝