亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? headset_led.c

?? bluelab 3.52 里面的立體聲程序源代碼
?? C
字號:
/****************************************************************************
Copyright (C) Cambridge Silicon Radio Ltd. 2004-2006
Part of BlueLab 3.5.2-release

FILE NAME
    headset_led.c

DESCRIPTION
    Controls the flashing of the LED depending on the current state.

*/


/****************************************************************************
    Header files
*/
#include "headset_private.h"
#include "headset_led.h"

#include <pio.h>
#include <message.h>
#include <stdlib.h>
#include <stdio.h>

#define LED_PAIRING_TIME_ON             200
#define LED_CONNECTED_TIME_ON           1000
#define LED_IDLE_ON                     200
#define LED_CHARGING_TIME_ON            500
#define LED_BATTERY_LOW_TIME_ON         500
#define LED_POWER_DOWN_TIME_ON         	2000
#define LED_INIT_TIME_ON				200
#define LED_DEL_PAIRED_LIST_ON          200

#define LED_PAIRING_TIME_OFF            200
#define LED_CONNECTED_TIME_OFF          2000
#define LED_IDLE_OFF                    2000
#define LED_CHARGING_TIME_OFF           1000
#define LED_BATTERY_LOW_TIME_OFF        3000
#define LED_POWER_DOWN_TIME_OFF         200
#define LED_INIT_TIME_OFF				200
#define LED_DEL_PAIRED_LIST_OFF         200
#define LED_IDLE_TIME 					500

/************************************************************/
/*LED callback function for LED flashing sequences to show
Button presses e.g. on power on/power off/reset paired device list*/
static uint32 ledOnEventCallback(ledState state)
{
    bool blue_on = (PioGet() & LED_BLUE?TRUE:FALSE);
    blue_on = blue_on;
    if (blue_on)
    {
        PioSet(LED_BLUE, 0);
		if (state & LED_INIT)
			return LED_INIT_TIME_OFF;
		if (state & LED_POWER_DOWN)
			return LED_POWER_DOWN_TIME_OFF;
		if (state & LED_DEL_PAIRED_LIST)
			return LED_DEL_PAIRED_LIST_OFF ;
		return LED_IDLE_OFF;
    }
    else
    {
        PioSet(LED_BLUE, LED_BLUE);
		if (state & LED_INIT)
			return LED_INIT_TIME_ON;
		if (state & LED_POWER_DOWN)
			return LED_POWER_DOWN_TIME_ON;
		if (state & LED_DEL_PAIRED_LIST)
			return LED_DEL_PAIRED_LIST_ON ;
        return LED_IDLE_ON;
    }
	
	
}

/***************************************************************/
/* LED callback function for Blue LED*/
static uint32 ledCallback(ledState state)
{
   bool blue_on;
   if ((PioGet() & LED_BLUE) == LED_BLUE)
	   blue_on=1;
   else
	   blue_on=0;
    if (state == LED_NONE)
    {
        if (blue_on)
		{
            PioSet(LED_BLUE, 0);
        	return LED_IDLE_OFF;
		}
	}
        
    blue_on = blue_on;
    if (blue_on)
    {
        PioSet(LED_BLUE, 0);
        if (state & LED_PAIRING)
		{			
			PioSet(LED_RED, LED_RED);
            return LED_PAIRING_TIME_OFF;
		}
        if (state & LED_CONNECTED)
            return LED_CONNECTED_TIME_OFF;
        return LED_IDLE_OFF;
    }
    else
    {
        PioSet(LED_BLUE, LED_BLUE);
        if (state & LED_PAIRING)
		{
			PioSet(LED_RED, 0);
            return LED_PAIRING_TIME_ON;
		}
    	if (state & LED_CONNECTED)
            return LED_CONNECTED_TIME_ON;
        return LED_IDLE_ON;
    }
	
}

/**************************************************************************/
/*LED callback function for RED LED*/
/*RED LED is used to indicate if the headset is in pairing mode
  (together with the BLUE LED) or if the headset is charging or 
  the battery is low*/
static uint32 redLedCallback(ledState state)
{
	
  
   bool red_on;
   if ((PioGet() & LED_RED) == LED_RED)
	   red_on=1;
   else
	   red_on=0;

    red_on = red_on;
	PioSetDir(LED_RED, ~0);
    if (red_on)
    {
		if (state & LED_INIT)
			{
				PioSet(LED_RED, 0);
            	return LED_IDLE_TIME ;
			}
			if (state & LED_PAIRING)
            return LED_IDLE_TIME ;
        if (state & LED_CHARGING)
			{
				PioSet(LED_RED, 0);
            	return LED_CHARGING_TIME_OFF;
			}
        if (state & LED_BATTERY_LOW)
			{
            	PioSet(LED_RED, 0);
				return LED_BATTERY_LOW_TIME_OFF;
			}
		 if (state & LED_BATTERY_FULL)
			{
				return LED_IDLE_TIME ;
			}
		 PioSet(LED_RED, 0);
         return LED_IDLE_TIME ;
    }
    else
    {
		if (state & LED_INIT)
            return LED_IDLE_TIME ;
  		if (state & LED_PAIRING)
		{
            return LED_IDLE_TIME ;
		}
        if (state & LED_CHARGING)
			{
			PioSet(LED_RED, LED_RED);
            return LED_CHARGING_TIME_ON;
		}
        if (state & LED_BATTERY_LOW)
			{
			PioSet(LED_RED, LED_RED);
            return LED_BATTERY_LOW_TIME_ON;
		}
		if (state & LED_BATTERY_FULL)
			{
			PioSet(LED_RED, LED_RED);
            return LED_IDLE_TIME ;
		}
        return LED_IDLE_TIME ;
    }
}
	
/**************************************************************************/
/*Initialise blue LED*/
void startBlueLed(ledState state)
{
	APP_ON_EVENT_LED_UPDATE_IND_T* message;
	message = malloc(sizeof(APP_ON_EVENT_LED_UPDATE_IND_T));
	PioSetDir(LED_BLUE, ~0);
	PioSet(LED_BLUE, 0);
	message->count=0;
	message->id = APP_INIT_LED_UPDATE_IND;
    /* call timer function ASAP */
    MessageSendLater(getAppTask(), APP_INIT_LED_UPDATE_IND, message, 1000);
}

/**************************************************************************/
/*Initialise red LED*/
void startRedLed()
{
		PioSetDir(LED_RED, ~0);
		PioSet(LED_RED, 0);
		MessageSendLater(getAppTask(), APP_RED_LED_UPDATE_IND, 0, 0);
}

/**************************************************************************/
/*Update blue LED*/
ledState updateLed(const headsetTaskData *app, ledState state)
{
	uint32 newState;
    if ((app->a2dp_state == avHeadsetA2dpConnected) || 
        (app->a2dp_state == avHeadsetA2dpStreaming) ||
        (app->hfp_state >= headsetConnected))
        state |= LED_CONNECTED;
    else
        state &= ~LED_CONNECTED;
	newState = ledCallback(state);
	MessageSendLater(getAppTask(), APP_LED_UPDATE_IND, 0, newState);  
    return state;
}

