freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于rs232接口的數(shù)據(jù)采集分析系統(tǒng)研究于碩-資料下載頁(yè)

2025-06-27 18:42本頁(yè)面
  

【正文】 = CreateEvent(NULL, TRUE, FALSE, NULL)。 EnterCriticalSection(amp。m_csCommunicationSync)。 ClearCommError(m_hPort,amp。dwErrorFlags,amp。ComStat)。 fState=WriteFile(m_hPort,(LPSTR)buf,dwLength,amp。length,amp。os)。 if(!fState) { dwErrorFlags=GetLastError()。 if(dwErrorFlags==ERROR_IO_PENDING) { GetOverlappedResult(m_hPort,amp。os,amp。length,TRUE)。 } else { AfxMessageBox(ERROR IN WRITECOMM:Can not send a char)。 length=0。 } } CloseHandle()。 LeaveCriticalSection(amp。m_csCommunicationSync)。 return length。}bool TSigma::SetOwner( HWND hWnd ){ m_hOwnerWnd = hWnd。 return true。}UINT TSigma::CommProc( LPVOID pParam ){ OVERLAPPED os。 COMSTAT ComStat。 DWORD dwErrorFlags,dwMask,dwTrans。 TSigma *pTSigma。 pTSigma = (TSigma*)pParam。 ASSERT(pTSigmam_hOwnerWnd!=NULL)。 memset(amp。os,0,sizeof(os))。 = CreateEvent(NULL,TRUE,FALSE,NULL)。 if(==NULL) { AfxMessageBox(Error in CommProc:Can not create event)。 return 1。 } while(pTSigmam_bConnected) { EnterCriticalSection(amp。(pTSigmam_csCommunicationSync))。 ClearCommError(pTSigmam_hPort,amp。dwErrorFlags,amp。ComStat)。 LeaveCriticalSection(amp。(pTSigmam_csCommunicationSync))。 if() { char RX。 DWORD numRead。 EnterCriticalSection(amp。(pTSigmam_csCommunicationSync))。 ReadFile(pTSigmam_hPort,amp。RX,1,amp。numRead,amp。os)。 LeaveCriticalSection(amp。(pTSigmam_csCommunicationSync))。 if(numRead) {// AfxMessageBox(received a char)。 if(RX!=5)//Ignore the ENQ Request { if(pTSigma(RX)) { SetEvent(pTSigmam_hReceived)。 if(pTSigmam_fSendMessage) PostMessage(pTSigmam_hOwnerWnd,WM_SIGMA_MSG,pTSigma(),0)。 } } } } else { dwMask=0。 if(!WaitCommEvent(pTSigmam_hPort,amp。dwMask,amp。os)) { dwErrorFlags=GetLastError()。 switch(dwErrorFlags) { case ERROR_IO_PENDING: GetOverlappedResult(pTSigmam_hPort,amp。os,amp。dwTrans,TRUE)。 break。 case 87: AfxMessageBox(ERROR 87 IN COMMPROC)。 //do nothing break。 default: AfxMessageBox(ERROR RECEIVING FROM SERIAL PORT)。 CloseHandle()。 return 1。 } } } } CloseHandle()。 return 0。}bool TSigma::SendSigmaMsg( const char* msg ){ if(!m_bConnected) return false。 DWORD length = strlen(msg)。 WriteComm(msg,length)。 if(msg[length2]!=39。\r39。 || msg[length1]!=39。\n39。) WriteComm(\r\n,2)。 return true。}bool TSigma::GetSigmaMsg( char* msg ){ return (msg)。}void TSigma::SetPortName( const CStringamp。 port ){ m_strPort = port。}void TSigma::SetBaudRate( int baud ){ m_nBaud = baud。}bool TSigma::isConnected(){ return m_bConnected。}bool TSigma::GetDeviceSn( char* sigma_sn ){ m_fSendMessage=false。 ResetEvent(m_hReceived)。 SendSigmaMsg(SYST:INFO:INST:SERN?)。 WaitForSingleObject(m_hReceived,m_nResponseTime)。 m_fSendMessage=true。 if( GetSigmaMsg(sigma_sn) ) return true。// AfxMessageBox(Waiting for device response over time)。 return false。}bool TSigma::GetProbeSn( char* probe_sn ){ m_fSendMessage=false。 ResetEvent(m_hReceived)。 SendSigmaMsg(SYST:INFO:PROB:SERN?)。 WaitForSingleObject(m_hReceived,m_nResponseTime)。 m_fSendMessage=true。 if( GetSigmaMsg(probe_sn) ) return true。// AfxMessageBox(Waiting for device response over time)。 return false。}bool TSigma::GetProbeModel( char* probe_model ){ m_fSendMessage=false。 ResetEvent(m_hReceived)。 SendSigmaMsg(SYST:INFO:PROB:MODEL?)。 WaitForSingleObject(m_hReceived,m_nResponseTime)。 m_fSendMessage=true。 if( GetSigmaMsg(probe_model) ) return true。// AfxMessageBox(Waiting for device response over time)。 return false。}void TSigma::SetApertureAera( float area ){ char str[100]。 //TODO: Check area range first! _set_output_format(_TWO_DIGIT_EXPONENT)。 sprintf_s(str,sizeof(str),CONF:AREA:APER:%,area)。 SendSigmaMsg(str)。 //QUESTION: Do the device answer this mand?}bool TSigma::GetApertureAera( floatamp。 ans ){ char str_ans[100]。 m_fSendMessage=false。 ResetEvent(m_hReceived)。 SendSigmaMsg(CONF:AREA:APER?)。 WaitForSingleObject(m_hReceived,m_nResponseTime)。 if(!GetSigmaMsg(str_ans)) { m_fSendMessage = true。 return false。 } ans =static_castfloat( atof(str_ans) )。 m_fSendMessage = true。 return true。}void TSigma::SetAreaCorrection( BOOL setValue ){ if(setValue) SendSigmaMsg(CONF:AREA:CORRON)。 else SendSigmaMsg(CONF:AREA:CORROFF)。}bool TSigma::GetAreaCorrection( BOOLamp。 ans ){ char str_ans[100]。 m_fSendMessage=FALSE。 ResetEvent(m_hReceived)。 SendSigmaMsg(CONF:AREA:CORR?)。 WaitForSingleObject(m_hReceived,m_nResponseTime)。 if(!GetSigmaMsg(str_ans)) { m_fSendMessage = TRUE。 return FALSE。 } if(strcmp(str_ans,ON)==0) ans=TRUE。 else ans=FALSE。 m_fSendMessage = TRUE。 return FALSE。}bool TSigma::GetDataImmediate( doubleamp。 ans ){ ASSERT(m_bConnected==true)。 char buf[100]。 memset(buf,0,sizeof(buf))。 m_fSendMessage=false。 ResetEvent(m_hReceived)。 SendSigmaMsg(FETC:NEXT?)。 WaitForSingleObject(m_hReceived,m_nResponseTime)。 if(!GetSigmaMsg(buf)) { m_fSendMessage=true。 return false。 } ans = atof(buf)。 m_fSendMessage=true。 return true。}程序的視類(View類)pragma onceinclude define START_X 50define START_Y 20define ID_TIMER_ASKDATA 1class CMy3SigmaView : public CScrollView{protected: // create from serialization only CMy3SigmaView()。 DECLARE_DYNCREATE(CMy3SigmaView)// Attributespublic: TSigma device。 CMy3SigmaDoc* GetDocument() const。// Operationspublic:// Overridespublic: int axis_x_interval。 //every 10ms in the figure stand for how many pixel。 double axis_y_interval。 int axis_y_num。 int axis_y_grid。 BOOL m_fHold。 virtual void OnDraw(CDC* pDC)。 // overridden to draw this view virtual BOOL PreCreateWindow(C
點(diǎn)擊復(fù)制文檔內(nèi)容
范文總結(jié)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1