HAL LPTIM Overview

Introducing LPTIM

group LPTIM_Introduction

  • This introduction is under development.

Module and files

The following diagram illustrates the LPTIM module and its associated files.

Module and files diagram

Component diagram

The following diagram illustrates the software components involved in the LPTIM module. It shows the interactions between the user application, HAL drivers, low-level drivers, and the hardware components.

@startuml

<style>

componentDiagram {

   arrow {

      FontSize 8

   }

}

</style>



title LPTIM Software Component Diagram



package "HAL" {

    [HAL_LPTIM]

    [HAL_DMA]

    [HAL_RCC]

}



package "Low Layer" {

    [CMSIS]

    [LPTIM Interrupt routine service]

    [DMA Interrupt routine service]

    [RCC Interrupt routine service]

}



package "HW" {

    [STM32_HW]

}



[Appli] --> [HAL_LPTIM] : <b>HAL LPTIM API</b>

[HAL_LPTIM] <-l- [HAL_RCC] : Call RCC APIs

[HAL_LPTIM] -r-> [HAL_DMA] : Call DMA APIs

[HAL_LPTIM] <-- [LPTIM Interrupt routine service]

[HAL_LPTIM] <-r- [HAL_DMA]:Half transfer complete\nTransfer complete\nError

[HAL_DMA] <-d- [DMA Interrupt routine service]

[HAL_LPTIM] -u--> [LPTIM Interrupt routine service]: LPTIMx Irq

[HAL_LPTIM] <-u- [DMA Interrupt routine service] : DMA Channel Irq

[STM32_HW] -u-> [HAL_LPTIM] : Hardware interrupt

@enduml

Configuration table

The following table lists the configuration defines for the HAL LPTIM module, specifying their locations, default values, and descriptions:

group LPTIM_Configuration_Table

Configuration inside the HAL LPTIM driver:

Config defines

Where

Default value

Note

USE_HAL_LPTIM_MODULE

hal_conf.h

1

Enable the HAL LPTIM module

USE_HAL_LPTIM_REGISTER_CALLBACKS

hal_conf.h

0

Allow user to define his own callback

USE_HAL_LPTIM_CLK_ENABLE_MODEL

hal_conf.h

HAL_CLK_ENABLE_NO

Enable the gating of the peripheral clock

USE_HAL_LPTIM_USER_DATA

hal_conf.h

0

Add an user data inside HAL LPTIM handle

USE_HAL_LPTIM_GET_LAST_ERRORS

hal_conf.h

0

Enable retrieving last processes error codes

USE_HAL_LPTIM_DMA

hal_conf.h

1

Enable DMA code inside HAL LPTIM

USE_HAL_CHECK_PARAM

hal_conf.h

0

Enable checking of vital parameters at runtime

USE_HAL_MUTEX

hal_conf.h

0

Enable the use of semaphore in the HAL driver

USE_HAL_CHECK_PROCESS_STATE

hal_conf.h

0

Enable atomic access to process state check

USE_ASSERT_DBG_PARAM

PreProc env

NONE

Enable check parameters for HAL

USE_ASSERT_DBG_STATE

PreProc env

NONE

Enable check state for HAL