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

📄 usb_regs.c

📁 基于ST ARM处理器的USB通信的演示
💻 C
📖 第 1 页 / 共 3 页
字号:
* Function Name  : GetRxStallStatus
* Description    :
* Input          : bEpNum
* Output         :
* Return         :
*******************************************************************************/
u16 GetRxStallStatus(u8 bEpNum)
{
	return(_GetRxStallStatus(bEpNum));
}
/*******************************************************************************
* Function Name  : ClearEP_CTR_RX
* Description    :
* Input          : bEpNum
* Output         :
* Return         :
*******************************************************************************/
void ClearEP_CTR_RX(u8 bEpNum)
{
	_ClearEP_CTR_RX(bEpNum);
}
/*******************************************************************************
* Function Name  : ClearEP_CTR_TX
* Description    :
* Input          : bEpNum
* Output         :
* Return         :
*******************************************************************************/
void ClearEP_CTR_TX(u8 bEpNum)
{
	_ClearEP_CTR_TX(bEpNum);
}
/*******************************************************************************
* Function Name  : ToggleDTOG_RX
* Description    :
* Input          : bEpNum
* Output         :
* Return         :
*******************************************************************************/
void ToggleDTOG_RX(u8 bEpNum)
{
	_ToggleDTOG_RX(bEpNum);
}
/*******************************************************************************
* Function Name  : ToggleDTOG_TX
* Description    :
* Input          : bEpNum
* Output         :
* Return         :
*******************************************************************************/
void ToggleDTOG_TX(u8 bEpNum)
{
	_ToggleDTOG_TX(bEpNum);
}
/*******************************************************************************
* Function Name  : ClearDTOG_RX
* Description    :
* Input          : bEpNum
* Output         :
* Return         :
*******************************************************************************/
void ClearDTOG_RX(u8 bEpNum)
{
	_ClearDTOG_RX(bEpNum);
}
/*******************************************************************************
* Function Name  : ClearDTOG_TX
* Description    :
* Input          : bEpNum
* Output         :
* Return         :
*******************************************************************************/
void ClearDTOG_TX(u8 bEpNum)
{
	_ClearDTOG_TX(bEpNum);
}
/*******************************************************************************
* Function Name  : SetEPAddress
* Description    :
* Input          : bEpNum, bAddr
* Output         :
* Return         :
*******************************************************************************/
void SetEPAddress(u8 bEpNum,u8 bAddr)
{
	_SetEPAddress(bEpNum,bAddr);
}
/*******************************************************************************
* Function Name  : GetEPAddress
* Description    :
* Input          : bEpNum
* Output         :
* Return         :
*******************************************************************************/
u8 GetEPAddress(u8 bEpNum)
{
	return(_GetEPAddress(bEpNum));
}
/*******************************************************************************
* Function Name  : SetEPTxAddr
* Description    :
* Input          : bEpNum,  wAddr
* Output         :
* Return         :
*******************************************************************************/
void SetEPTxAddr(u8 bEpNum, u16 wAddr)
{
	_SetEPTxAddr(bEpNum,wAddr);
}
/*******************************************************************************
* Function Name  : SetEPRxAddr
* Description    :
* Input          : bEpNum,  wAddr
* Output         :
* Return         :
*******************************************************************************/
void SetEPRxAddr(u8 bEpNum, u16 wAddr)
{
	 _SetEPRxAddr(bEpNum,wAddr);
}
/*******************************************************************************
* Function Name  : GetEPTxAddr
* Description    :
* Input          : bEpNum
* Output         :
* Return         :
*******************************************************************************/
u16 GetEPTxAddr(u8 bEpNum)
{
	 return(_GetEPTxAddr(bEpNum));
}
/*******************************************************************************
* Function Name  : GetEPRxAddr
* Description    :
* Input          : bEpNum
* Output         :
* Return         :
*******************************************************************************/
u16 GetEPRxAddr(u8 bEpNum)
{
	 return(_GetEPRxAddr(bEpNum));
}
/*******************************************************************************
* Function Name  : SetEPTxCount
* Description    :
* Input          : bEpNum, wCount
* Output         :
* Return         :
*******************************************************************************/
void SetEPTxCount(u8 bEpNum, u16 wCount)
{
	_SetEPTxCount(bEpNum,wCount);
}
/*******************************************************************************
* Function Name  : SetEPCountRxReg
* Description    :
* Input          : *pdwReg, wCount
* Output         :
* Return         :
*******************************************************************************/
#ifdef STR7xx
void SetEPCountRxReg(u32 *pdwReg, u16 wCount)
{
	_SetEPCountRxReg(dwReg, wCount);
}
#endif
/*******************************************************************************
* Function Name  : SetEPRxCount
* Description    :
* Input          : bEpNum, wCount
* Output         :
* Return         :
*******************************************************************************/
void SetEPRxCount(u8 bEpNum, u16 wCount)
{
	_SetEPRxCount(bEpNum,wCount);
}
/*******************************************************************************
* Function Name  : GetEPTxCount
* Description    :
* Input          : bEpNum
* Output         :
* Return         :
*******************************************************************************/
u16 GetEPTxCount(u8 bEpNum)
{
	 return(_GetEPTxCount(bEpNum));
}
/*******************************************************************************
* Function Name  : GetEPRxCount
* Description    :
* Input          : bEpNum
* Output         :
* Return         :
*******************************************************************************/
u16 GetEPRxCount(u8 bEpNum)
{
	 return(_GetEPRxCount(bEpNum));
}
/*******************************************************************************
* Function Name  : SetEPDblBuffAddr
* Description    :
* Input          : bEpNum, wBuf0Addr, wBuf1Addr
* Output         :
* Return         :
*******************************************************************************/
void SetEPDblBuffAddr(u8 bEpNum, u16 wBuf0Addr, u16 wBuf1Addr)
{
	_SetEPDblBuffAddr(bEpNum, wBuf0Addr, wBuf1Addr);
}
/*******************************************************************************
* Function Name  : SetEPDblBuf0Addr
* Description    :
* Input          : bEpNum, wBuf0Addr
* Output         :
* Return         :
*******************************************************************************/
void SetEPDblBuf0Addr(u8 bEpNum,u16 wBuf0Addr)
{
	 _SetEPDblBuf0Addr(bEpNum, wBuf0Addr);
}
/*******************************************************************************
* Function Name  : SetEPDblBuf1Addr
* Description    :
* Input          : bEpNum, wBuf1Addr
* Output         :
* Return         :
*******************************************************************************/
void SetEPDblBuf1Addr(u8 bEpNum,u16 wBuf1Addr)
{
	_SetEPDblBuf1Addr(bEpNum, wBuf1Addr);
}
/*******************************************************************************
* Function Name  : GetEPDblBuf0Addr
* Description    :
* Input          : bEpNum
* Output         :
* Return         :
*******************************************************************************/
u16 GetEPDblBuf0Addr(u8 bEpNum)
{
	return(_GetEPDblBuf0Addr(bEpNum));
}
/*******************************************************************************
* Function Name  : GetEPDblBuf1Addr
* Description    :
* Input          : bEpNum
* Output         :
* Return         :
*******************************************************************************/
u16 GetEPDblBuf1Addr(u8 bEpNum)
{
	return(_GetEPDblBuf1Addr(bEpNum));
}
/*******************************************************************************
* Function Name  : SetEPDblBuffCount
* Description    :
* Input          : bEpNum,bDir, wCount
* Output         :
* Return         :
*******************************************************************************/
void SetEPDblBuffCount(u8 bEpNum, u8 bDir, u16 wCount)
{
	#ifdef STR7xx /*STR7xx family */
	 _SetEPDblBuffCount(bEpNum, bDir, wCount);
	#endif
	
	#ifdef STR91x /*STR91x family*/
	SetEPDblBuf0Count(bEpNum, bDir,wCount);
	SetEPDblBuf1Count(bEpNum, bDir,wCount);
	#endif	
}
/*******************************************************************************
* Function Name  : SetEPDblBuf0Count
* Description    :
* Input          : bEpNum, bDir,  wCount
* Output         :
* Return         :
*******************************************************************************/
void SetEPDblBuf0Count(u8 bEpNum, u8 bDir,u16 wCount)
{
	#ifdef STR7xx /*STR7xx family */
	_SetEPDblBuf0Count(bEpNum,bDir,wCount);
	#endif
	
	#ifdef STR91x /*STR91x family*/
	u32 BLsize=0;
	u32 Blocks;
	if(bDir == EP_DBUF_IN)   					
	/* IN double bufferd endpoint */						
	SetEPTxCount(bEpNum,wCount);
	else if(bDir == EP_DBUF_OUT)
	{				
	/* OUT double bufferd endpoint */			

   		if (wCount < 64) Blocks = wCount>>1;
   		else
   		{
   			BLsize = 0x8000;
   			Blocks = wCount>>6;
   		}
	 *_pEPBufCount(bEpNum) &=~0x8000;
	 *_pEPBufCount(bEpNum) |=BLsize;
	 *_pEPBufCount(bEpNum)  &=~0x7C00;
	 *_pEPBufCount(bEpNum) |=Blocks<<10;
	 *_pEPBufCount(bEpNum) &=0xFFFFFC00;
 	}
 	#endif
}
/*******************************************************************************
* Function Name  : SetEPDblBuf1Count
* Description    :
* Input          : bEpNum,  bDir,  wCount
* Output         :
* Return         :
*******************************************************************************/
void SetEPDblBuf1Count(u8 bEpNum, u8 bDir,u16 wCount)
{
	#ifdef STR7xx /*STR7xx family */
	_SetEPDblBuf1Count(bEpNum,bDir,wCount);
	#endif
	
	#ifdef STR91x /*STR91x family*/
	if(bDir == EP_DBUF_IN)					
 	/* IN double buffered endpoint */						
 	{
   	*_pEPBufCount(bEpNum)&= 0x000FFFF;
   	*_pEPBufCount(bEpNum)|=(wCount<<16);
 	}
 	else if(bDir == EP_DBUF_OUT)				
 	/* OUT double buffered endpoint */						
  	_SetEPRxCount(bEpNum, wCount);
  	#endif	
}
/*******************************************************************************
* Function Name  : GetEPDblBuf0Count
* Description    :

⌨️ 快捷键说明

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