/*****************************************************************************/
/*Update red LED*/
ledState updateRedLed(const headsetTaskData *app, ledState state)
{
    uint32 newRedState;

    newRedState = redLedCallback(state);
	MessageSendLater(getAppTask(), APP_RED_LED_UPDATE_IND, 0, newRedState);   
    return state;
}
/**************************************************************************/
/*Update blue LED to indicate a special event, e.g. power on/power off/ 
paired device list reset*/
ledState updateBlueLedOnEvent(const headsetTaskData *app, ledState state,const APP_ON_EVENT_LED_UPDATE_IND_T* m)
{
	uint32 newState;
	APP_ON_EVENT_LED_UPDATE_IND_T* message = malloc(sizeof(APP_ON_EVENT_LED_UPDATE_IND_T));
	message->count= m->count;
	message->count = message->count+1;
	message->id = m->id;
	newState = ledOnEventCallback(state);
	MessageSendLater(getAppTask(), message->id, message, newState);  
    return state;
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
**欧美大码日韩| 成人午夜又粗又硬又大| 国产福利一区二区三区视频| 欧美视频你懂的| 国产精品久久久久久一区二区三区| 日欧美一区二区| 色香蕉成人二区免费| 久久九九99视频| 美国欧美日韩国产在线播放| 欧洲精品一区二区三区在线观看| 欧美激情综合在线| 国产久卡久卡久卡久卡视频精品| 欧美美女网站色| 亚洲一区二区美女| 99re在线精品| 综合久久给合久久狠狠狠97色| 韩国一区二区在线观看| 日韩精品一区二区三区在线 | 中文字幕一区二| 久久精品国产在热久久| 欧美日本在线一区| 亚洲综合激情网| 日本韩国欧美三级| 亚洲乱码中文字幕综合| 91在线免费看| 亚洲免费观看高清完整版在线观看熊| 国产69精品久久久久777| 久久亚洲精华国产精华液| 美国欧美日韩国产在线播放| 日韩欧美精品在线| 久久精品国内一区二区三区| 精品成人一区二区三区| 国产一区二区精品久久| 国产色爱av资源综合区| 成人午夜看片网址| 国产精品久久久久影院| 色婷婷精品大在线视频| 一区二区三区不卡视频在线观看| 欧美视频在线一区| 日本不卡视频在线| 日韩欧美激情在线| 国产不卡视频一区二区三区| 中文字幕一区二区三区色视频| 99精品欧美一区二区三区综合在线| 亚洲欧美一区二区三区极速播放| 色婷婷av一区二区三区gif| 亚洲不卡av一区二区三区| 日韩免费观看高清完整版在线观看| 久久疯狂做爰流白浆xx| 日本一区二区成人在线| 色猫猫国产区一区二在线视频| 亚洲mv在线观看| 精品久久久久久亚洲综合网 | 亚洲日本免费电影| 久久久91精品国产一区二区三区| 国产一区二区不卡在线| 国产精品无遮挡| 色综合天天狠狠| 丝袜美腿一区二区三区| 国产亚洲精品中文字幕| 欧美亚洲禁片免费| 极品少妇xxxx精品少妇偷拍| 中文字幕av一区二区三区高| 欧美性感一类影片在线播放| 精品夜夜嗨av一区二区三区| 亚洲日本成人在线观看| 欧美一区二区在线看| 夫妻av一区二区| 奇米亚洲午夜久久精品| 成人免费小视频| 91精品欧美综合在线观看最新| 不卡大黄网站免费看| 麻豆精品在线播放| 一级特黄大欧美久久久| 久久久国产午夜精品| 欧美日韩精品一区二区在线播放 | 日本一区中文字幕| 国产精品国产三级国产| 日韩免费观看高清完整版在线观看| 波多野结衣亚洲| 九一久久久久久| 午夜精品成人在线| 日韩一区在线免费观看| 精品1区2区在线观看| 欧美撒尿777hd撒尿| 99久久99久久精品免费观看| 激情成人综合网| 日韩黄色免费电影| 一片黄亚洲嫩模| 中文字幕五月欧美| 久久网站热最新地址| 欧美一二三四区在线| 欧美视频在线观看一区二区| 91啪九色porn原创视频在线观看| 紧缚奴在线一区二区三区| 日本欧美一区二区| 天天色 色综合| 亚洲国产精品久久艾草纯爱| 日韩毛片一二三区| 国产精品免费丝袜| 国产精品毛片大码女人| 中文无字幕一区二区三区| 精品三级在线看| 精品免费99久久| 亚洲精品一区二区三区香蕉| 日韩一区二区三区四区| 91精品国产综合久久久久久| 欧美日本在线一区| 在线播放国产精品二区一二区四区| 一本大道久久a久久综合婷婷| www.久久久久久久久| 成人精品视频网站| 91免费小视频| 91黄色激情网站| 欧美四级电影在线观看| 欧美性色黄大片| 欧美一区二区黄| 日韩欧美一区二区三区在线| 欧美大片国产精品| 欧美成人vr18sexvr| 精品播放一区二区| 日本一区二区电影| 亚洲精品久久久蜜桃| 狠狠色狠狠色综合系列| 高清不卡一区二区| 99久久精品国产精品久久| 在线视频你懂得一区二区三区| 欧洲av一区二区嗯嗯嗯啊| 欧美精三区欧美精三区| 日韩欧美一区二区久久婷婷| 久久亚洲精精品中文字幕早川悠里| 久久精品一区二区三区不卡 | 看国产成人h片视频| 国内精品久久久久影院薰衣草 | 久久国产精品区| 国产一区在线精品| 99国产精品久久久久久久久久久| 色吧成人激情小说| 欧美一区二区三区日韩| 久久久久国产成人精品亚洲午夜| 中文字幕综合网| 日本中文一区二区三区| 懂色av一区二区三区蜜臀| 色视频一区二区| 精品成人在线观看| 一区二区三区小说| 久久国内精品视频| 91女厕偷拍女厕偷拍高清| 欧美一区二区三区免费视频 | 国产偷v国产偷v亚洲高清| 亚洲丝袜美腿综合| 精品一区二区av| 在线免费av一区| 国产婷婷一区二区| 午夜精品福利一区二区蜜股av| 国产河南妇女毛片精品久久久| 色悠悠久久综合| 久久一夜天堂av一区二区三区| 亚洲欧美韩国综合色| 国产精品一级二级三级| 欧美视频你懂的| 亚洲欧洲99久久| 国产一区激情在线| 91精品在线观看入口| 一区二区成人在线视频 | 精品午夜久久福利影院| 欧美在线观看一区二区| 欧美韩日一区二区三区| 日韩精品福利网| 在线中文字幕一区| 中文字幕欧美激情一区| 捆绑调教一区二区三区| 91九色02白丝porn| 国产精品国产三级国产aⅴ中文| 日韩激情一区二区| 日本韩国一区二区三区视频| 中文字幕国产一区| 国产在线一区二区综合免费视频| 欧美福利视频一区| 亚洲国产va精品久久久不卡综合| 成人国产电影网| 国产欧美一区二区精品性色超碰 | 91性感美女视频| 久久久久久久国产精品影院| 日产精品久久久久久久性色| 欧美日韩一级视频| 亚洲午夜在线视频| 欧美熟乱第一页| 午夜视频久久久久久| 在线这里只有精品| 亚洲一区二区三区四区五区黄 | 成人精品视频一区| 国产欧美一区二区在线| 国产成人精品亚洲日本在线桃色| 亚洲精品一区二区三区影院| 国产一区久久久| 日本一区二区三区久久久久久久久不 | 精品嫩草影院久久| 国产综合成人久久大片91| 精品区一区二区|