Herzog Library 00.00.01  rel_libdev.herzog.00.00.01.10606
Data Structures | Macros | Functions | Variables
pir_device.c File Reference
#include <stdint.h>
#include "hdf.h"
#include "pir_device.h"
#include "errno.h"

Data Structures

struct  PIR_State_t
 

Macros

#define CLOCK   10000 /* 10KHz */
 
#define INHB_FACTOR   2048
 

Functions

static int32_t pir_init (uint8_t clkdiv, uint8_t etime, uint8_t itime, uint8_t atten)
 
static int32_t pir_enable_wakeup (void *cb)
 
static int32_t pir_disable_wakeup (void)
 
static int32_t pir_disable (void)
 
PIR_Device_tPIR_devRequest (void)
 The instance of RTC device. More...
 
void PIR_Handler (void)
 
int32_t PIR_devInit (PIR_Device_t *dev, uint8_t clkdiv, uint8_t etime, uint8_t itime, uint8_t atten)
 Initialize PIR settings. More...
 
int32_t PIR_devEnableWakeup (PIR_Device_t *dev, void *cb)
 Enable PIR Wakeup. More...
 
int32_t PIR_devDisableWakeup (PIR_Device_t *dev)
 Disable PIR Wakeup. More...
 
int32_t PIR_devDisable (PIR_Device_t *dev)
 Disable PIR. More...
 

Variables

PIR_State_t PIR_State
 

Detailed Description

This file is proprietary to Indie Semiconductor. All rights reserved. Reproduction or distribution, in whole or in part, is forbidden except by express written permission of Indie Semiconductor.

Macro Definition Documentation

#define CLOCK   10000 /* 10KHz */
#define INHB_FACTOR   2048

Function Documentation

int32_t PIR_devDisable ( PIR_Device_t dev)

Disable PIR.

Parameters
devThe pointer to PIR device.
Returns
0 or error code upon a failure.
int32_t PIR_devDisableWakeup ( PIR_Device_t dev)

Disable PIR Wakeup.

Parameters
devThe pointer to PIR device.
Returns
0 or error code upon a failure.
int32_t PIR_devEnableWakeup ( PIR_Device_t dev,
void *  cb 
)

Enable PIR Wakeup.

Parameters
devThe pointer to PIR device.
cbThe pointer to the call back function for the wakeup interrupt.
Returns
0 or error code upon a failure.
int32_t PIR_devInit ( PIR_Device_t dev,
uint8_t  clkdiv,
uint8_t  etime,
uint8_t  itime,
uint8_t  atten 
)

Initialize PIR settings.

Parameters
devThe pointer to PIR device.
clkdivThe setting for clock divider. The valid values: 8,16,24,32
etimeThe event time in decisecond.
itimeThe inhibit time in seconds.
attenThe attenuation in dB. The valid value 0 to 26 dB.
Returns
0 or error code upon a failure.
PIR_Device_t* PIR_devRequest ( void  )

The instance of RTC device.

Request A PIR Device.

static int32_t pir_disable ( void  )
static
static int32_t pir_disable_wakeup ( void  )
static
static int32_t pir_enable_wakeup ( void *  cb)
static
void PIR_Handler ( void  )
static int32_t pir_init ( uint8_t  clkdiv,
uint8_t  etime,
uint8_t  itime,
uint8_t  atten 
)
static

Variable Documentation

PIR_State_t PIR_State
Initial value:
= {
.cb_func = NULL,
.wakeup_flag = 0,
}