Other Parts Discussed in Thread:CC3220SF, CC3200
你好,请问下
1、CC3220SF有没有像CC320一样有一份CC3200 SimpleLink Wi-Fi and Internet-ofThings Solution, a Single Chip Wireless MCU之类的介绍整个API函数功能包括如何设置的文档?我需要查阅sl_send之类的文档的时候,不知道从何查阅。
2、翻阅html的注释只是知道了这个函数的参数,但我想知道整个设置流程,如socket的整个设置包括sl_SetSockOpt函数(这个函数HIML文档说属于ext_api但是没有说这个ext_api在哪里。)
Kevin Qiu1:
CC3220SF SimpleLink™ Wi-Fi®
Single-Chip Wireless MCU Solutions:www.ti.com.cn/…/cc3220s.pdf
API:www.ti.com.cn/…/swru455
API说明可以在CCS中搜索API,会有注释说明
,
user6458813:
你好,我查阅了API的注释,说sl_send 在发送数据成功后立刻返回。但这里还有一个小问题,就是sl_send是得等上位机接收完数据或者出错,才会继续往下执行是吧,但在这个发送期间sl_send是不是一直占有CPU的资源?
,
Kevin Qiu1:
可以看上面手册13.4 Internal Packet Generator:
Before calling sl_Send, you must set the number of frames using the sl_SetSockOpt API to the number of
frames desired to be transmitted (0 means infinite number of frames).
A single call to the sl_Send API triggers the frames transmission. The SimpleLink Wi-Fi device keeps
transmitting until it has sent all the requested frames, or until the socket is closed or another socket
property changes (through sl_SetSockOpt). It is still possible to receive packets during the send operation.
Setting the number of frames to transmit to 1 returns the socket to the regular transceiver socket state.
,
user6458813:
好像这个socket的trigger模式,不适用于TCP/IP的socket,而我目前使用的是TCP/IP的socket。
,
user6458813:
我想要的是,有没有类似传输完成的标志位。当我调用sl_send进行网络传输时,只需要将传输内容设置进去,然后可以直接返回继续执行其它程序,并且可以通过判断传输成功的标志位后,再进行下次传输
,
Kevin Qiu1:
TCP socket中的sl_send是阻塞的
,
user6458813:
TCP socket能否设置成发送非阻塞模式?看文档里只有设置接收为非阻塞模式,发送并没说过。
,
Kevin Qiu1:
sl_send直接不能,发送时是阻塞模式
,
user6458813:
那意思就是,在等待函数传输成功(或者event报错)返回之前,这个线程都会卡在sl_send这里?或者说在此期间无法使用 Bus Matrix Multi-Layer AHB 总线上的其它外设如Apps SPI之类的MCU外设咯?
,
Kevin Qiu1:
TCP非阻塞参考
e2e.ti.com/…/3331386