⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pmic_tcled.h

📁 i.mx27 soc for wince 6.0
💻 H
字号:
//-----------------------------------------------------------------------------
//
//  Copyright (C) 2005, Motorola Inc. All Rights Reserved
//
//-----------------------------------------------------------------------------
/*---------------------------------------------------------------------------
* Copyright (C) 2006, Freescale Semiconductor, Inc. All Rights Reserved.
* THIS SOURCE CODE, AND ITS USE AND DISTRIBUTION, IS SUBJECT TO THE TERMS
* AND CONDITIONS OF THE APPLICABLE LICENSE AGREEMENT 
*--------------------------------------------------------------------------*/

//------------------------------------------------------------------------------
//
// File: pmic_tcled.h
//
//  Defines the public prototypes and types used for the PMIC Tri-Color LED API.
//
//------------------------------------------------------------------------------

#ifndef __PMIC_TCLED_H__
#define __PMIC_TCLED_H__

#include "pmic_basic_types.h"

#ifdef __cplusplus
extern "C" {
#endif

//------------------------------------------------------------------------------
// Defines
#define MC13783_MAX_FUNLIGHT_CURRENT_LEVEL   TCLED_CUR_LEVEL_4
#define MC13783_MAX_FUNLIGHT_CYCLE_TIME      TC_CYCLE_TIME_4
#define MC13783_MAX_FUNLIGHT_DUTY_CYCLE      31
#define MC13783_BLENDED_RAMPS_SLOW           0x0
#define MC13783_BLENDED_RAMPS_FAST           0x1
#define MC13783_SAW_RAMPS_SLOW               0x2
#define MC13783_SAW_RAMPS_FAST               0x3
#define MC13783_BLENDED_BOWTIE_RAMPS_SLOW    0x4
#define MC13783_BLENDED_BOWTIE_RAMPS_FAST    0x5
#define MC13783_CHASING_LIGHTS_RGB_SLOW      0x6
#define MC13783_CHASING_LIGHTS_RGB_FAST      0x7
#define MC13783_CHASING_LIGHTS_BGR_SLOW      0x8
#define MC13783_CHASING_LIGHTS_BGR_FAST      0x9

//------------------------------------------------------------------------------
// Types

typedef enum _FUNLIGHT_BANK {
    TCLED_FUN_BANK1 = 0,
    TCLED_FUN_BANK2,
    TCLED_FUN_BANK3
} FUNLIGHT_BANK;

typedef enum _TCLED_MODE {
    TCLED_IND_MODE = 0,
    TCLED_FUN_MODE
} TCLED_MODE;

typedef enum _IND_CHANNEL {
    TCLED_IND_RED = 0 ,
    TCLED_IND_GREEN
} IND_CHANNEL;

typedef enum _FUNLIGHT_CHANNEL {
    TCLED_FUN_CHANNEL1 = 0,
    TCLED_FUN_CHANNEL2,
    TCLED_FUN_CHANNEL3
} FUNLIGHT_CHANNEL;


typedef enum _IND_BLINK_MODE {
    TCLED_IND_OFF = 0,
    TCLED_IND_BLINK_1,
    TCLED_IND_BLINK_2,
    TCLED_IND_BLINK_3,
    TCLED_IND_BLINK_4,
    TCLED_IND_BLINK_5,
    TCLED_IND_BLINK_6,
    TCLED_IND_BLINK_7,
    TCLED_IND_BLINK_8,
    TCLED_IND_BLINK_9,
    TCLED_IND_BLINK_10,
    TCLED_IND_BLINK_11,
    TCLED_IND_ON
} TCLED_IND_BLINK_MODE;


typedef enum _TCLED_CUR_LEVEL {
    TCLED_CUR_LEVEL_1 = 0,
    TCLED_CUR_LEVEL_2,
    TCLED_CUR_LEVEL_3,
    TCLED_CUR_LEVEL_4
} TCLED_CUR_LEVEL;


typedef enum _TCLED_FUN_CYCLE_TIME {
    TC_CYCLE_TIME_1 = 0,
    TC_CYCLE_TIME_2,
    TC_CYCLE_TIME_3,
    TC_CYCLE_TIME_4
} TCLED_FUN_CYCLE_TIME;


typedef enum _TCLED_FUN_SPEED {
    TC_OFF = 0,
    TC_SLOW,
    TC_FAST
} TCLED_FUN_SPEED;


typedef enum _TCLED_FUN_STROBE_SPEED {
    TC_STROBE_OFF = 0,
    TC_STROBE_SLOW,
    TC_STROBE_FAST
} TCLED_FUN_STROBE_SPEED;

typedef enum _CHASELIGHT_PATTERN{ 
    RGB = 0, 
    BGR 
} CHASELIGHT_PATTERN;

//------------------------------------------------------------------------------
// Functions

PMIC_STATUS PmicTCLEDEnable(TCLED_MODE mode, FUNLIGHT_BANK bank);
PMIC_STATUS PmicTCLEDDisable(FUNLIGHT_BANK bank);
PMIC_STATUS PmicTCLEDGetMode(TCLED_MODE* mode, FUNLIGHT_BANK bank);
PMIC_STATUS PmicTCLEDIndicatorSetCurrentLevel(IND_CHANNEL channel, TCLED_CUR_LEVEL level);
PMIC_STATUS PmicTCLEDIndicatorGetCurrentLevel(IND_CHANNEL channel, TCLED_CUR_LEVEL* level);
PMIC_STATUS PmicTCLEDIndicatorSetBlinkPattern(IND_CHANNEL channel, TCLED_IND_BLINK_MODE mode, BOOL skip);
PMIC_STATUS PmicTCLEDIndicatorGetBlinkPattern(IND_CHANNEL channel, TCLED_IND_BLINK_MODE* mode, BOOL* skip);
PMIC_STATUS PmicTCLEDFunLightSetCurrentLevel(FUNLIGHT_BANK bank, FUNLIGHT_CHANNEL channel, TCLED_CUR_LEVEL level);
PMIC_STATUS PmicTCLEDFunLightGetCurrentLevel(FUNLIGHT_BANK bank, FUNLIGHT_CHANNEL channel, TCLED_CUR_LEVEL* level);
PMIC_STATUS PmicTCLEDFunLightSetCycleTime(FUNLIGHT_BANK bank, TCLED_FUN_CYCLE_TIME ct);
PMIC_STATUS PmicTCLEDFunLightGetCycleTime(FUNLIGHT_BANK bank, TCLED_FUN_CYCLE_TIME* ct);
PMIC_STATUS PmicTCLEDFunLightSetDutyCycle(FUNLIGHT_BANK bank, FUNLIGHT_CHANNEL channel, unsigned char dc);
PMIC_STATUS PmicTCLEDFunLightGetDutyCycle(FUNLIGHT_BANK bank, FUNLIGHT_CHANNEL channel, unsigned char* dc);
PMIC_STATUS PmicTCLEDFunLightBlendedRamps(FUNLIGHT_BANK bank, TCLED_FUN_SPEED speed);
PMIC_STATUS PmicTCLEDFunLightSawRamps(FUNLIGHT_BANK bank, TCLED_FUN_SPEED speed);
PMIC_STATUS PmicTCLEDFunLightBlendedBowtie(FUNLIGHT_BANK bank, TCLED_FUN_SPEED speed);
PMIC_STATUS PmicTCLEDFunLightChasingLightsPattern(FUNLIGHT_BANK bank, CHASELIGHT_PATTERN pattern, TCLED_FUN_SPEED speed);
PMIC_STATUS PmicTCLEDFunLightStrobe(FUNLIGHT_CHANNEL channel, TCLED_FUN_STROBE_SPEED speed);
PMIC_STATUS PmicTCLEDFunLightRampUp(FUNLIGHT_BANK bank, FUNLIGHT_CHANNEL channel);
PMIC_STATUS PmicTCLEDFunLightRampDown(FUNLIGHT_BANK bank, FUNLIGHT_CHANNEL channel);
PMIC_STATUS PmicTCLEDFunLightRampOff(FUNLIGHT_BANK bank, FUNLIGHT_CHANNEL channel);
PMIC_STATUS PmicTCLEDFunLightTriodeOn(FUNLIGHT_BANK bank, FUNLIGHT_CHANNEL channel);
PMIC_STATUS PmicTCLEDFunLightTriodeOff(FUNLIGHT_BANK bank, FUNLIGHT_CHANNEL channel);
PMIC_STATUS PmicTCLEDEnableEdgeSlow(void);
PMIC_STATUS PmicTCLEDDisableEdgeSlow(void);
PMIC_STATUS PmicTCLEDEnableHalfCurrent(void);
PMIC_STATUS PmicTCLEDDisableHalfCurrent(void);


#ifdef __cplusplus
}
#endif

#endif // __PMIC_TCLED_H__

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -