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

📄 hci_debug.cpp

📁 蓝牙芯片ZV4301的调试工具源码.做蓝牙产品时很有参考价值内部有串口的编程序源码,对有串口编成需求的同志有参考价值.
💻 CPP
字号:
#include <stdio.h>
#include <string.h>
#include "HCI_DEBUG.h"
#include "HostControlInterface.h"

struct __DEBUG{
  unsigned __int8 MID;
  unsigned __int8 MID2;
  char STRING[128];
};
static const __DEBUG OGF_DEBUG_STRING[]={
  {OGF_HOST_CONTROLLER_BASEBAND_COMMAND,0x00, "HOST CONTROLLER BASEBAND COMMAND"},
  {OGF_INFOMATION_PARAMETERS,0x00, "INFOMATION PARAMETERS"},
  {OGF_ZEEVO_SPECIFIC_COMMAND,0x00, "ZEEVO SPECIFIC COMMAND"}
};
static const __DEBUG OCF_DEBUG_STRING[]={
  {OGF_HOST_CONTROLLER_BASEBAND_COMMAND, OCF_RESET, "RESET"},
  {OGF_HOST_CONTROLLER_BASEBAND_COMMAND, OCF_CHANGE_LOCAL_NAME, "CHANGE LOCAL NAME"},
  {OGF_HOST_CONTROLLER_BASEBAND_COMMAND, OCF_READ_LOCAL_NAME, "READ LOCAL NAME"},
  {OGF_INFOMATION_PARAMETERS, OCF_READ_LOCAL_VERSION, "READ LOCAL VERSION"},
  {OGF_INFOMATION_PARAMETERS, OCF_READ_SUPPORT_FEATURES, "READ SUPPORT FEATURES"},
  {OGF_INFOMATION_PARAMETERS, OCF_READ_COUNTRY_CODE, "READ COUNTRY CODE"},
  {OGF_INFOMATION_PARAMETERS, OCF_READ_BD_ADDR, "READ BD_ADDR"},
  {OGF_ZEEVO_SPECIFIC_COMMAND, OCF_CONSOLE_COMMAND, "CONSOLE COMMAND"}
};
static const __DEBUG EVENT_DEBUG_STRING[]={
  {HCI_EVENT_INQ_COMPLETE, 0x00, "INQUIRY COMPLETE"},
  {HCI_EVENT_INQ_RESULT,0x00, "INQUIRY RESULT"},
  {HCI_EVENT_CONN_COMPLETE,0x00, "CONNECTION COMPLETE"},
  {HCI_EVENT_CONN_REQUEST,0x00, "CONNECTION REQUEST"},
  {HCI_EVENT_DISCONN_COMPLETE,0x00, "DISCONNECT COMPLETE"},
  {HCI_EVENT_AUTH_COMPLETE,0x00, "AUTHENTICATION COMPLETE"},
  {HCI_EVENT_REMOTENAMEREQ_COMPLETE,0x00,"REMOTE NAME REQUEST COMPLETE"},
  {HCI_EVENT_CMD_COMPLETE,0x00, "COMMAND COMPLETE"},
  {HCI_EVENT_ZEEVO_EVENT, 0x00, "ZEEVO EVENT"}
};

static const __DEBUG ERR_DEBUG_STRING[] = {
  {0x01, 0x00, "Unknown HCI Command"},
  {0x02, 0x00, "Unknown Connection Identifier"},
  {0x03, 0x00, "Hardware Failure"},
  {0x04, 0x00, "Page Timeout"},
  {0x05, 0x00, "Authenticaion Failure"}
};

static const __DEBUG ZV_EVT_DEBUG_STRING[]= {
  {ZEEVI_EVENT_PRINT, 0x00, "Print Zeevo Event"}
};
/*******************************************************************************
*        Debug function
*******************************************************************************/
char* _DEBUG_STRING::GetOGF(int Index)
{
  sprintf(data, "NOT VERIFIED OGF");
  for(int i=0; i<sizeof(OGF_DEBUG_STRING)/sizeof(__DEBUG); i++)
    if(Index == OGF_DEBUG_STRING[i].MID)
      sprintf(data, OGF_DEBUG_STRING[i].STRING);

  return data;
}

char* _DEBUG_STRING::GetEVENT(int Index)
{
  sprintf(data, "NOT VERIFIED EVENT");
  for(int i=0; i<sizeof(EVENT_DEBUG_STRING)/sizeof(__DEBUG); i++)
    if(Index == EVENT_DEBUG_STRING[i].MID)
      sprintf(data, EVENT_DEBUG_STRING[i].STRING);

  return data;
}
char* _DEBUG_STRING::GetOCF(int Index1, int Index2)
{
  sprintf(data, "NOT VERIFIED OCF");
  for(int i=0; i<sizeof(OCF_DEBUG_STRING)/sizeof(__DEBUG); i++)
    if(Index1 == OCF_DEBUG_STRING[i].MID &&
       Index2 == OCF_DEBUG_STRING[i].MID2 )
      sprintf(data, OCF_DEBUG_STRING[i].STRING);

  return data;

}

char* _DEBUG_STRING::GetErrCode(int Index)
{
  sprintf(data, "STATUS OK");
  for(int i=0; i<sizeof(ERR_DEBUG_STRING)/sizeof(__DEBUG); i++)
    if(Index == ERR_DEBUG_STRING[i].MID)
      sprintf(data, ERR_DEBUG_STRING[i].STRING);

  return data;
}

char* _DEBUG_STRING::GetZvEvt(int Index)
{
  sprintf(data, "UNKNOWN EVENT CODE");
  for(int i=0; i<sizeof(ZV_EVT_DEBUG_STRING)/sizeof(__DEBUG); i++)
    if(Index == ZV_EVT_DEBUG_STRING[i].MID)
      sprintf(data, ZV_EVT_DEBUG_STRING[i].STRING);

  return data;
}

⌨️ 快捷键说明

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