| 查看: 433 | 回复: 0 | ||
[求助]
用c++编写程序
|
|
软件输入信号有采集好的数据,我发给你,数据格式参见下面程序读写方式 void CTestPCIDlg::OnButtonOpen() { CString str; // 弹出文件对话框 CString strOpenFileType = "pci文件 (*.PCI)|*.pci|All Files (*.*)|*.*||"; CFileDialog FileDlg(TRUE, "*.pci", NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, strOpenFileType); CFileException fe; CString strPathName; CFile File; if (FileDlg.DoModal() == IDOK) { strPathName = FileDlg.GetPathName(); if( !File.Open(strPathName, CFile::modeRead | CFile::shareDenyWrite, &fe)) { strNewFileName=strNewFileName+" 不存在!"; AfxMessageBox(strNewFileName,MB_ICONSTOP, 0); return; } strNewFileName=strPathName; File.Close(); File.Open(strPathName, PCI8514_modeRead); int FileLength=File.GetLength(); File.Seek(0,CFile::begin); File.Read((WORD*)&m_Header,sizeof(m_Header)); File.Close(); long VoltTopRange, VoltBottomRange; VoltTopRange = m_Header.VoltTopRange; // 电压的最大值 VoltBottomRange = m_Header.VoltBottomRange; // 电压的最小值 m_PerLsbVolt = (float)((VoltTopRange - VoltBottomRange) / LSB_COUNT); ///////////////////////////////写文件///////////////////////////////////// FILE * fp; char FileName[32]; strcpy(FileName,"PCIFileHead.log" ;fp=fopen(FileName,"ab" ;str.Format(_T("DeviceNum:%x" ,m_Header.DeviceNum );str=str+"\r\n"; fwrite(str,str.GetLength(),1,fp); str.Format(_T("HeadSizeBytes:%d" ,m_Header.HeadSizeBytes );str=str+"\r\n"; str.Format(_T("分辨率:%x位" , m_Header.DataWidth);str=str+"\r\n"; fwrite(str,str.GetLength(),1,fp); str.Format(_T("电压量程:%d~%dmV" ,m_Header.VoltBottomRange,m_Header.VoltTopRange);str=str+"\r\n"; fwrite(str,str.GetLength(),1,fp); str.Format(_T("采样频率:%d" , m_Header.ADPara.Frequency);str=str+"\r\n"; fwrite(str,str.GetLength(),1,fp); str.Format(_T("触发源:%d" ,m_Header.ADPara.TriggerSource);str=str+"\r\n"; fwrite(str,str.GetLength(),1,fp); str.Format(_T("触发方向:%d" ,m_Header.ADPara.TriggerDir);str=str+"\r\n"; fwrite(str,str.GetLength(),1,fp); str.Format(_T("M_Length:%d" , m_Header.ADPara.M_Length);str=str+"\r\n"; fwrite(str,str.GetLength(),1,fp); str.Format(_T("触发事件提前:%d" , m_Header.ADStatus.bAheadTrig);str=str+"\r\n"; fwrite(str,str.GetLength(),1,fp); str.Format(_T("电压的最大值:%dmv" , m_Header.VoltTopRange);str=str+"\r\n"; fwrite(str,str.GetLength(),1,fp); str.Format(_T("电压的最小值:%dmv" , m_Header.VoltBottomRange);str=str+"\r\n"; fwrite(str,str.GetLength(),1,fp); str.Format(_T("文件长度:%d" , FileLength);str=str+"\r\n"; fwrite(str,str.GetLength(),1,fp); int DataNUM=(FileLength-sizeof(m_Header))/2; str.Format(_T("数据个数:%d" , DataNUM);str=str+"\r\n"; fwrite(str,str.GetLength(),1,fp); fclose(fp); } //AfxMessageBox("存储完成!" ;MessageBox("存储PCI文件信息完成!","提示",MB_OK) ; |
» 猜你喜欢
Progress in Materials Science 期刊投稿求助
已经有2人回复
AI+ CFD!20 个实战案例拆解 fluent、pinn 与智能流体应用
已经有1人回复
机械工程论文润色/翻译怎么收费?
已经有218人回复
为什么复合材料+机器学习那么好发文章?
已经有0人回复
【征稿通知】2027 IPPTC 国际石油石化技术会议征稿启动
已经有0人回复
为什么旋转测试台跑了几个月,传感器数据开始出现周期性漂移?
已经有0人回复
纳米颗粒分散度差,容易团聚怎么办
已经有1人回复
【机械】从机床防水到正压防护:如何解决高精度旋转平台的“进水失准”死局?
已经有0人回复
经验分享】涉水/水下实验频频翻车?扒一扒高精度防水转台的硬核密封逻辑
已经有0人回复

找到一些相关的精华帖子,希望有用哦~
C/C++语言的算法及怎样编程英文版资料
已经有22人回复
关于C++找工作
已经有8人回复
自学C++求推荐书籍
已经有21人回复
科学计算首选语言是C++
已经有20人回复
请教一个C++读文件的问题,
已经有12人回复
怎么用C++来编写类似于QQ的通讯类软件?
已经有24人回复
c++编程如何判断输入的数据是不是字符呢
已经有4人回复
C++程序设计教程_基于Visual.Studio.2008【转载】
已经有174人回复
请问如何用C/C++等语言编写程序控制计算机串口输出on/off信号
已经有4人回复
中山大学C++编程视频51集全
已经有66人回复
一下的数据如何通过C++读取
已经有20人回复
C/C++开发专家:Visual C++代码参考与技巧大全
已经有89人回复
C++程序怎么实现时间的转换呢?
已经有9人回复
C\C++ 可以用来做什么
已经有5人回复
哪位大牛能给个用C++语言编写的B样条函数的代码
已经有6人回复
【求助】c++如何发布独立的程序?
已经有15人回复
【求助】帮我编个程啊~C语言,C++,Matlab,VB...都行~
已经有14人回复
【求助】求c++编一个简单计算器的源代码
已经有6人回复
科研从小木虫开始,人人为我,我为人人










;
回复此楼
点击这里搜索更多相关资源
20