代码移植相关0201gagent api_第1页
代码移植相关0201gagent api_第2页
代码移植相关0201gagent api_第3页
代码移植相关0201gagent api_第4页
代码移植相关0201gagent api_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

GAgent2.01-51章是与模组硬件系统相关的接口,第2章是配置区域读写的接口,第3章是TCP/IP协议栈接口,第4章是WIFI模组事5OTA6、7章分别是大循环和小循环流程和概述,8、9章则是对应大10Local模块的接口。MACGAgentMCUMCUs秒MACmacRET_SUCCESS/MAC设置模组的指示灯,打开或关闭,模组状态的指示灯之一,GAgentLED设置模组的指示灯,打开或关闭,模组状态的指示灯之一,GAgentLEDserial打开和设置串口,GAgent2.0UART与设备进行串口通信(Local模块需要开辟一个配置区域来保存断电后仍需保存的信息,如设备信息、协议版本、热点 从区域获取配置信RET_SUCCESS/获取区域的配置信PASSWORD,从区域获取配置信RET_SUCCESS/获取区域的配置信保存配置信息到区RET_SUCCESS/保存配置信息到区TCP/IPGagent2.0x86_linuxBSDtcp/ip1)socket//socket2)connect//连接3)gethostbyname2解析4)send//发送数据5)recv//接收数据FD_ZERO//文件描述符FD_SET//设置文件描述符集8)select//select10)bind//绑定固定地址11)setsockoptsocket选项IPint8int8Ip1:获取ip失 0:获取ip成解析的IP地RET_FAILED/GAgentTcpServerTCPServerAPPUDPudpRET_FAILED/创建一个UDPServer,用于app广播的发现设备包和配置模组联网数UDPUdpbroadcastSocketRET_FAILED/tcp/ipcloud8章的cloud4、WIFI模式接果是AP模式,则设置热点即ap-name和PASSWORD(Gagent设置PASSWORD为: 件件否是否是式GAgentWifistatus当入参是:0xFFFF,需从模组平台获取模组做返回模组模需要在wifi模式变化的回调函数里面调用此函数,当模组变化,airlinkairlinkairlinkMCU与WiFi模组通讯.pdfswitch(cmd{caseMCU_CONFIG_WIFI:GAgent_Config(configType,pgc}voidGAgent_Config(uint8typed,pgcontextpgc{int8timeouttimeout=switch(typed{case2:{GAgent_OpenAirlink(}}airlinkGAgentairlink述AP方法参数constApname即constPapassword值-1:APAP说明AP示如Wifi模组第一次上电启动或模组被复位后上电,配置区域没有有效的和password,此时可例voidGAgent_WiFiInit(pgcontextpgc{if(((pgc->gc.flag)&XPG_CFG_FLAG_CONNECTED)==XPG_CFG_FLAG_CONNECTED{pgc->rtinfo.GAgentStatus us}{pgc->rtinfo.GAgentStatus }}功能描述constStation的constStation-1:APAP如Wifi模组上电,从配置区域获取之前保存过连接热点的和password,入参配置为voidGAgent_WiFiInit(pgcontextpgc{if(((pgc->gc.flag)&XPG_CFG_FLAG_CONNECTED)==XPG_CFG_FLAG_CONNECTED{pgc->rtinfo.GAgentStatus Status);}}entStatus}{pgc->rtinfo.GAgentStatus|=WIFI_MODE_AP;RET_SUCCESS/1、保存模组启动模式;2、与平台相关,如果需要保存/PWD等信息到如boot区域等体中3、如果需要重启,重启;否APAP模式下(如场测模式返回扫描热点的一个列表,即包含和即GAgent让模组扫描获取连接网络的信号强度,与函数配套使用,并把获取到的信号强度更新到GAgentsocketRET_SUCCESS/M2M

M2M

OK

