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

📄 hciproc.cpp

📁 蓝牙协议HCI层指令发送,主要用于测试HCI以下的代码及RF部分测试.
💻 CPP
字号:

//--------------------------------------------------------------- %FILH_BEG% --
//
//  Project:		$$ProjectName
//
//  File name:		HCIProc.cpp
//  Author:			
//  Description:	  
//
//  Revision History:
//  $Log: $
//
//  Rev 1.00  15 July 2000 Initial release
//    
//
//  Copyright (c) TelenComm Corporation  2000   -   All rights reserved    
//--------------------------------------------------------------- %FILH_END% 

//------------------------------------------------------------------------------
//
//  Includes
//
//------------------------------------------------------------------------------

#include "..\Commands\Inc\HCICmdPacket.h"
#include "..\Inc\HCIProc.h"

//------------------------------------------------------------------------------
//
//  Code
//
//------------------------------------------------------------------------------
CHCIProcessor* g_pHCIProcessor;

CHCIProcessor::CHCIProcessor()
:CHCICommandProcessor(),
                      CHCIDataProcessor(),
                      CHCIEventProcessor()

{

}

sint32 CHCIProcessor::ReceiveHCI_Packet(uint8* const pPacket, sint32 PacketLen)
{
  //CHCI_Packet HCIPacket(pPacket);
  uint8* pPkt = pPacket;
  switch(*pPacket)
  {
  case CHCI_Packet::HCI_CMD_PACKET:
    {
      CHCI_CmdPacket HCIPacket(pPkt);

      switch(ParseHCICommand(HCIPacket, PacketLen))
      {
      case CHCIBaseCmdProcessor::ePARSING_OK:
          break;
      case CHCIBaseCmdProcessor::eUNKNOWN_CMD:
          *pPacket = CHCIBaseCmdProcessor::eUNKNOWN_CMD;
          //m_pPacket = pPacket;
          TransmitHCI_Packet(pPacket,PacketLen);
          break;
          //
      case CHCIBaseCmdProcessor::ePARAMETER_SIZE_MISMATCH:
      
          *pPacket = CHCIBaseCmdProcessor::ePARAMETER_SIZE_MISMATCH;
          //m_pPacket = pPacket;
          TransmitHCI_Packet(pPacket,PacketLen);
          break;
      }
    }
    break;
  case CHCI_Packet::HCI_ACL_DATA_PACKET:
    break;
  case CHCI_Packet::HCI_SCO_DATA_PACKET:
    break;
  case CHCI_Packet::HCI_EVENT_PACKET:
    //wrong transmission
    break;
  default:
    // error in transmission
    break;

  }
  return true;
}
inline void CHCIProcessor::TransmitHCI_Packet(uint8* pPacket, sint32 PacketLen) 
{ 
  g_pBTLogicalIODevice->ReceiveHCI_Packet(pPacket,PacketLen);
}

//------------------------------------------------------------------------------
// End of HCIProc.cpp

⌨️ 快捷键说明

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