资源描述:
《关于手持终端数据上传下载调用说明.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、关于手持终端数据上传下载调用说明作者:技术支持部胡富云一、手持终端调用//**********************************************************************************************************************//下载文件,sFile文件名;RStr缓存;MaxLen缓存区大小//返回值>0成功,返回为接收文件的大小//-1接收PC机指令超时//-2PC机指令错误//-3PC机指令错误(nl)//-4PC机指令错误(n)//-5PC机指令错误(l)//-6长度校验有误(n
2、)//-7缓存区不足(l)//-8PC机指令错误(s)//-9数据通讯超时(s)//-10数据校验有误(s)//**********************************************************************************************************************longDownLoadData(char*sFile,UCHAR*RStr,ULONGMaxLen);//************************************************************
3、**********************************************************//上传文件,sFile文件名;sAddrFLASH地址;sLen上传大小;RecCount记录数;rsFlag=1,重写,0追加;//返回值1成功//-1接收PC机指令超时//-2内存分配失败//-3PC机指令错误//-4PC机指令错误(a)//-5PC机指令错误(nl)//-6PC机指令错误(n)//-7PC机指令错误(g)//-8PC机指令错误(%)//-9PC机指令错误(s)//-10PC机返回错误(s)//********************
4、**************************************************************************************************intUpLoadFlashRecord(char*sFile,ULONGsAddr,ULONGsLen,ULONGRecCount,intrsFlag);调用示例{//数据上传,指从手持终端向PC端发送数据,即从下位机到上位机chartmpstring[32];typ_RTC_date_rectmpdate;tmpdate.l_word=RTC_read_date();spr
5、intf(tmpstring,"data%04d%02d%02d.txt",tmpdate.fields.year,tmpdate.fields.month,tmpdate.fields.day);//文件命名UpLoadFlashRecord(tmpstring,DATA_ADDR+0x10000,0x10000,1,1);//调用数据上传}{unsignedchar*frwBuffer;longDataLength;typ_lng2chartmplc;frwBuffer=malloc(0x10000);if(frwBuffer==NULL){DispStr_CE(0
6、,1,"内存分配失败",DISP_POSITION
7、DISP_CLRSCR);DispStr_CE(0,6,"按任意键返回",DISP_POSITION);PressAnyKey();}else{memcpy(frwBuffer,(char*)DATA_ADDR+0x10000,0x10000);DataLength=DownLoadData("basedata.txt",frwBuffer+4,0x10000);//调用数据下载if(DataLength>0){tmplc.l_word=DataLength;memcpy(frwBuffer,tmplc.s_char,
8、4);//记录数据长度if(FLASH_erase_block_2((char*)DATA_ADDR+0x10000)!=0)//擦除flash{DispStr_CE(0,1,"操作失败(1)",DISP_POSITION
9、DISP_CLRSCR);DispStr_CE(0,6,"按任意键返回",DISP_POSITION);ErrorBeep(0);free(frwBuffer);PressAnyKey();}else{if(FLASH_write_data_8M(DATA_ADDR+0x10000,frwBuffer,0x10000)