S32 SDK
lptmr_hal.c
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2015, Freescale Semiconductor, Inc.
3  * Copyright 2016 NXP
4  * All rights reserved.
5  *
6  * THIS SOFTWARE IS PROVIDED BY NXP "AS IS" AND ANY EXPRESSED OR
7  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
8  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
9  * IN NO EVENT SHALL NXP OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
10  * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
11  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
12  * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
13  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
14  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
15  * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
16  * THE POSSIBILITY OF SUCH DAMAGE.
17  */
18 
30 #include "lptmr_hal.h"
31 
32 /*******************************************************************************
33  * Code
34  ******************************************************************************/
35 
36 /*FUNCTION**********************************************************************
37  *
38  * Function Name : LPTMR_HAL_Init
39  * Description : This function configures the LPTMR instance to reset value.
40  *
41  * Implements : LPTMR_HAL_Init_Activity
42  *END**************************************************************************/
43 void LPTMR_HAL_Init(LPTMR_Type* const base)
44 {
45  DEV_ASSERT(base != NULL);
46 
47  /* First, disable the module so we can write the registers */
48  uint32_t tmp = base->CSR;
50  tmp |= LPTMR_CSR_TEN(0u);
51  base->CSR = tmp;
52 
53  base->CSR = LPTMR_CSR_TEN(0u) | \
54  LPTMR_CSR_TMS(0u) | \
55  LPTMR_CSR_TFC(0u) | \
56  LPTMR_CSR_TPP(0u) | \
57  LPTMR_CSR_TPS(0u) | \
58  LPTMR_CSR_TIE(0u) | \
59  LPTMR_CSR_TCF(0u) | \
60  LPTMR_CSR_TDRE(0u);
61 
62  base->PSR = LPTMR_PSR_PCS(0u) | \
63  LPTMR_PSR_PBYP(0u) | \
64  LPTMR_PSR_PRESCALE(0u);
65 
66  base->CMR = LPTMR_CMR_COMPARE(0u);
67 }
68 /*******************************************************************************
69  * EOF
70  ******************************************************************************/
void LPTMR_HAL_Init(LPTMR_Type *const base)
Initialize the LPTMR instance to reset values.
Definition: lptmr_hal.c:43
#define LPTMR_CMR_COMPARE(x)
Definition: S32K144.h:6637
__IO uint32_t CSR
Definition: S32K144.h:6552
#define LPTMR_PSR_PCS(x)
Definition: S32K144.h:6624
#define DEV_ASSERT(x)
Definition: devassert.h:78
__IO uint32_t PSR
Definition: S32K144.h:6553
__IO uint32_t CMR
Definition: S32K144.h:6554
#define LPTMR_CSR_TEN(x)
Definition: S32K144.h:6591
#define LPTMR_CSR_TCF_MASK
Definition: S32K144.h:6612
#define LPTMR_CSR_TEN_MASK
Definition: S32K144.h:6588