📄 mx21ddk.cpp
字号:
return ;
}
pTimer = (TimerClass*)hDdkObj->DdkObj;
// Do operation by it's original memember function
if(bEnable)
pTimer->EnableTimerInterrupt();
else
pTimer->DisableTimerInterrupt();
DRV_FUNCTION_EXIT();
}
void DDKSetTImerDelay(TIMERHANDLE timerhandle, TIMERMODE_C timerMode,
UINT32 period, TIMERPERIODTYPE_C type)
{
DDK_OBJECT_HANDLE hDdkObj;
TimerClass* pTimer;
DRV_FUNCTION_ENTRY();
hDdkObj = (DDK_OBJECT_HANDLE)timerhandle;
// Check the invalid pointer
if(!hDdkObj || !hDdkObj->DdkObj){
DEBUGMSG(ZONE_ERROR, (_T("DDKSetTimerStart(): NULL pointer\r\n")));
DRV_FUNCTION_EXIT();
return ;
}
// Do operation by it's original memember function
pTimer = (TimerClass*)hDdkObj->DdkObj;
pTimer->SetTimerDelay(timerMode, period, type);
DRV_FUNCTION_EXIT();
}
CSPIHANDLE DDKCreateCSPIObject(CSPIID_C CspiId)
{
DDK_OBJECT_HANDLE hDdkObj;
DRV_FUNCTION_ENTRY();
hDdkObj = new DDK_OBJECT;
if(hDdkObj){
hDdkObj->HandleType = DDK_CSPI_HANDLE;
hDdkObj->DdkObj = (DDKObject) new CspiClass(CspiId);
if(!hDdkObj->DdkObj){
delete hDdkObj;
hDdkObj = NULL;
}
}
// Check if successful
if(!hDdkObj)
DEBUGMSG(ZONE_ERROR, (_T("DDKCreateCSPIObject(void) failed\r\n")));
DRV_FUNCTION_EXIT();
return (CSPIHANDLE)hDdkObj;
}
BOOL DDKCspiConfigure(CSPIHANDLE cspihandle, PCSPICONFIGDATA_T pData)
{
DDK_OBJECT_HANDLE hDdkObj;
CspiClass* pCspi;
BOOL bret;
DRV_FUNCTION_ENTRY();
hDdkObj = (DDK_OBJECT_HANDLE)cspihandle;
// Check the invalid pointer
if(!hDdkObj || !hDdkObj->DdkObj){
DEBUGMSG(ZONE_ERROR, (_T("DDKCspiConfigure(): NULL pointer\r\n")));
DRV_FUNCTION_EXIT();
return FALSE;
}
// Do operation by it's original memember function
pCspi = (CspiClass*)hDdkObj->DdkObj;
bret = pCspi->Configure(pData);
DRV_FUNCTION_EXIT();
return bret;
}
BOOL DDKCspiChipSelect(CSPIHANDLE cspihandle, CSPISSPORTID_C PortId)
{
DDK_OBJECT_HANDLE hDdkObj;
CspiClass* pCspi;
BOOL bret;
DRV_FUNCTION_ENTRY();
hDdkObj = (DDK_OBJECT_HANDLE)cspihandle;
// Check the invalid pointer
if(!hDdkObj || !hDdkObj->DdkObj){
DEBUGMSG(ZONE_ERROR, (_T("DDKCspiChipSelect(): NULL pointer\r\n")));
DRV_FUNCTION_EXIT();
return FALSE;
}
// Do operation by it's original memember function
pCspi = (CspiClass*)hDdkObj->DdkObj;
bret = pCspi->ChipSelect(PortId);
DRV_FUNCTION_EXIT();
return bret;
}
void DDKCspiHwResourceLock(CSPIHANDLE cspihandle, BOOL bLock)
{
DDK_OBJECT_HANDLE hDdkObj;
CspiClass* pCspi;
DRV_FUNCTION_ENTRY();
hDdkObj = (DDK_OBJECT_HANDLE)cspihandle;
// Check the invalid pointer
if(!hDdkObj || !hDdkObj->DdkObj){
DEBUGMSG(ZONE_ERROR, (_T("DDKCspiHwResourceLock(): NULL pointer\r\n")));
DRV_FUNCTION_EXIT();
return ;
}
// Do operation by it's original memember function
pCspi = (CspiClass*)hDdkObj->DdkObj;
pCspi->CspiHwResourceLock(bLock);
DRV_FUNCTION_EXIT();
}
UINT8 DDKCspiExchange(CSPIHANDLE cspihandle, UINT32 *pTxBuf, UINT32 *pRxBuf, UINT8 NumOfWords)
{
DDK_OBJECT_HANDLE hDdkObj;
CspiClass* pCspi;
UINT8 uret;
DRV_FUNCTION_ENTRY();
hDdkObj = (DDK_OBJECT_HANDLE)cspihandle;
// Check the invalid pointer
if(!hDdkObj || !hDdkObj->DdkObj){
DEBUGMSG(ZONE_ERROR, (_T("DDKCspiExchange(): NULL pointer\r\n")));
DRV_FUNCTION_EXIT();
return 0;
}
// Do operation by it's original memember function
pCspi = (CspiClass*)hDdkObj->DdkObj;
uret = pCspi->Exchange(pTxBuf, pRxBuf, NumOfWords);
DRV_FUNCTION_EXIT();
return uret;
}
BOOL DDKCspiSetSwap(CSPIHANDLE cspihandle, BOOL swap)
{
DDK_OBJECT_HANDLE hDdkObj;
CspiClass* pCspi;
BOOL bret;
DRV_FUNCTION_ENTRY();
hDdkObj = (DDK_OBJECT_HANDLE)cspihandle;
// Check the invalid pointer
if(!hDdkObj || !hDdkObj->DdkObj){
DEBUGMSG(ZONE_ERROR, (_T("swap(): NULL pointer\r\n")));
DRV_FUNCTION_EXIT();
return FALSE;
}
// Do operation by it's original memember function
pCspi = (CspiClass*)hDdkObj->DdkObj;
bret = pCspi->SetSwap(swap);
DRV_FUNCTION_EXIT();
return bret;
}
BOOL DDKCspiStartDMAExchange(CSPIHANDLE cspihandle, UINT8 mode)
{
DDK_OBJECT_HANDLE hDdkObj;
CspiClass* pCspi;
BOOL bret;
DRV_FUNCTION_ENTRY();
hDdkObj = (DDK_OBJECT_HANDLE)cspihandle;
// Check the invalid pointer
if(!hDdkObj || !hDdkObj->DdkObj){
DEBUGMSG(ZONE_ERROR, (_T("StartDMAExchange(): NULL pointer\r\n")));
DRV_FUNCTION_EXIT();
return FALSE;
}
// Do operation by it's original memember function
pCspi = (CspiClass*)hDdkObj->DdkObj;
bret = pCspi->StartDMAExchange(mode);
DRV_FUNCTION_EXIT();
return bret;
}
BOOL DDKCspiStopDMAExchange(CSPIHANDLE cspihandle, UINT8 mode)
{
DDK_OBJECT_HANDLE hDdkObj;
CspiClass* pCspi;
BOOL bret;
DRV_FUNCTION_ENTRY();
hDdkObj = (DDK_OBJECT_HANDLE)cspihandle;
// Check the invalid pointer
if(!hDdkObj || !hDdkObj->DdkObj){
DEBUGMSG(ZONE_ERROR, (_T("StopDMAExchange(): NULL pointer\r\n")));
DRV_FUNCTION_EXIT();
return FALSE;
}
// Do operation by it's original memember function
pCspi = (CspiClass*)hDdkObj->DdkObj;
bret = pCspi->StopDMAExchange(mode);
DRV_FUNCTION_EXIT();
return bret;
}
UINT32 DDKCspiReadRxFifo(CSPIHANDLE cspihandle)
{
DDK_OBJECT_HANDLE hDdkObj;
CspiClass* pCspi;
UINT32 uret;
DRV_FUNCTION_ENTRY();
hDdkObj = (DDK_OBJECT_HANDLE)cspihandle;
// Check the invalid pointer
if(!hDdkObj || !hDdkObj->DdkObj){
DEBUGMSG(ZONE_ERROR, (_T("ReadRxFifo(): NULL pointer\r\n")));
DRV_FUNCTION_EXIT();
return 0;
}
// Do operation by it's original memember function
pCspi = (CspiClass*)hDdkObj->DdkObj;
uret = pCspi->ReadRxFifo();
DRV_FUNCTION_EXIT();
return uret;
}
BOOL DDKCspiIsRxFifoDataReady(CSPIHANDLE cspihandle)
{
DDK_OBJECT_HANDLE hDdkObj;
CspiClass* pCspi;
BOOL bret;
DRV_FUNCTION_ENTRY();
hDdkObj = (DDK_OBJECT_HANDLE)cspihandle;
// Check the invalid pointer
if(!hDdkObj || !hDdkObj->DdkObj){
DEBUGMSG(ZONE_ERROR, (_T("IsRxFifoDataReady(): NULL pointer\r\n")));
DRV_FUNCTION_EXIT();
return FALSE;
}
// Do operation by it's original memember function
pCspi = (CspiClass*)hDdkObj->DdkObj;
bret = pCspi->IsRxFifoDataReady();
DRV_FUNCTION_EXIT();
return bret;
}
BOOL DDKCspiIsExchangeOngoing(CSPIHANDLE cspihandle)
{
DDK_OBJECT_HANDLE hDdkObj;
CspiClass* pCspi;
BOOL bret;
DRV_FUNCTION_ENTRY();
hDdkObj = (DDK_OBJECT_HANDLE)cspihandle;
// Check the invalid pointer
if(!hDdkObj || !hDdkObj->DdkObj){
DEBUGMSG(ZONE_ERROR, (_T("IsExchangeOngoing(): NULL pointer\r\n")));
DRV_FUNCTION_EXIT();
return FALSE;
}
// Do operation by it's original memember function
pCspi = (CspiClass*)hDdkObj->DdkObj;
bret = pCspi->IsExchangeOngoing();
DRV_FUNCTION_EXIT();
return bret;
}
I2CHANDLE DDKCreateI2CObject(void)
{
DDK_OBJECT_HANDLE hDdkObj;
DRV_FUNCTION_ENTRY();
hDdkObj = new DDK_OBJECT;
// Check if successful, create I2C object if successful
if(hDdkObj){
hDdkObj->HandleType = DDK_I2C_HANDLE;
hDdkObj->DdkObj = (DDKObject) new I2cClass();
if(!hDdkObj->DdkObj){
delete hDdkObj;
hDdkObj = NULL;
}
}
// Check if creating is successful
if(!hDdkObj)
DEBUGMSG(ZONE_ERROR, (_T("DDKCreateI2CObject(void) failed\r\n")));
DRV_FUNCTION_EXIT();
return (I2CHANDLE)hDdkObj;
}
int DDKGetI2CErrorCode(I2CHANDLE i2chandle)
{
DDK_OBJECT_HANDLE hDdkObj;
I2cClass* pI2c;
int iret;
DRV_FUNCTION_ENTRY();
hDdkObj = (DDK_OBJECT_HANDLE)i2chandle;
// Check the invalid pointer
if(!hDdkObj || !hDdkObj->DdkObj){
DEBUGMSG(ZONE_ERROR, (_T("DDKGetI2CErrorCode(): NULL pointer\r\n")));
DRV_FUNCTION_EXIT();
return -1;
}
// Do operation by it's original memember function
pI2c = (I2cClass*)hDdkObj->DdkObj;
iret = pI2c->GetErrorCode();
DRV_FUNCTION_EXIT();
return iret;
}
void DDKI2CWriteMasterData(I2CHANDLE i2chandle, BYTE byAddress, BYTE* pbyDataBuffer, int iDataSize)
{
DDK_OBJECT_HANDLE hDdkObj;
I2cClass* pI2c;
DRV_FUNCTION_ENTRY();
hDdkObj = (DDK_OBJECT_HANDLE)i2chandle;
// Check the invalid pointer
if(!hDdkObj || !hDdkObj->DdkObj){
DEBUGMSG(ZONE_ERROR, (_T("DDKI2CWriteMasterData(): NULL pointer\r\n")));
DRV_FUNCTION_EXIT();
return ;
}
// Do operation by it's original memember function
pI2c = (I2cClass*)hDdkObj->DdkObj;
pI2c->WriteMasterData(byAddress, pbyDataBuffer, iDataSize);
DRV_FUNCTION_EXIT();
}
void DDKI2CReadMasterData(I2CHANDLE i2chandle, BYTE byAddress, BYTE* pbyRxDataBuffer, int iRxDataSize)
{
DDK_OBJECT_HANDLE hDdkObj;
I2cClass* pI2c;
DRV_FUNCTION_ENTRY();
hDdkObj = (DDK_OBJECT_HANDLE)i2chandle;
// Check the invalid pointer
if(!hDdkObj || !hDdkObj->DdkObj){
DEBUGMSG(ZONE_ERROR, (_T("DDKI2CReadMasterData(): NULL pointer\r\n")));
DRV_FUNCTION_EXIT();
return ;
}
// Do operation by it's original memember function
pI2c = (I2cClass*)hDdkObj->DdkObj;
pI2c->ReadMasterData(byAddress, pbyRxDataBuffer, iRxDataSize);
DRV_FUNCTION_EXIT();
}
void DDKI2CLock(I2CHANDLE i2chandle)
{
DDK_OBJECT_HANDLE hDdkObj;
I2cClass* pI2c;
DRV_FUNCTION_ENTRY();
hDdkObj = (DDK_OBJECT_HANDLE)i2chandle;
// Check the invalid pointer
if(!hDdkObj || !hDdkObj->DdkObj){
DEBUGMSG(ZONE_ERROR, (_T("DDKI2CLock(): NULL pointer\r\n")));
DRV_FUNCTION_EXIT();
return ;
}
// Do operation by it's original memember function
pI2c = (I2cClass*)hDdkObj->DdkObj;
pI2c->Lock();
DRV_FUNCTION_EXIT();
}
void DDKI2CUnlock(I2CHANDLE i2chandle)
{
DDK_OBJECT_HANDLE hDdkObj;
I2cClass* pI2c;
DRV_FUNCTION_ENTRY();
hDdkObj = (DDK_OBJECT_HANDLE)i2chandle;
// Check the invalid pointer
if(!hDdkObj || !hDdkObj->DdkObj){
DEBUGMSG(ZONE_ERROR, (_T("DDKI2CUnlock(): NULL pointer\r\n")));
DRV_FUNCTION_EXIT();
return ;
}
// Do operation by it's original memember function
pI2c = (I2cClass*)hDdkObj->DdkObj;
pI2c->Unlock();
DRV_FUNCTION_EXIT();
}
BOOL DDKSetI2CFrequency(I2CHANDLE i2chandle, DWORD dwFrequency)
{
DDK_OBJECT_HANDLE hDdkObj;
I2cClass* pI2c;
BOOL bret;
DRV_FUNCTION_ENTRY();
hDdkObj = (DDK_OBJECT_HANDLE)i2chandle;
// Check the invalid pointer
if(!hDdkObj || !hDdkObj->DdkObj){
DEBUGMSG(ZONE_ERROR, (_T("DDKSetI2CFrequency(): NULL pointer\r\n")));
DRV_FUNCTION_EXIT();
return FALSE;
}
// Do operation by it's original memember function
pI2c = (I2cClass*)hDdkObj->DdkObj;
bret = pI2c->SetFrequency(dwFrequency);
DRV_FUNCTION_EXIT();
return bret;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -