亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 癡迷人信號采集系統dlg.cpp

?? 這個軟件要配合采集卡一起使用的。通過傳感器可以采集各類的信號。如果您的專業有涉及到
?? CPP
?? 第 1 頁 / 共 3 頁
字號:
}

void CMyDlg::OnTimer(UINT nIDEvent) 
{
	// TODO: Add your message handler code here and/or call default
	
	if(m_bIsStarted){
		husb=OpenUA300();
		if(husb==NULL){
			CloseUA300(husb);
			m_bIsDrawGraph=false;
			KillTimer(1);
			::EnableWindow(m_btLoad,true);
			::EnableWindow(m_btFFT,false);
			MessageBox("未發現UA302H型A/D采集器!");
			return;
		}
		minit(husb,0,m_iChanels,0);
		readdata(husb,addat,6000000/m_uRate,m_iChanels*SCANCOUNT);
		DrawGraph();
		CloseUA300(husb);
	}

	CDialog::OnTimer(nIDEvent);
}

void CMyDlg::OnStop() 
{
	// TODO: Add your control notification handler code here
	m_bIsStarted = false;
	::EnableWindow(m_btLoad,true);
	KillTimer(1);	
}

void CMyDlg::OnAbout()
{
		CAboutDlg dlgAbout;
		dlgAbout.DoModal();
}

void CMyDlg::DrawGraph()
{
	int i=0;
	CClientDC dc(this);
	dc.SelectObject(hBlackBrush);
	if(m_iChanels==1)
	{
			
		dc.Rectangle(&rectArea1);
		dc.IntersectClipRect(&rectArea1);
		dc.SelectObject(hYellowPen);
		dc.MoveTo(rectArea1.left,(rectArea1.top+rectArea1.bottom)/2);
		dc.LineTo(rectArea1.right,(rectArea1.top+rectArea1.bottom)/2);
		dc.SelectObject(hRedPen);
		for (i=1; i<SCANCOUNT/2; ) {
			short int adinput;
			int newx,newy,oldx,oldy;
			adinput = addat[i];
			newy = (rectArea1.top+rectArea1.bottom)/2-(int)(adinput*(0.00030518)*(rectArea1.bottom-rectArea1.top)/m_fVolt);
			newx = (rectArea1.left)+i;

			if (i==1)
				dc.MoveTo(newx, newy);
			else
				dc.MoveTo(oldx, oldy);
			dc.LineTo(newx, newy);
			oldx = newx;
			oldy = newy;
			i+=1;
			if(oldx>=(int)(rectArea1.right-1))
				break;
		}		
		dc.SelectClipRgn(NULL);	
	}
	if(m_iChanels==2)
	{	
		dc.Rectangle(&rectArea1);	
		dc.Rectangle(&rectArea3);
		dc.SelectObject(hYellowPen);
		dc.MoveTo(rectArea1.left,(rectArea1.top+rectArea1.bottom)/2);
		dc.LineTo(rectArea1.right,(rectArea1.top+rectArea1.bottom)/2);
		dc.MoveTo(rectArea3.left,(rectArea3.top+rectArea3.bottom)/2);
		dc.LineTo(rectArea3.right,(rectArea3.top+rectArea3.bottom)/2);
		dc.SelectObject(hRedPen);
		
		dc.IntersectClipRect(&rectArea1);
		for (i=0; i<SCANCOUNT; ) {
			short int adinput;
			int newx,newy,oldx,oldy;
			adinput = addat[i];
			newy = (rectArea1.top+rectArea1.bottom)/2-(int)(adinput*(0.00030518)*(rectArea1.bottom-rectArea1.top)/m_fVolt);
			newx = (rectArea1.left)+i;	

			if (i==0)
				dc.MoveTo(newx, newy);
			else
				dc.MoveTo(oldx, oldy);
			dc.LineTo(newx, newy);
			oldx = newx;
			oldy = newy;
			i+=2;
			if(oldx>=(int)(rectArea1.right-1))
				break;
		}

		dc.SelectClipRgn(NULL);
		dc.IntersectClipRect(&rectArea3);
		for (i=1; i<SCANCOUNT; ) {
			short int adinput;
			int newx,newy,oldx,oldy;
			adinput = addat[i];
			newy = (rectArea3.top+rectArea3.bottom)/2-(int)(adinput*(0.00030518)*(rectArea3.bottom-rectArea3.top)/m_fVolt);
			newx = (rectArea3.left)+i;
			
			if (i==1)
				dc.MoveTo(newx, newy);
			else
				dc.MoveTo(oldx, oldy);
			dc.LineTo(newx, newy);
			oldx = newx;
			oldy = newy;
			i+=2;
			if(oldx>=(int)(rectArea3.right-2))
				break;
		}		
		dc.SelectClipRgn(NULL);
	}

}

