Beispiel #1
0
        /// <summary>
        /// 条码读取线程,关闭条码机,获取读到条码
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void timBCRReadTimeOut_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
        {
            timBCRReadTimeOut.Stop();
            if (DateTime.Now > dtBCRReadTime.AddMilliseconds(intBCRReadTimeOut))
            {
                serialPort.Write(bytarTriggerOff, 0, bytarTriggerOff.Length);
                strResultID = serialPort.ReadExisting().Replace("\n", "");
                switch (enuBCRSts)
                {
                case BCRSts.Reading:
                    strResultID = serialPort.ReadExisting().Replace("\n", "");
                    if (!string.IsNullOrWhiteSpace(strResultID))
                    {
                        enuBCRSts = BCRSts.ReadFinish;
                        serialPort.Write(bytarTriggerOff, 0, bytarTriggerOff.Length);
                        InitSys.funWriteLog("BCR_Trace", strBCRName + "|TimeOut1|" + strResultID + "|" + enuBCRSts);
                    }
                    else
                    {
                        strResultID = strError;
                        enuBCRSts   = BCRSts.ReadFinish;
                        serialPort.Write(bytarTriggerOff, 0, bytarTriggerOff.Length);
                        InitSys.funWriteLog("BCR_Trace", strBCRName + "|TimeOut2|" + strResultID + "|" + enuBCRSts);
                    }
                    break;

                default:
                    break;
                }
            }
            else
            {
                timBCRReadTimeOut.Start();
            }
        }
Beispiel #2
0
        /// <summary>
        /// 获取读到条码
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void serialPort_DataReceived(object sender, SerialDataReceivedEventArgs e)
        {
            try
            {
                timBCRReadTimeOut.Stop();
                switch (enuBCRSts)
                {
                case BCRSts.Reading:
                    strResultID = serialPort.ReadExisting().Replace("\n", "");
                    if (!string.IsNullOrWhiteSpace(strResultID))
                    {
                        enuBCRSts = BCRSts.ReadFinish;
                        serialPort.Write(bytarTriggerOff, 0, bytarTriggerOff.Length);
                        InitSys.funWriteLog("BCR_Trace", strBCRName + "|DataReceived1|" + strResultID + "|" + enuBCRSts);
                    }
                    else
                    {
                        strResultID = strError;
                        enuBCRSts   = BCRSts.ReadFinish;
                        serialPort.Write(bytarTriggerOff, 0, bytarTriggerOff.Length);
                        InitSys.funWriteLog("BCR_Trace", strBCRName + "|DataReceived2|" + strResultID + "|" + enuBCRSts);
                    }
                    break;

                default:
                    break;
                }
            }
            catch (Exception ex)
            {
                MethodBase methodBase = MethodBase.GetCurrentMethod();
                InitSys.funWriteLog("Exception", methodBase.DeclaringType.FullName + "|" + methodBase.Name + "|" + ex.Message);
            }
        }
Beispiel #3
0
        public BCR(string bCRName, string port, int bCRReadTimeOut, string bufferName, int bufferIndex)
        {
            strBCRName        = bCRName;
            intBCRReadTimeOut = bCRReadTimeOut;
            strPort           = port;
            strResultID       = string.Empty;
            enuBCRSts         = BCRSts.None;
            strBufferName     = bufferName;
            intBufferIndex    = bufferIndex;

            bytarTriggerOn    = new byte[3];
            bytarTriggerOn[0] = 0x16;
            bytarTriggerOn[1] = 0x54;
            bytarTriggerOn[2] = 0x0D;

            bytarTriggerOff    = new byte[3];
            bytarTriggerOff[0] = 0x16;
            bytarTriggerOff[1] = 0x55;
            bytarTriggerOff[2] = 0x0D;
        }
Beispiel #4
0
        public bool funTriggerBCROn2(ref string errMsg)
        {
            try
            {
                serialPort.DiscardInBuffer();
                serialPort.DiscardOutBuffer();


                strResultID = string.Empty;
                enuBCRSts   = BCRSts.Reading;

                dtBCRReadTime = DateTime.Now;
                timBCRReadTimeOut.Start();
                return(true);
            }
            catch (Exception ex)
            {
                MethodBase methodBase = MethodBase.GetCurrentMethod();
                InitSys.funWriteLog("Exception", methodBase.DeclaringType.FullName + "|" + methodBase.Name + "|" + ex.Message);
                return(false);
            }
        }
Beispiel #5
0
 public void funClear()
 {
     strResultID = string.Empty;
     enuBCRSts   = BCRSts.None;
     InitSys.funWriteLog("BCR_Trace", strBCRName + "|Clear!|" + strResultID + "|" + enuBCRSts);
 }