第一个阶段:HTTPCONFIGGServerDeviceIDM2MSERVERip和port,M2MSERVER准备(Cloud_ConfigDataHandle第二个阶段:登录M2MSERVER并成功订阅。(Cloud_M2MDataHandle)GServerM2M8cloud模块。GAgentAPPUDPTCPUDPAPP发现设备的广播包、配置模组联网(softAP方式TCP:APP绑定登录设备、APPAPPAPPAPPWebconfigTCP/UDPUDPAPP发起的广播报文(ONDISCOVER、ONBOARDINGUDPBroadcastTCP模组APP客户端的连接,最多支持8个客户端连接Webconfig9章Lan8、cloud模块的接口(GServerM2MServer接口socketSocketint8Server端口Socketidipporttcpsocket向Gserver请求(申请DeviceGAgentRET_SUCCESS/RET_SUCCESS:向Gserver发 请求成 请求失新设备或复位过的设备(模组复位)需要向GServer发起请从Gserver获取请求的结果(Did和Cloud_Bufferint8DeviceRET_SUCCESS/RET_SUCCESSGserverdidRET_FAILEDGserverdid向Gserver请求后,Gserver会返回请求的结果Gserverprovision(M2Mip和GAgentRET_SUCCESS/RET_SUCCESSGserverprovisionRET_FAILEDGserverprovisionGserverprovision(M2Mip和从Gserver获取请求provision的结果(M2M和M2MM2Muint8RET_SUCCESS/RET_SUCCESSGserverM2MipRET_AILEDGServerGserverprovision1/1:0:M2MGAgentconstconstRET_SUCCESS/RET_SUCCESSM2MServerRET_FAILEDM2MServer登录M2MServer不登录方式需要提供username(即did)和password(passcode)向ServerM2MServerRET_SUCCESS/RET_SUCCESSM2MServerRET_FAILEDM2MServerM2MServerGAgentRET_SUCCESS/1、用户清除配置信息,申请到的DID保存在配置信息区域2PKRET_SUCCESS/Gserver返回的数据GAgentSocketint8BufferRET_FAILED:没有从GServer到数大于0:GServer数GAgent主动发起心跳到云端(M2MGAgentWhileGAgent已经成功登录云端(M2MServer)M2MServerGAgentGserverGAgentGAgent与M2MServerGAgentBufferGAgentBufferGAgentBuffer GAGENTBUFLEN);述GserverdownloadURLsoft方法constint8OTAHostGServerint8Deviceid,即设备时从int8int8hard_version号int8示例备注APIOTAV4.19、LanUDPUDPGAgent组装广播/ret=UDPGAgentAPP传送业务指令(91GAgent上下文描述的全局结构体GAgentUDPGAgent上下文描述的全局结构体GAgent上下文描述的全局结构体WhileGAgent_LanTick(pgc,dTimeGAgent上下文描述的全局结构WhileGAgent_LanTick(pgc,dTime小循环处GAgentBuffer pgContextData->rtinfo.Txbuf,GAGENT_BUF_LEN);GAgentGAgent_LANInit(*pgcTCP,UDPSOCKETGAgentTCPGAgentTimeOut(pgc,小循环TCP服务端及连接处GAgentGAgentBufferret=Lan_tcpDataHandle(pgc,i,prxBuf,ptxBuf,检测TCP是否合法登GAgentIndexret=Lan_checkAuthorization(pgc,TCP登录设备处GAgentBufferLan_handleLogin(pgc,prxBuf,ptxBuf,TCP请求绑定设备处GAgentBufferLan_handlePasscode(pgc,ptxBuf,TCP请求设备信息处GAgentBufferGAgent_Lan_SendDevInfo(pgc,ptxBuf,GAgent回应TCP的心GAgentBufferLan_AckHeartbeak(pgc,ptxBuf,GAgent对TCP请求GAgent退出场测模式的响GAgent(分发TCP的消GAgentTcpLan_dispatchTCPData(pgc,prxBuf,ptxBuf,TCPs的初始GAgentTCPServerTcpServerTCPServerUDPServerLan_UdpServerUDPServerUDPServerUdpServerUDPServerGAgent单播APP广播UDP数据并处LanGAgentBufferGAgent_Lan_Handle(GAgent_Lan_Handle(pgContextData,pgContextData->rtinfo.Rxbuf,pgContextData->rtinfo.Txbuf,GAGENTBUFLEN);APPUDPGAgentSocketBufferLan_dispatchUdpData(pgc,&addr,prxBuf,ptxBuf,GAgentUDP单播接收APP广播的和Lan_GAgentSocketLan_udpOnBoarding(pgc,prxBuf->phead+GAgentUDPAPPGAgentLAN_onDiscoverAck(pgc,ptxBuf->phead,GAgentUDPAPPAPGAgentLAN_onBoardingAck(pgc,ptxBuf->phead,webconfigServerTcpServerpgc->ls.tcpWebConfigFd=GAgent_CreateWebConfigServer(80TCPWebServerGAgentwebGAgentTcp10、LocalGagent0成功/Gagent_EnterTest(pgcGagent0成功/fdB

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论