void CMyDlg::OnMinimize() 
{
	ShowWindow(SW_HIDE);
	m_bMinimize	= true;
}

void CMyDlg::OnSave() 
{

	CString Filter;
	Filter = "Signal Files (*.txt)|*.txt||";

	CFileDialog FileDlg (FALSE, NULL, NULL, OFN_OVERWRITEPROMPT, Filter);
	FileDlg.m_ofn.lpstrDefExt="txt";
	if(FileDlg.DoModal()==IDOK)
	{
		fstream outfile;
		outfile.open(FileDlg.GetPathName(),ios::out);

		if(!outfile)
		{
			MessageBox("保存信號失敗!","錯誤");
			return;
		}
		
		unsigned int i=0; 
		if(m_iChanels==1)
		{
			outfile<<"采樣通道(個):\t1\n";
			outfile<<"采樣點數(點):\t"<<SCANCOUNT<<"\n";
			outfile<<"采樣頻率(HZ):\t"<<m_uRate<<"\n";
			outfile<<"通道1\n";
			for(i=0;i<SCANCOUNT;i++)
				outfile<<addat[i]<<"\n";
		}
		if(m_iChanels==2)
		{
			outfile<<"采樣通道(個):\t2\n";
			outfile<<"采樣點數(點):\t"<<SCANCOUNT<<"\n";
			outfile<<"采樣頻率(HZ):\t"<<m_uRate<<"\n";
			outfile<<"通道1\t通道2\n";
			for(i=0;i<SCANCOUNT;i++)
				outfile<<addat[2*i]<<"\t"<<addat[2*i+1]<<"\n";
		}
		outfile.close();

	}

}

void CMyDlg::OnLoad() 
{
	CString Filter;
	Filter = "Signal Files (*.txt)|*.txt||";

	CFileDialog FileDlg (TRUE, NULL, NULL, OFN_OVERWRITEPROMPT, Filter);
	FileDlg.m_ofn.lpstrDefExt="txt";
	if(FileDlg.DoModal()==IDOK)
	{
		unsigned int i=0; 
		fstream infile;
		infile.open(FileDlg.GetPathName(),ios::in);
		if(!infile)
		{
			MessageBox("加載信號失敗!","錯誤");
			DrawArea();
			return;
		}
		char s[50];
		CString TempRbuffer;
		infile.getline(s,sizeof(s));
		TempRbuffer=s;
		m_iChanels=atoi(TempRbuffer.Mid(TempRbuffer.Find("	")));	
		if(m_iChanels!=1 && m_iChanels!=2)
		{
			m_iChanels=1;
			m_bIsDrawGraph=false;
			m_bIsDrawFFT=false;
			DrawArea();
			MessageBox("加載信號失敗!請檢查數據格式是否正確!","錯誤");
			return;
		}
		infile.getline(s,sizeof(s));
		infile.getline(s,sizeof(s));
		TempRbuffer=s;
		m_uRate=atoi(TempRbuffer.Mid(TempRbuffer.Find("	")));
		
		int m_iRate;
		switch(m_uRate)
		{
		case 10000:
			m_iRate=0;
			break;
		case 20000:
			m_iRate=1;
			break;		
		case 30000:
			m_iRate=2;
			break;
		case 40000:
			m_iRate=3;
			break;			
		case 50000:
			m_iRate=4;
			break;
		case 60000:
			m_iRate=5;
			break;
		case 70000:
			m_iRate=6;
			break;
		case 80000:
			m_iRate=7;
			break;
		case 90000:
			m_iRate=8;
			break;
		case 100000:
			m_iRate=9;
			break;
		case 110000:
			m_iRate=10;
			break;
		case 120000:
			m_iRate=11;
			break;
		case 130000:
			m_iRate=12;
			break;
		case 140000:
			m_iRate=13;
			break;
		case 150000:
			m_iRate=14;
			break;
		case 160000:
			m_iRate=15;
			break;
		case 170000:
			m_iRate=16;
			break;
		case 180000:
			m_iRate=17;
			break;
		case 190000:
			m_iRate=18;
			break;
		case 200000:
			m_iRate=19;
			break;
		default:
			m_iRate=-1;
		}
		if(m_iRate==-1)
		{
			m_uRate=50000;
			m_combRate.SetCurSel(4);
			m_bIsDrawGraph=false;
			m_bIsDrawFFT=false;
			DrawArea();			
			MessageBox("數據采樣頻率有誤!\n請檢查保存格式和范圍是否正確!","加載信號錯誤");
			return;
		}
		m_combRate.SetCurSel(m_iRate);	
		infile.getline(s,sizeof(s));			
		if(m_iChanels==1)
		{
			while(!infile.eof())
			{
				infile.getline(s,sizeof(s));
				TempRbuffer=s;
				addat[i++]=atoi(TempRbuffer);
			}
		}
		if(m_iChanels==2)
		{
			while(!infile.eof())
			{
				infile.getline(s,sizeof(s));
				TempRbuffer=s;
				addat[i++]=atoi(TempRbuffer.Left(TempRbuffer.Find("	")));
				addat[i++]=atoi(TempRbuffer.Mid(TempRbuffer.Find("	")));
			}
		}
		infile.close();

		m_bIsDrawGraph=true;
		m_bIsDrawFFT=false;		
		::EnableWindow(m_btFFT,true);
		DrawArea();
		DrawGraph();

	}
	
}

