📄 debugcdc.c
字号:
/********************************************************************
Copyright (c) 2006-2007 E-compass electronic Co.,Ltd.
File name: debugcdc.c
Author: Yun Chen
Email: walnutcy@163.com
Version: 0.5
Data:
Descriptions:
Others:
Functions list:
History: ...
*********************************************************************/
#define _DEBUG_CDC_EXT_
#include "..\includes.h"
#include "ir_table.h"
#ifdef _DEBUG_CDC_
static U8 gCurrSong; //current misc track number
static U8 gCurrDisc; //current disc number
static U8 gLastDisc; //Last disc number
static BOOL gCDCRv_9D; // receive (MAGZ 0x9D) or not
static U8 gCDCStatus[8];
//--------------------------------------------------------
U8 CDC_SystemIrDecoder(U8 *msg);
void DeC_Init();//debug CDC init
U8 CDC_RvChgerStatus(U8* rvData);
//---------------------------------------------------------
void DeC_Init()// debug CDC init
{
gCurrDisc = 1;
gCurrSong = 1;
gCDCRv_9D = 0;
gLastDisc = 1;
return;
}
/*************************************************************
**Function Name: void DeC_RvChgerStatus(U8* rvData)
**Description: data recieved from changer ,then stored to a struction
**Input Parameter:
**Output Parameter:
**Date: 06/02/13
**************************************************************/
U8 CDC_RvChgerStatus(U8* rvData)
{
U8 recstatus;
U8 chkparity;
recstatus=rvData[0]&0x0f;
if(recstatus !=0)
CDchger.DevID=(rvData[0]&0x7f)>>4;
//// if there ara some status returned, indicate connect is ok
if(recstatus>=8||recstatus<=0x0f)
SetConnectOk();
switch(recstatus)
{
case REV_CD_STATUS:
chkparity= CDC_CaculParity(rvData,15);
if(chkparity!=(rvData[7]&0x0f))
{
break;
}
CDchger.CDCtrlMode=(rvData[1]&0xf0)>>4;
CDchger.CurTrkNO=((rvData[1]&0x0f)<<4)|((rvData[2]&0xf0)>>4);
CDchger.CurDiscNO=((rvData[2]&0x0f));
CDchger.CurTrkMin=((rvData[3]&0x0f)<<4)|((rvData[4]&0xf0)>>4);
CDchger.CurTrkSec=((rvData[4]&0x0f)<<4)|((rvData[5]&0xf0)>>4);
CDchger.FunctStatus=((rvData[5]&0x0c)<<2)|((rvData[6]&0x80)>>4)|((rvData[6]&0x30)>>3)|((rvData[6]&0x04)>>2);
CDchger.StatusId=(rvData[7]&0xf0)>>4;
gCurrSong=CDchger.CurTrkNO;
gCurrDisc=CDchger.CurDiscNO;
break;
case REV_DISC_CHG_STATUS:
break;
case REV_CD_TOC_STATUS:
break;
case REV_MAGZ_STATUS:
break;
case REV_ERROR_STATUS:
break;
case REV_CONNECT_STATUS:
break;
default:
break;
}
return 0;
}
U8 CDC_SystemIrDecoder(U8 *msg)
{
switch(*msg)
{
case IR_POWER_CODE: // close
*msg = CDC_CLOSE_CMD;
break;
case IR_OPEN_CODE: // open
*msg = CDC_OPEN_CMD;
break;
case IR_MUTE_CODE:// connect check
*msg = CDC_CNT_CHK_CMD;
break;
case IR_DISP_CODE:// status
*msg = CDC_STATUS_CMD;
break;
case IR_ENTER_CODE:// play
*msg = CDC_PLAY_CMD;
break;
case IR_RDM_CODE: // pause
*msg = CDC_PAUSE_CMD;
break;
case IR_AMS_CODE: // stop
*msg = CDC_STOP_CMD;
break;
case IR_FB_CODE:
*msg = CDC_BWD_CMD;
break;
case IR_FF_CODE:
*msg = CDC_FWD_CMD;
break;
case IR_VOL_ADD_CODE:
*msg = CDC_RP_SG_CMD;
break;
case IR_VOL_DEC_CODE:
*msg = CDC_RP_DISC_CMD;
break;
case IR_ZOOM_OUT_CODE:
*msg = CDC_INTR1_CDM;
break;
case IR_ZOOM_IN_CODE:
*msg = CDC_INTR0_CDM;
break;
case IR_SKIP_PREV_CODE:// random song
*msg = CDC_RAND0_CMD;
break;
case IR_SKIP_NEXT_CODE: // random disc
*msg = CDC_RAND1_CMD;
break;
case IR_BAND_CODE:// back up status
*msg = CDC_BK_STATUS_CMD;
break;
case IR_NUM1_CODE:
gCurrSong = 1;
*(msg + 0) = CDC_S_SG_DISC_CMD;
*(msg + 1) = gCurrDisc;
*(msg + 2) = gCurrSong;
break;
case IR_NUM2_CODE:
gCurrSong = 2;
*(msg + 0) = CDC_S_SG_DISC_CMD;
*(msg + 1) = gCurrDisc;
*(msg + 2) = gCurrSong;
break;
case IR_NUM3_CODE:
gCurrSong = 3;
*(msg + 0) = CDC_S_SG_DISC_CMD;
*(msg + 1) = gCurrDisc;
*(msg + 2) = gCurrSong;
break;
case IR_NUM4_CODE:
gCurrSong = 4;
*(msg + 0) = CDC_S_SG_DISC_CMD;
*(msg + 1) = gCurrDisc;
*(msg + 2) = gCurrSong;
break;
case IR_NUM5_CODE:
gCurrSong = 5;
*(msg + 0) = CDC_S_SG_DISC_CMD;
*(msg + 1) = gCurrDisc;
*(msg + 2) = gCurrSong;
break;
case IR_NUM6_CODE:
gCurrSong = 6;
*(msg + 0) = CDC_S_SG_DISC_CMD;
*(msg + 1) = gCurrDisc;
*(msg + 2) = gCurrSong;
break;
case IR_NUM7_CODE:
gCurrSong = 7;
*(msg + 0) = CDC_S_SG_DISC_CMD;
*(msg + 1) = gCurrDisc;
*(msg + 2) = gCurrSong;
break;
case IR_NUM8_CODE:
gCurrSong = 8;
*(msg + 0) = CDC_S_SG_DISC_CMD;
*(msg + 1) = gCurrDisc;
*(msg + 2) = gCurrSong;
break;
case IR_NUM9_CODE:
gCurrSong = 9;
*(msg + 0) = CDC_S_SG_DISC_CMD;
*(msg + 1) = gCurrDisc;
*(msg + 2) = gCurrSong;
break;
case IR_NUM0_CODE:
gCurrSong = 10;
*(msg + 0) = CDC_S_SG_DISC_CMD;
*(msg + 1) = gCurrDisc;
*(msg + 2) = gCurrSong;
break;
case IR_UP_CODE:
if (11 > gCurrDisc)
{
gCurrDisc++;
}
else
{
gCurrDisc = 1;
}
*(msg + 0) = CDC_S_SG_DISC_CMD;
*(msg + 1) = gCurrDisc;
*(msg + 2) = gCurrSong;
break;
case IR_DOWN_CODE:
break;
if (1 < gCurrDisc)
{
gCurrDisc--;
}
else
{
gCurrDisc = 10;
}
*(msg + 0) = CDC_S_SG_DISC_CMD;
*(msg + 1) = gCurrDisc;
*(msg + 2) = gCurrSong;
default:
return (0);
}
return (1);
}
///////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -