This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TDA4VM: 在测试MCU域中2G switch的port时,发送以太网报文不触发中断

Part Number: TDA4VM


Hi  @Zhang, Semon

现象:按照demo配置了以太网驱动,然后周期发送以太网报文,但是触发了78次发送中断后,不在触发中断,再继续发送报文时,不能回收buffer,导致后续发送失败。

以下是测试代码,周期发送报文。配置文件同demo中的配置一样。

uint8 ArpData_VLAN3[32] =
{
  0x00,0x03,0x08,06,0x00, 0x01, 0x08, 0x00, 0x06, 0x04, 0x00, 0x01, 0x00, 0x03, 0x19, 0x00, 0x00, 0x01,
  0xa9, 0xfe, 0xfe, 0xab, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa9, 0xfe, 0xab, 0xa8
};
uint8 MacDestUncastAddress[8] = {0xaa, 0xbb, 0xcc, 0xdd, 0xee, 0x06};
uint8 *TmpBuffPtr;

void Tx_EthFrame_VLAN3(void)
{
	boolean Txstatus=0; 
	uint16 Tmp_Txlenghth1 = 32;

    
	Global_TempUSage[1] = Eth_ProvideTxBuffer(0, 0, &TmpBuffIdx, &TmpBuffPtr, &Tmp_Txlenghth1);

	ArpData[15] = gCnt++;

    if(TmpBuffPtr != NULL_PTR)
    {
        TxBufferFill(TmpBuffPtr, Tmp_Txlenghth1, ArpData_VLAN3);
        
        EthDemoRetVal[1] = Eth_Transmit(0, TmpBuffIdx, ETH_VLAN_PROTOCOL, Txstatus, Tmp_Txlenghth1, &MacDestUncastAddress[0]);
    }
    else
        EthDemoRetVal[1] = 1;

}