================================================================================
MICROSOFT FOUNDATION CLASS Cu: eTest_CheckDC_HighSpeed vWFNg̊Tv
===============================================================================

Tv̊Tv

DCd͈͓̔Ɏ܂Ă邩ǂTvłB
AD{[h̃^C}gp邽߁Aُ팟o̐M̏ԂɎ荞ނƂł܂B
KpƂẮAԗsɂԍڋ@̐UȂǁAȐM̎WɓKĂ܂B
ᑬȐMω̌osꍇ́ATveTest_CheckDC_LowSpeedQlɂĂB

Tv̎dl

EDCd̋e͈(lƉl)ݒ肵Ad臒l͈͓̔ǂ𔻒肵܂B
Ed臒lOꂽꍇAfW^o͒[qA[o͂sƂł܂B
EA[o͂͗オGbW܂͗GbWIł܂B
EJnO̓dmFpɁAt[[hgpł܂Bt[ł͋e͈͂̃`FbN͍s܂B
E݂̓d̓OtɃA^C\܂B
Eُ팟oO(vgK)̃f[^ʂƁAُ팟o(|XggK)̃f[^ʂAf[eB[Őݒł܂B
Eُ팟oÕf[^́ACSVt@Cɕۑ܂B
EΏAD{[h
@ADA16-32/2(PCI)F, ADA16-32/2(CB)F, AIO-163202F-PE
Ef[^Wp[^
@ϊxF100usecAgp`lF0A{[hWF}10VAA[o̓rbgF0Aۑf[^F1000_

Tv̎gp@

01.gpAD{[h̃foCXݒ肵A{^NbN܂B
02.~bgEA[ݒ{^NbNāAeݒs܂B
03.gKݒGAŁAvgKƃ|XggK̃f[eB[ݒ肵܂B
	ł̃gKƂ́A~bglI[o[̐M̂Ƃ܂B
	f[eB[グƁA~bgI[o[O(vgK)̐M𑽂擾A
	tɃf[eB[ƁA~bgI[o[(|XggK)̐M𑽂擾܂B
04.~bgݒGAŁAed̏lƉlݒ肵܂B
05.A[ݒGAŁAA[o͂sǂ`FbN{bNXŐݒ肵܂B
06.A[o͂sfW^o̓rbgݒ肵܂B
07.A[o͐MオGbWGbWI܂B
08.OK{^NbNĐݒ܂B
09.t[{^NbN邱ƂŁA݂̐M̏ԂOtŊmFł܂B
	t[ł́Ae͈͂̃`FbN͍s܂B
10.Jn{^NbNƁAe͈͂̃`FbNs܂B
	~bgI[o[ȂԂ́A݂̐M̏ԂOtɕ\܂B
	~bgI[o[ƎW~ÂƂ̃f[^Otɕ\܂B
	c̐̓~bgI[o[ʒuĂÄʒu̓f[eB[̐ݒɂČ܂܂B
	܂A~bgI[o[̃f[^̓t@CeTest_CheckDC_HighSpeed.csvƂāA
	eTest_CheckDC_HighSpeed.exeƓpXɕۑ܂B
11.~{^NbNƁA܂̓t[~܂B
12.I{^ƁAAvP[VI܂B
13.G[e⌟̏Ԃ́Aʉ̃eLXg{bNXɕ\܂B

vO~O

EATvO̎@
	̃Tvł́An[hEFA̓^C}gpĘATvOsĂ܂B
	Wf[^́A{[hɓĂ郁Ɋi[܂B
	̃Tvł́AO`ŎgpĂAWJnƕϊf[^̓ɑ΂ăOɊi[܂B
	̍ۂɁAÂf[^͐Vf[^ɂď㏑Ă܂B
	O`̐ݒ́AeTest_CheckDC_HighSpeedDlg.cppOnBnClickedButtonInit\bhŁA
	AioSetAiMemoryType֐ɂĐݒ肳Ă܂B

	WdA炩ߐݒ肳ꂽ~bglI[o[ɁAW~܂B
	̓sɂ́AW̒~AEgWrɐݒ肵܂B
	AEgWr~Ƃ́Aw`l̎Wf[^A炩ߐݒ肵Ă2_Ԃ̓d͈͂OꂽƂ
	W~郂[hłBW~̐ݒ́AeTest_CheckDC_HighSpeedDlg.cppOnBnClickedButtonStart\bhŁA
	AioSetAiStopTriggerAioSetAiStopOutRangeEx֐ɂĐݒ肳Ă܂B
	AEgWȑڍׂ́A[X^[g]-[SẴvO]-[CONTEC API-PAC(W32)]-[API-AIO(WDM) HELP]-[API-AIO(WDM) HELP]-
	[AiOo̓hCo]-[`[gA]-[@\AiO]-[Xebv9F~̐ݒ]-[AEgWr~̐ݒ]
	QƂĂB
	t[[hŎWJnꍇ́AM~bgI[o[ĂWp邽߁A
	W~̓AEgWrł͂ȂR}h~ɐݒ肵܂B
	̐ݒeTest_CheckDC_HighSpeedDlg.cppOnBnClickedButtonFreerun\bhŁA
	AioSetAiStopTriggerɂčsĂ܂B

EvgKƃ|XggKTvO
	~gK(~bgl̃I[o[)̔ɑ΂āAgKO̐MvgKTvOA
	gK̐M|XggKTvOƌĂт܂B
	O`gpāAAEgWrɂW~ݒ肵ł́A
	~bgI[o[uԂɎW~Ă܂߁A|XggKTvOs܂B
	API-AIO(WDM)ł́AxTvOgp邱ƂŁA|XggKTvOł܂B
	xTvÓAW~̐ɍsTvÔƂŁA|XggKTvOƓӖ܂B
	̐ݒ́AeTest_CheckDC_HighSpeedDlg.cppOnBnClickedButtonStart\bhŁA
	AioSetAiStopDelayTimes֐ɂĐݒ肳Ă܂B
	t[[hł̎sɂ́AxTvO̐ݒ͕Kv܂B

	̃Tvł́AvgKTvOƃ|XggKTvOv1000Tv擾܂B
	vgKTvOƃ|XggKTvO̊́Af[eB[Őݒ肵܂B
	Ƀf[eB[䂪50%ł΁AvgKƃ|XggK̃Tv͋500_łB
	f[eB[䂪0%ȂvgK0_Ń|XggK1000_A
	f[eB[䂪100%ȂvgK1000_Ń|XggK0_AƂȂ܂B
	|XggKTvO̐ݒAioSetAiStopDelayTimes֐ōs܂A
	vgKTvÓAWJnƃ~bgI[o[܂ŖɃւ̊i[s邽߁A
	֐̐ݒ͕Kv܂B
	W̊JńAeTest_CheckDC_HighSpeedDlg.cppOnBnClickedButtonFreerun܂OnBnClickedButtonStart\bhɂāA
	AioStartAi֐ɂčs܂B

Ef[eB[E~bgoEA[o͂Ɋւp[^ݒ
	f[eB[E~bgoEA[o͂Ɋւp[^ݒ́Ap̃_CAOōs܂B
	(IDFIDD_DIALOG_CONFIGAt@CFConfigDlg.cppAConfigDlg.h)
	̃_CAÓA~bgEA[ݒ{^NbNۂɁA
	eTest_CheckDC_LowSpeedDlg.cppOnBnClickedButtonConfig\bhN܂B
	̃\bhł͂܂A~bgEA[ݒIuWFNg𐶐܂B
	ɁAC_CAONXĂp[^A_CAONXɃRs[܂B
	DoModal֐Ń_CAO\A[U[ɂOK{^ƁA
	_CAOŐݒ肳ꂽp[^AēxC_CAONXɃRs[Ă܂B

EWf[^̕`揈
	Wf[^̕`揈́AVXe^C}𗘗p100msecōsĂ܂B
	̕`揈͐M̃j^OɎg邾Ȃ̂ŁA̎ԓIȌ덷͖ƂȂ܂B
	̂悤ȗprɂ́AVXe^C}̎gp֗łB
	^C}̊JńAt[܂͌̊Jn{^nhōs܂B
	eTest_CheckDC_HighSpeedDlg.cppOnBnClickedButtonFreerunOnBnClickedButtonStart\bhŁA
	MFCCuSetTimer֐gpāAVXe^C}JnĂ܂B

	SetTimer֐̑2p[^ŁA^C}̃C^[omsecPʂŐݒ肵܂B
	̃Tvł̓oϐm_IntervallێĂAŒl100ƂȂĂ܂B
	SetTimer֐͖߂lƂă^C}pIDԂ܂BID̓^C}~ۂɕKvɂȂ܂B

	SetTimer֐Őݒ肳ꂽƂɁA^C}nhR[܂B(eTest_CheckDC_HighSpeedDlg.cppOnTimer\bh)
	^C}nhł́AAioGetAiSamplingDataEx֐ɂ胊O̎Wf[^擾Ă܂B
	OgpꍇAAioGetAiSamplingDataEx֐̓̍łVWf[^A
	2p[^Ŏw肳ꂽTv擾āA3p[^ɓnꂽzɊi[܂B
	̃Tvł̓vgK{|XggKTv́A1000_̎Wf[^擾Ă܂B

	1000_̎Wf[^̓_CAO̕`̈Ƀvbg܂B
	`̈̉́ATv1000_̎ԎĂ܂Aۂ̕`ɎgsNZ1000łB
	̂߁AWf[^͊Ԉꂽ`ŕ`悳܂B
	`̈̏ćA~bglƉl̓dłB
	cɊւĂAADϊ̕\ׂĕ`łsNZł͂Ȃ߁AWf[^͊Ԉĕ`悳܂B

EW̊ʒmƃf[^ۑ
	W̊AvP[Vɒʒm邽߂ɁAAPI-AIO(WDM)̃CxgbZ[W@\gpĂ܂B
	{Tvł́AWf[^t@CɕۑĂ܂A
	CxgbZ[W̓t@Cۑs^C~Oc邽߂ɎgpĂ܂B
	CxgbZ[W̐ݒ́AeTest_CheckDC_HighSpeedDlg.cppOnBnClickedButtonStart\bhɂāA
	AioSetAiEvent֐ɂĐݒ肳Ă܂B
	2p[^ɂ̓AvP[ṼEBhEnhw肵܂B
	ɂAPI-AIO(WDM)́Aǂ̃EBhEɃCxgbZ[W𔭍ŝm邱Ƃł܂B
	3p[^ɂ̓CxgbZ[W̔vw肵܂B
	̃TvłAIE_ENDw肳ĂAAD{[hWƂ(xTvO)ɁA
	CxgbZ[WM邱ƂӖ܂B
	t[[hgṕAW̓R}h~ɂĂ̂ݍsÂƂ̃f[^ۑ͕Kv܂B
	̂߁AAioSetAiEvent̑3p[^0w肵āACxg𖢎gpɐݒ肵Ă܂B

	W삪ƃCxgbZ[WACxgnhR[܂B
	Cxgnh́AeTest_CheckDC_HighSpeedDlg.cppDefWindowProcɎĂ܂B
	nhR[ƂA1p[^messageϐɂ́ACxg̗vAPI-AIO(WDM)n܂B
	AvP[Vł͂̕ϐmF邱ƂŁAeCxgɉs킹邱Ƃł܂B
	Cxgnhł́Ãf[^擾ACSVt@CƂĕۑĂ܂B
	Cxgnh̍쐬@Ɋւڍׂ́A[X^[g]-[SẴvO]-[CONTEC API-PAC(W32)]-[API-AIO(WDM) HELP]-
	[API-AIO(WDM) HELP]-	[AiOo̓hCo]-[`[gA]-[Cxg̎gp]-[bZ[Wʒm]QƂĂB

EA[o͏
	A[o͂オGbW̏ꍇAo͂̏Ԃ"0"ɂĂKv܂B
	܂AGbW̏ꍇAo͂̏Ԃ"1"ɂĂKv܂B
	̏eTest_CheckDC_LowSpeedDlg.cppOnBnClickedButtonStart\bhɂāA
	AioOutputDoBit֐ɂĐݒ肳Ă܂B3p[^m_AlarmEdgeϐ
	GbWݒێĂ(オF0AF1)A̒l͂̂܂܃A[o͂̏lƂĂgpł܂B

	dl≺l̃~bgI[o[ꍇAA[o͂s܂B
	̏́AeTest_CheckDC_LowSpeedDlg.cpp̃VXe^C}nhOnTimerōsĂ܂B
	łAAioOutputDoBit֐gp܂B
	܂A~bgI[o[pꍇAd~bg͈͓ɕAƂ
	A[o͂ZbgKv܂B

EG[̏
	API-AIO(WDM)֐R[̃G[́AErrorHandlerTu[`ɋLqĂ܂B
	̃Tu[`́A֐AG[R[hp[^ƂĎ󂯎܂B
	G[R[hAioGetErrorString֐ɂāAG[e𕶎ɕϊ邱Ƃł܂B

JX^}CỸqg
Egp`lύXɂͥ

	gp`l̐ݒeTest_CheckDC_HighSpeedDlg.cpp67sځAm_Channeloϐɐݒ肳Ă܂B
	̃p[^ύX邱ƂŁAgp`lύX邱Ƃł܂B
	̃oϐ́AeTest_CheckDC_HighSpeedDlg.cpp164sڂŁAAioSetAiChannelSequence֐ɂĎgp܂B

EgpWύXɂͥ

	gpW̐ݒeTest_CheckDC_HighSpeedDlg.cpp69sځAm_Rangeoϐɐݒ肳Ă܂B
	̃p[^ύX邱ƂŁAgpWύX邱Ƃł܂B
	̃oϐ́AeTest_CheckDC_HighSpeedDlg.cpp152sڂŁAAioSetAiRange֐ɂĎgp܂B

ETvOύXɂͥ

	TvO̐ݒeTest_CheckDC_HighSpeedDlg.cpp68sځAm_Clockoϐɐݒ肳Ă܂B
	̃p[^ύX邱ƂŁATvOύX邱Ƃł܂B
	̃oϐ́AeTest_CheckDC_HighSpeedDlg.cpp176sڂŁAAioSetAiSamplingClock֐ɂĎgp܂B

E擾f[^_ύXɂͥ

	擾f[^_̐ݒeTest_CheckDC_HighSpeedDlg.cpp74sځAm_TotalSamplingTimesoϐɐݒ肳Ă܂B
	̃p[^ύX邱ƂŁA擾f[^_ύX邱Ƃł܂B
	̃oϐ́AeTest_CheckDC_HighSpeedDlg.cpp304sڂŁAAioSetAiStopDelayTimes֐ɂĎgp܂B
	܂A361sڂ438sڂłAAioGetAiSamplingDataEx֐ɂf[^擾̂߂ɎgpĂ܂B
	Å֐̑3p[^Ɏw肷z1000̌Œ蒷zŐ錾Ă邽߁A
	̃TCYύXKv܂B

ECSVt@C̕ۑύXɂͥ

	CSVt@CтɃpX́AeTest_CheckDC_HighSpeedDlg.cpp77sځAm_FileNameoϐɐݒ肳Ă܂B
	̃p[^ύX邱ƂŁACSVt@C̕ۑύX邱Ƃł܂B