void CMyDlg::OnFft() 
{
	// TODO: Add your control notification handler code here

	if(!m_bIsDrawGraph)
		return;
	int i=0;
	m_bIsDrawFFT=true;
	for(i=0;i<SCANCOUNT;i++)
	{
		fftout[i]=0;
		fftout1[i]=0;
	}
	if(m_iChanels==1)
	{
		for(i=0;i<SCANCOUNT;i++)
		{
			fftin[i]=addat[i];
		}
		FFT(fftin,fftout,10);	
	}
	if(m_iChanels==2)
	{
		for(i=0;i<SCANCOUNT;i++)
		{
			fftin[i]=addat[2*i];
		}
		FFT(fftin,fftout,10);
		for(i=0;i<SCANCOUNT;i++)
		{
			fftin1[i]=addat[2*i+1];
		}
		FFT(fftin1,fftout1,10);
	}
	DrawFFT();
}


void CMyDlg::FFT(Complex *TD, Complex *FD, int r)
{ 

	int   count;   
    int   i,j,k,bfsize,p;   
    double   angle;   
        Complex *W,*X1,*X2,*X;   
        count=1<<r;   
        W=new   Complex[count/2];   
        X1=new   Complex[count];   
        X2=new   Complex[count];   
        for(i=0;i<count/2;i++)   
        {   
              angle=-i*PI*2/count;   
              W[i]=Complex(cos(angle),sin(angle));   
        }   
        memcpy(X1,TD,sizeof(Complex)*count);   
        for(k=0;k<r;k++)   
        {   
                for(j=0;j<1<<k;j++)   
                {   
                      bfsize=1<<(r-k);   
                      for(i=0;i<bfsize/2;i++)   
                      {   
                            p=j*bfsize;   
                            X2[i+p]=X1[i+p]+X1[i+p+bfsize/2];   
                            X2[i+p+bfsize/2]=(X1[i+p]-X1[i+p+bfsize/2])*W[i*(1<<k)];   
                      }   
                }   
                X=X1;   
                X1=X2;   
                X2=X;   
        }   
        for(j=0;j<count;j++)   
        {   
              p=0;   

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美bbbbb| 亚洲国产精品久久不卡毛片| 日韩亚洲欧美在线观看| 欧美亚洲综合久久| 在线观看免费一区| 5566中文字幕一区二区电影| 日韩视频一区二区三区在线播放 | 精品视频在线看| 欧美久久免费观看| 日韩视频免费观看高清完整版在线观看| 欧美一区二区视频观看视频| 亚洲精品一区二区三区99| 久久久亚洲综合| 国产拍欧美日韩视频二区| 中文字幕亚洲一区二区av在线| 椎名由奈av一区二区三区| 亚洲在线一区二区三区| 蜜臀av一级做a爰片久久| 国产电影精品久久禁18| 色哦色哦哦色天天综合| 日韩免费福利电影在线观看| 日本一区二区三区国色天香| 亚洲日本中文字幕区| 日韩av电影免费观看高清完整版 | 国产欧美精品在线观看| 亚洲精品菠萝久久久久久久| 日韩国产精品久久| 成人一级视频在线观看| 欧美日韩久久不卡| 日本一区二区三级电影在线观看| 一区二区三区在线视频播放| 久88久久88久久久| 色诱亚洲精品久久久久久| 欧美一区二区高清| 中文字幕亚洲欧美在线不卡| 青椒成人免费视频| 91农村精品一区二区在线| 日韩欧美国产一区二区三区 | 欧美视频在线不卡| 国产亚洲成av人在线观看导航 | 国产色产综合产在线视频| 亚洲精品视频在线| 国产伦精品一区二区三区在线观看| 一本一本久久a久久精品综合麻豆| 91麻豆精品国产自产在线观看一区 | 美日韩一级片在线观看| 91香蕉视频在线| 久久久久久久综合狠狠综合| 亚洲成人免费电影| 99久久精品免费看国产| 欧美精品一区二区三区蜜臀| 天堂午夜影视日韩欧美一区二区| 不卡视频免费播放| 欧美精品一区在线观看| 日本v片在线高清不卡在线观看| 91片在线免费观看| 国产精品成人免费在线| 国产成人免费视频| 亚洲精品一区二区三区99| 日韩一区欧美二区| 欧美视频一区二区三区四区 | 天堂蜜桃91精品| 日本久久电影网| 亚洲色图制服丝袜| 91视频免费播放| 中文字幕一区在线观看| 波多野结衣中文字幕一区二区三区| 精品日韩一区二区| 极品少妇一区二区| 日韩一区二区三区精品视频| 图片区日韩欧美亚洲| 欧美日韩久久久久久| 亚洲成人激情自拍| 91精品国产色综合久久| 狂野欧美性猛交blacked| 日韩免费观看高清完整版在线观看| 午夜精品久久久久久久蜜桃app| 在线观看亚洲一区| 亚洲成人av电影| 91精品国产色综合久久ai换脸| 免费人成网站在线观看欧美高清| 欧美一级夜夜爽| 亚洲国产色一区| 国产乱淫av一区二区三区| 91福利国产成人精品照片| 欧美日韩一区二区三区四区| 天天射综合影视| 日韩一区二区三区在线| 国产在线精品免费| 中文一区二区在线观看| 色婷婷一区二区三区四区| 亚洲成av人影院| 精品卡一卡二卡三卡四在线| 国产一区二区三区免费观看| 国产精品美女一区二区| 欧美性受xxxx黑人xyx| 日韩国产精品大片| 久久久不卡影院| 91丨九色porny丨蝌蚪| 亚洲自拍欧美精品| 337p日本欧洲亚洲大胆精品| 成人av在线一区二区三区| 亚洲国产精品一区二区久久恐怖片| 日韩欧美一区二区在线视频| 国产精品12区| 午夜伦欧美伦电影理论片| 久久综合久久综合亚洲| 一本大道av伊人久久综合| 日韩avvvv在线播放| 国产精品青草久久| 欧美一区二区三区系列电影| 国产成人高清视频| 婷婷丁香激情综合| 日韩伦理av电影| 久久色在线观看| 欧美色成人综合| 99在线精品视频| 久久99最新地址| 一区二区免费在线| 中文字幕国产一区二区| 欧美一区二区在线免费观看| 91性感美女视频| 国产999精品久久久久久绿帽| 日韩精品午夜视频| 亚洲青青青在线视频| 久久婷婷一区二区三区| 在线成人av影院| 一本色道久久综合亚洲91| 国产老女人精品毛片久久| 青青青爽久久午夜综合久久午夜 | 最新高清无码专区| 久久综合色一综合色88| 日韩免费一区二区| 欧美精品乱码久久久久久| 91美女片黄在线观看91美女| 丰满放荡岳乱妇91ww| 久久99精品久久只有精品| 日韩成人免费电影| 性做久久久久久久免费看| 亚洲黄色在线视频| 中文字幕中文乱码欧美一区二区 | 洋洋成人永久网站入口| 1024亚洲合集| 国产精品伦理在线| 国产精品午夜在线| 日本一区二区在线不卡| 国产精品蜜臀av| 中文字幕中文乱码欧美一区二区| 国产亚洲1区2区3区| 久久精品一区八戒影视| 久久精品人人做人人综合| 久久综合五月天婷婷伊人| 久久精品一二三| 国产亚洲欧美日韩在线一区| 国产视频一区二区在线| 国产日韩v精品一区二区| 欧美—级在线免费片| 国产精品久久久久久久岛一牛影视| 国产精品白丝在线| 亚洲免费大片在线观看| 天堂资源在线中文精品| 日韩vs国产vs欧美| 国产一区欧美日韩| 粉嫩蜜臀av国产精品网站| 91小视频在线免费看| 欧美性大战久久| 欧美电影免费观看高清完整版在| 精品国产污污免费网站入口 | aa级大片欧美| 欧美午夜片在线看| 日韩一级大片在线| 久久久久99精品国产片| 亚洲欧美另类久久久精品| 亚洲资源中文字幕| 精品在线观看视频| 不卡的看片网站| 欧美疯狂做受xxxx富婆| 久久久久久久久久久黄色| 亚洲色图欧洲色图婷婷| 日本午夜一本久久久综合| 国产精品一区二区你懂的| 色婷婷亚洲综合| 精品国产亚洲在线| 一区二区三区中文字幕| 国精产品一区一区三区mba视频 | 中文字幕高清不卡| 亚洲成a人v欧美综合天堂下载 | 国产精品久久综合| 天天综合网 天天综合色| 国产精品18久久久| 911国产精品| 日韩一区日韩二区| 蜜臀av一区二区在线免费观看| 成人国产电影网| 日韩欧美亚洲另类制服综合在线 | 欧美日韩国产高清一区| 久久久久国产精品厨房| 天天综合日日夜夜精品| av一区二区三区黑人| 精品999久久久|