嵌入式开发者社区

标题: 关于TCP以太网通信的问题 [打印本页]

作者: 750676835    时间: 2016-10-8 10:48
标题: 关于TCP以太网通信的问题
大家好,我最近刚开始学习DSP,使用的开发板是TMS320C6748。我目前使用开发板的例子TCP程序,任务中的主要部分如下:
  for(;;)
    {
            i = (int)recvnc(s, (void **)&pBuf, 0, &hBuffer);
        if(i > 0)
        {
                if(send(s, &send_string, i, 0 ) < 0)
                break;

            recvncfree(hBuffer);


        }
        else
        {
            break;
        }


    }
    fdClose(s);

我想在此基础上将程序的功能修改,实现上位机随时向DSP发送数据时,DSP能正常接收。在没有接收上位机数据的时候,DSP向PC机连续发生数据。
请问有谁有以太网开发的相关经验,能够实现这样的功能?

作者: Jackindata    时间: 2016-10-8 10:53
可以实现。
你需要保持两个长连接。对 DSP 来说,一个用于收,一个用于发,分别处于不同的线程。
作者: 750676835    时间: 2016-10-8 14:02
不同的线程能同时工作吗?
作者: Jackindata    时间: 2016-10-8 16:37
读写使用非阻塞,线程是会被调度执行的。
作者: 750676835    时间: 2016-10-8 17:25
有没有具体的实例参考一下。我最近才开始学习DSP,很多基础知识都不懂,能不能说得详细一点。另外使用裸机能实现TCP通信吗?怎么实现?
作者: human    时间: 2016-10-8 20:13
裸机要移植协议,难度太大了,如果初学就先用sysbios下的NDK实现
作者: shxsxlh    时间: 2021-10-29 18:57
Jackindata 发表于 2016-10-8 10:53
可以实现。
你需要保持两个长连接。对 DSP 来说,一个用于收,一个用于发,分别处于不同的线程。 ...

你好,我在同一个线程里面实现了接收和发送,这样可以吗?





欢迎光临 嵌入式开发者社区 (https://www.51ele.net/) Powered by Discuz! X3.4