进行数据转换的线程函数

进行数据转换的线程函数

ID:34672353

大小:43.50 KB

页数:6页

时间:2019-03-09

进行数据转换的线程函数_第1页
进行数据转换的线程函数_第2页
进行数据转换的线程函数_第3页
进行数据转换的线程函数_第4页
进行数据转换的线程函数_第5页
资源描述:

《进行数据转换的线程函数》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、//进行数据转换的线程函数UINTConvertData(LPVOIDlparam){unsignedchartempdata[5];longdattemp;double*datastr,*datastr_2;longoffset=0;charstrtemp[500];CStringstrFileName,outFileName1,outFileName2,TempCstr,TempCstr2,msg;CStringheadFileName;CStringheadFileContent;CStringADCformat=((CConvertDataDlg*)lpa

2、ram)->adparam.DataFormat;UINTADC_resolve=((CConvertDataDlg*)lparam)->adparam.ADC_resolve;UINTADC_zero=((CConvertDataDlg*)lparam)->adparam.ADC_zero;intpos,i,j;intADC_gain=1;if(((CConvertDataDlg*)lparam)->m_radio.GetCheck())//如果选中,则换算为电压ADC_gain=200;/***************yqs20070711**********

3、**********/CFileDialogFileDlg(TRUE,"*","*.*",OFN_OVERWRITEPROMPT,".*");if(FileDlg.DoModal()==IDOK){strFileName=FileDlg.GetPathName();//获得路径名((CConvertDataDlg*)lparam)->m_progress.ShowWindow(TRUE);//显示进度条((CConvertDataDlg*)lparam)->m_progress.SetPos(1);//设置进度条位置////////先从相应的头文件读取数据信息,包

4、括数据存储格式、ADC分辨率和ADC零值等///////////////headFileName=strFileName;headFileName.Replace("数据文件","头文件");headFileName.Replace(".dat",".hea");//得到相应头文件的路径ifstreamfheadin(headFileName);//以文本形式打开头文件fheadin.read(strtemp,200);headFileContent.Format("%s",strtemp);pos=headFileContent.ReverseFind(''

5、);headFileContent=headFileContent.Left(pos+1);if((pos=headFileContent.Find("11",0))!=-1)//adc分辨率为11bitADC_resolve=11;elseif((pos=headFileContent.Find("12",0))!=-1)//adc分辨率为12bitADC_resolve=12;else{AfxMessageBox("ADC分辨率未知!");fheadin.close();((CConvertDataDlg*)lparam)->m_progress.SetPos

6、(0);((CConvertDataDlg*)lparam)->m_progress.ShowWindow(FALSE);return0;}//接着获得ADC的零值pos+=3;charch[10];for(i=1;i<10;i++){ch[i-1]=headFileContent.GetAt(pos+i);if(ch[i-1]=='')break;}ch[i-1]='';ADC_zero=atoi(ch);//接着根据数据存储格式读数:((CConvertDataDlg*)lparam)->m_progress.SetPos(5);if(headFileCo

7、ntent.Find("212",0)!=-1)//数据以format212的格式存储{((CConvertDataDlg*)lparam)->adparam.DataFormat.Format("212");ifstreamfin(strFileName,ios::binary);fin.seekg(offset);datastr=newdouble[650000];datastr_2=newdouble[650000];if(datastr==NULL

8、

9、datastr_2==NULL)//分配内存没有成功{AfxMessageBox("内存不足!");((C

10、Conve

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。