TI中文支持网
TI专业的中文技术问题搜集分享网站

TMDSCNCD28388D: C2000 ETHERNET

Part Number:TMDSCNCD28388DOther Parts Discussed in Thread:C2000WARE

请教一下。

在下图中,数据和地址通过IPC发送到CM4内核。我自己的数据是存在以下数组send_buff [150]中。我可以直接用send_buff替换函数中的packetData吗?

我在函数的注释中看到,packetData对应于地址,而PACKET_LENGTH对应于数据。

这句话使我有些困惑。

我目前的进展是,需要由CPU1内核运行的项目已得到改进,并且CM4内核的项目也已准备就绪。接下来,只要更改Web服务中的http文件,就可以通过以太网将CM4接收到的数据发送到计算机IP地址为192.168.0.4的网页并实时显示?

特来请教

谢谢

Susan Yang:

ETHERNET的相关问题建议您去英文论坛发帖询问。关于

@vince 说:

我在函数的注释中看到,packetData对应于地址,而PACKET_LENGTH对应于数据。

这句话使我有些困惑。

请问您的疑惑是什么?

,

@vince:

注释中写的是对应地址,但实际的使用,packetData是一个数组,PACKET_LENGTH是数组的长度。

还有一点,电脑上,要准备什么,才能接收到ethernet发出的数据呢?

 

,

Susan Yang:

@vince 说:还有一点,电脑上,要准备什么,才能接收到ethernet发出的数据呢?

请看一下 https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/998994/tms320f28388d-c2000-microcontrollers-forum 

抱歉,目前我们办公室环境下不太方便测试以太网

@vince 说:注释中写的是对应地址,但实际的使用,packetData是一个数组,PACKET_LENGTH是数组的长度。

//*****************************************************************************////! Sends a command to the Remote core//!//! \param ipcType is the enum corresponding to the IPC instance used//! \param flags is the IPC flag mask for the flags to be set//! \param addrCorrEnable is the flag used to determine whether or not to//! convert the addr parameter to remote core's address space//! \param command is the 32-bit command value//! \param addr is the 32-bit address to be sent as part of command//! \param data is the 32-bit data to be sent as part of command//!//! Allows the caller to send a command to the remote core. A command consists//! of a unique command value, a 32-bit address and a 32-bit data. The function//! also sends the designated flags to the remote core.//! There may be differences in the address spaces of Local and Remote core.//! For example in case of F2838X device, the address spaces of C28x core and//! CM core are different. In case the \e addr refers to an address in the IPC//! MSG RAM, \e addrCorrEnable param may be used to correct the address mismatch//!//! The \e flags parameter can be any of the IPC flag values: \b IPC_FLAG0 -//! \b IPC_FLAG31.//! The \e addrCorrEnable parameter can take values IPC_ADDR_CORRECTION_ENABLE//! (converts the address to remote core's address space) or//! IPC_ADDR_CORRECTION_DISABLE(does not modify the addr parmeter)//!//! The application shall use the function IPC_getResponse to read the response//! sent by the remote core.//!//! \note The application is expected to wait until the the response is//! received before sending another command.//!//! \note \e addrCorrEnable parameter must be kept same on the sending and//! receiving cores//!//! \return Returns \b true if the command is sent properly and \b false if//! the designated flags were busy and hence command was not sent.////*****************************************************************************extern boolIPC_sendCommand(IPC_Type_t ipcType, uint32_t flags, bool addrCorrEnable, uint32_t command, uint32_t addr, uint32_t data);

CM内核无法访问GSRAM。有专用的MSG RAM用于在内核之间共享数据-CPU1TOCPU2MSGRAM,CPU2TOCPU1MSGRAM,CPU1TOCMRAM,CPU2TOCMRAM,CMTOCPU1RAM,CMTOCPU2RAM

您可以使用这些RAM将数据从一个内核发送到另一个内核。IPC_sendCommand函数配置IPC模块中的命令寄存器,并在远程核心上触发一个中断(如果在远程核心上启用了中断),表明该命令可用。该命令包括3个32位字。如果要发送大量数据,则可以将数据放入MSGRAM中,并使用IPC_sendCommand共享数据的起始地址。由于这些RAM的地址在CPU和CM中不同,因此该功能会自动更正地址参数。

C2000ware中有一个可用的示例对此进行了演示。希望这可以帮助。

<C2000ware> \ driverlib \ f2838x \ examples \ c28x_cm \ ipc \ ipc_ex1_basic_c28x1

,

@vince:

很有帮助

感谢,但是也是有个问题,enet_lwip这个例程,我把他拷贝到工作空间中,进行修改。发现c盘的文件也跟着变化。当系统提示需要更新C2000ware的时候,更新结束,我修改后保存的enet_lwip例程,又被更新成最原始的状态。

有什么链接文件删除一下,就能解决这个问题吗?还是说,必须要新建一个工程,将enet_lwip这个例程放过去?

特来请教

感谢

,

Susan Yang:

该问题建议您在英文E2E发帖,因为该例程我们这边办公室环境下不好测试,所以无法快速回复您的问题

,

@vince:

,

Susan Yang:

谢谢理解

,

@vince:

CCS GUI在什么地方呢?

,

Susan Yang:

应该就是指的CCS

,

@vince:

好的

感谢

,

Susan Yang:

不客气

赞(0)
未经允许不得转载:TI中文支持网 » TMDSCNCD28388D: C2000 ETHERNET
分享到: 更多 (0)

© 2024 TI中文支持网   网站地图 鲁ICP备2022002796号-1