微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > DSP学习交流 > 基础(十七):SYSBIOS-NDK(4)

基础(十七):SYSBIOS-NDK(4)

时间:10-02 整理:3721RD 点击:

前几篇设置了NDK,配置了IP,那么接下来就要配置Telnet服务了。

记得前面的配置都使用了相应的结构体,Telnet的配置也是一样,使用了CI_SERVICE_TELNET结构体,这个结构体与配置DHCP时使用的结构很像。



可以看到它有成员的第一个结构体与NTPARAM_DHCP结构体是一样的,不同的是第二个成员,这里变成了一个NTPARAM_TELNET结构体。

那么NTPARAM_TELNET结构体的定义如下:



MaxCon:telnet会话的最大数目,范围是1到24。

Port:Telnet使用的TCP端口,Telnet默认是0。

(*Callback)(PSA),从名字上看就是Telnet的回调函数了。


  1. bzero(&telnet, sizeof(telnet));//将telnet清0
  2.     telnet.cisargs.IPAddr = INADDR_ANY;
  3.     telnet.cisargs.pCbSrv = &ServiceReport;
  4.     telnet.param.MaxCon   = 2;
  5.     telnet.param.Callback = &ConsoleOpen;
  6.     CfgAddEntry(hCfg, CFGTAG_SERVICE, CFGITEM_SERVICE_TELNET, 0, sizeof(telnet), (UINT8 *)&telnet, 0);

复制代码


可以看到Telnet的回调函数是ConsoleOpen。当在终端使用Telnet服务时,通过调用ConsoleOpen 函数进 入Telnet服务, 该函数为telnet.param.CallBack的参数。

函数的原型为:


  1. SOCKET ConsoleOpen( PSA pClient )
  2. {
  3.     HANDLE fd1, fd2;

  4.     // Create the local pipe - abort on error
  5.     if( pipe( &fd1, &fd2 ) != 0 )
  6.         return( INVALID_SOCKET );

  7.     // If an instance is already running, abort
  8.     if( hConsole )
  9.     {
  10.         // If the console is already running, return a quick message and
  11.         // close the pipe.
  12.         send( fd2, StrBusy, strlen(StrBusy), 0 );
  13.         fdClose( fd2 );
  14.     }
  15.     else
  16.     {
  17.         // Create the console thread
  18.         hConsole = TaskCreate( console, "Console", OS_TASKPRINORM, 0x1000,
  19.                                (UINT32)fd2, (UINT32)pClient, 0 );

  20.         // Close the pipe and abort on an error
  21.         if( !hConsole )
  22.         {
  23.             send( fd2, StrError, strlen(StrError), 0 );
  24.             fdClose( fd2 );
  25.         }
  26.     }

  27.     // Return the local fd
  28.     return( fd1 );
  29. }

复制代码


由于接下来的几篇都是NDK的讲解与使用方法的说明,在NDK的最后一篇将把所有的源码与二进制文件上传。



期待更新哦  哈哈

加紧这几天就调好了,结项了。

感谢小编分享,写的非常好

下载看看,谢谢分享

又玩了一块DSP啊。

顺便学习一下图像处理的知识。

玩会了DSP,工资不用愁啊,打算今年暑假学俩月,秋季就找工作了

小编,telnet下的reboot能成功吗,我这里用的官方例程,reboot后网口就不能用了,除非断电重启。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top