Task_sleep(500);}}
voidResource1TaskFxn(){
while(1){
key=GateMutex_enter(gateUSBWait);resource++;
System_printf(\加法操作,datais%d\\n\,resource);System_printf(\is%d\\n\,key);System_flush();
GateMutex_leave(gateUSBWait,key);//如果屏蔽这句话,将一直运行此任务,Resource1TaskFxn将不能运行。Task_sleep(1000);
}}
11wifi例程的示例:
链接库路径:
\\\include路径:
\
\\\\\\
PredefinedSymbols:
USE_TIRTOS
SL_PLATFORM_MULTI_THREADED
RTSC
ti.targets.arm.elf.M4
ti.platforms.simplelink:CC3200
在ti-rtos工程上添加链接库和inlucde路径,尝试编译
注:udp_sockettcp_socket示例链接库需包含
\
总结:
1.库介绍:1.1Oslib:
ContainstheinterfacefiletoconfigureFree-RTOSorTI-RTOS
121.2Simplelink:
Contains'SimpleLinkHostDriver'code
1.3TheCC3200SimpleLinkHostDriverisportedonbothNon-OsandMulti-ThreadedOSenvironment.TheHostdriverismadeOSindependentbyimplementinganOSAbstractionlayer.ReferenceimplementationforOSAbstractionisavailableforFreeRTOSandTI-RTOS.2.导入SDK的工程:
1.1导入ti_rtos_config工程:
TI-RTOS系统的配置文件,如创建任务、信号量、事件等都在此工程的配置文件中进行。注:
在工程属性中需设置RTSC选项。1.1.1TI-RTOSforSimpleLinkWireless
2.12.1.33最新版本1.1.2
OtherRepositories
$TARGET_CONTENT_BASE
1.1.3选择M4CC3200平台1.2导入oslib工程:
oslib工程中包含free-rtos与ti-rtos系统,默认系统为free-rtos使用TI-RTOS系统,需在编译选项下选择ti-rtos。然后编译。1.3导入simplelink工程
此工程是网络API的接口文件、操作系统的接口文件。支持无操作系统、free-rtos、ti-rtos因为用到了TI-RTOS系统,编译选项选择为OS(simplelinkwithosconfigure)1.4导入网络SDK例程,以wlan_ap为例:
因为用到了TI-RTOS系统,PredefinedSymbols中要添加USE_TIRTOS
SL_PLATFORM_MULTI_THREADEDTI-RTOS系统中的任务,信号量等配置文件,都依赖于ti_rtos_config配置。在ti_rtos_config配置文件中创建其他任务。
在wlan_ap的main函数中用到配置文件的任务、信号量、消息队列等。
3.4个工程编译顺序:
1.编译simplelink2.编译ti_rtos_config3.编译oslib4.编译wlan_ap
总结2:当重装系统或者软件时:
1.APP下载,下载TI-RTOSforsimlink,下载CC3200ADD-on软件。2.编译库
编译simplelink编译ti_rtos_config
关键字
13注:ti_rtos_config为sdk包里的文件,为原始的未修改的文件。
如果以前的工程依赖ti_rtos_config的配置,且已修改,复制..\\CC3200SDK_1.1.0\\cc3200-sdk\\ti_rtos的文件并覆盖,然后编译编译oslib编译wlan_ap
3.
注意工具链XDC及BIOS的版本,如果版本不一致(TI-RTOS-CONFIG与所在的工程),会导致编译失败。
oob工程的消息收与发
例程是当收到请求事件后,把所有需要更新的内容,排着发一遍。而不是请求一个内容,回复一个内容。
消息的收发及解析都在SimpleLinkHttpServerCallback()函数中。caseSL_NETAPP_HTTPGETTOKENVALUE_EVENT:浏览器请求3200
收到的数据存放在pSlHttpServerEvent->EventData结构体中。
要求http服务器发送的数据包为
typedefstruct
{
_u32Event;
SlHttpServerEventData_uEventData;///类型为httpTokenName或者}SlHttpServerEvent_t;
typedefunion
{
slHttpServerString_thttpTokenName;/*请求3200的数据*/slHttpServerPostData_thttpPostData;/*发送给3200数据*/}SlHttpServerEventData_u;
请求3200的数据结构体:
typedefstruct_slHttpServerString_t
{
_u8len;_u8*data;}slHttpServerString_t;
httpPostData
14发送给3200数据结构体:
typedefstruct_slHttpServerData_t
{
_u8value_len;_u8name_len;_u8*token_value;_u8*token_name;}slHttpServerData_t;
caseSL_NETAPP_HTTPPOSTTOKENVALUE_EVENT:
浏览器发给3200
同上
outofbox
a.
includeoptions:
\
\\
\
\\\\
b.FileSearchPath
b1.includelibraryfileorcommand
\
\driverlib.asimplelink.a
b2.AdddirtoLibrarysearch
\
15