打印

介绍一下TI的TCP/IP协议栈--NDK

[复制链接]
381|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Peonys|  楼主 | 2017-10-11 11:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
介绍一下TI的TCP/IP协议栈--NDK


这是之前用TI的DM642做视频编码器用到的网络协议栈,源码TI官网上有的下载。维基网上也有关于NDK的一些技术文档,都是英文的,看了费劲。
看这个之前我对TCP/IP协议几乎不了解,拿到这个就开始看英文文档,天昏地暗的,边看边整理些东西,没基础真的痛苦,硬着头皮看吧。下面都是我边看边整理的,怕丢了,放到这,以后还有用。

       一、NDK中创建任务的方法:
       1、用标准的DSP/BIOS API
  • struct TSK_Attrs ta;
  • ta = TSK_ATTRS;
  • ta.priority = OS_TASKPRINORM;
  • ta.stack = 0;
  • ta.stacksize = stacksize;
  • ta.stackseg = 0;
  • ta.environ = 0;
  • ta.name = "TaskName";
  • ta.exitflag = 0;
  • hMyTask = TSK_create( (Fxn)entrypoint, &ta, arg1, arg2, arg3 );

[color=rgb(51, 102, 153) !important]复制代码

      2、用NDK的任务抽象API
  • hMyTask = TaskCreate( entrypoint, "TaskName", OS_TASKPRINORM, stacksize, arg1, arg2, arg3 );
  • In both cases, hMyTask is a handle to a DSP/BIOS TSK task thread.

[color=rgb(51, 102, 153) !important]复制代码

      二、内存分配
       应用程序在分配内存时最好使用标准的malloc()/free()函数,或者使用DSP/BIOS来分配。

       三、NDK初始化和配置
       1、必须包含NETCTRL.LIB,NETCTRL模块是协议栈初始化、配置和事件调度的核心。
       2、由DSP/BIOS创建的线程是程序的入口点,并且最终成为NETCTRL调度线程。这个控制线程直到协议栈关闭才返回给调用者。
       3、在调用其他任何协议栈API之前必须先调用NC_SystemOpen()函数。它初始化协议栈及其所需内存环境。它的两个参数Priority和OpMode分别决定调度任务的优先级和调度器何时开始执行。
       Priority包括NC_PRIORITY_LOW 和 NC_PRIORITY_HIGH两种,
       OpMode包括NC_OPMODE_POLLING 和 NC_OPMODE_INTERRUPT两种,大部分情况使用interrupt模式,而polling模式会持续运行,当使用polling模式时,优先级必须设为低(NC_PRIORITY_LOW)。
       4、使用实例:
  • //
  • // THIS IS THE FIRST THING DONE IN AN APPLICATION!!
  • //
  • rc = NC_SystemOpen( NC_PRIORITY_LOW, NC_OPMODE_INTERRUPT );
  • if( rc )
  • {
  • printf("NC_SystemOpen Failed (%d)/n",rc);
  • for(;;);
  • }

[color=rgb(51, 102, 153) !important]复制代码


       5、系统配置,包括以下参数:
  • · Network Hostname
  • · IP Address and Subnet Mask
  • · IP Address of Default Routes
  • · Services to be Executed (DHCP, DNS, HTTP, etc.)
  • · IP Address of name servers
  • · Stack Properties (IP routing, socket buffer size, ARP timeouts, etc.)

[color=rgb(51, 102, 153) !important]复制代码

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

640

主题

901

帖子

5

粉丝