您好,按您说的,把路由器的DHCP打开了,应该没什么问题,还有您说的要把另一个设备连到路由器,不知道您指的是通过有线lan口连到设备还是无线连wifi就可以,因为我之后应该是要通过路由器的lan口连出来一根线接到可以读出传输的数据的板子上,所有我在这里试了下将路由器通过lan口连接到电脑;运行程序,做了以下几个例子:
这是send的参数,
我理解的u、nb和V这三个参数的意思是不设置的话就分别是TCP、blocking、IPv4;
有个小问题,server的ip在这里指的应该就是路由器的ip吧,不然感觉板子并没有和路由器有连接,或者是我理解错了,还是说是另一个最终要从路由器里获得数据的设备的ip呢?
第一个测试的send:作为client,server的ip地址设的是路由器的ip,后面显示发送成功,在这个里面u、nb、V都进行了设置,
第二个测试就是只把u、nb、V去掉了,然后显示有错误;不知道是tcp还是ipv4或者什么别的原因,
第三个把电脑和路由器断开了,然后server ip写的是电脑的,设置了u、nb、V,但还是显示成功,按理说电脑此时跟路由器没有连接啊,但为什么显示发送成功,还是说我这么设置的意思是直接把数据不通过路由器而是通过电脑的ip直接发送给了电脑?
主要就是有几个参数的意义不是很确定,有什么办法可以查看最终发出去的具体数据是什么吗?
谢谢!
Yonghua Pan:
我建议你先看一下TCP和UDP的基础知识,UDP是没有ACK的,只要发出去了,不管对方有没有收到,都是成功。TCP会要求对方有ACK。
user5288687:
回复 Yonghua Pan:
嗯嗯,我知道了,谢谢!还有一个问题就是程序开始是通过cmd_prompt( )这个函数来检测用户在终端上的输入的,好像主要是通过获取app_CB.CmdBuffer里的内容来实现的,这些都需要用户在终端上手动输入来实现,那么比如我想设备一运行就自动进入我想要执行的功能,可以通过直接在程序里把在终端上输入的信息写入这个CmdBuffer来实现吗?
Yonghua Pan:
回复 user5288687:
可以的,你去改一下getcmd这个函数,让它不要从串口读,直接传参数给它就好。
user5288687:
回复 Yonghua Pan:
好的,谢谢您了,我试试看!
user5288687:
回复 Yonghua Pan:
您好,我试着改了int GetCmd(char *pcBuffer, unsigned int uiBufLen)这个函数,把在串口输入的字符串直接赋给了GetCmd的pcBuffer这个参数,比如串口输入的功能是send -c 192.168.1.101 -u -p 5001 -n 1000;我直接把字符串给了pcBuffer,但是一运行就是显示no such command。您能跟我说说这段程序具体该怎么写呢,下面是这个函数原本的代码。刚开始学,不是很懂为什么读或者写的后面字节数都是1.含义不是很懂,
还有就是,我现在有两块CC3220S板子,想都作为client连接路由器AP,一个实时发送数据,一个实时接收数据,实现两块板子直接的实时数据收发,这个功能send,和recv可以做到吗?两个参数如下:
两个都选 -c,然后ip应该就是路由器的ip吧,在发送和接收前我也都用wlanconnect把它们都连接到了路由器,然后分别运行在send和recv模式下,但是接收不到数据包,是我对参数的理解有什么问题吗?
或者除了这样,还有什么方法能实现两块板子之间数据的实时收发呢,后期是想给其中一块板子接入脉冲信号,然后将这个信号实时的无线传输给另一块板子进行接收,您对这个有什么建议吗?
十分感谢!
Yonghua Pan:
回复 user5288687:
polling串口是一个字符一个字符去读的,你直接传参数的话就不用这样了,直接一个字符串参数传了就好了。你可以对比看一些send和recv对应的代码,每个参数的处理的代码看一下。
user5288687:
回复 Yonghua Pan:
好的,谢谢,还有一个问题就是,我最终是要实现这两块cc3220s板子之间无线实时传输数据,那可以不要路由器吗,直接一块板子作STA一个作AP,然后实现收发功能吗?
Yonghua Pan:
回复 user5288687:
可以的。
user5288687:
回复 Yonghua Pan:
您说,如果我把network_terminal.c里的mainthread函数的最后,cmd_prompt()这个去掉,不去检测串口的指令,而直接调用实现我需要功能的相关函数,比如,先初始化,然后将设备配置到默认状态,然后设为STA,然后连接路由器AP,再调用发送或接收数据的相关函数,一块板子发送数据到路由器,,然后另一块板子通过连接路由器实时接收,然后路由器和收发相关的参数直接在相关函数里定义好,您觉得这个思路可行吗?
Yonghua Pan:
回复 user5288687:
可以的,这样的逻辑没问题。