示例#1
0
        private void RadioGetOperationMode(int radioHandle)
        {
            var operationMode = new RadioOperationMode();

            var result = link.RadioGetOperationMode(radioHandle, ref operationMode);

            logger.Information("link.RadioGetOperationMode => {Result}", result);
            logger.Information("\tRadioHandle used    : " + radioHandle);
            logger.Information("\tOperationMode found : " + operationMode);
        }
示例#2
0
        /// <summary>
        /// Retrieves the operation mode for the RFID radio module.  The
        /// operation mode cannot be retrieved while a radio module is
        /// executing a tag-protocol operation.
        /// </summary>
        /// <param name="mode"> return will receive the current operation mode.</param>
        /// <returns></returns>
        public void GetOperationMode(ref RadioOperationMode mode)
        {
            uint value = 0;

            MacReadRegister(MACREGISTER.HST_ANT_CYCLES /*0x700 HST_ANT_CYCLES*/, ref value);

            if ((value & 0xffff) == 0xffff)
            {
                mode = RadioOperationMode.CONTINUOUS;
            }
            else
            {
                mode = RadioOperationMode.NONCONTINUOUS;
            }
        }
示例#3
0
        /// <summary>
        /// Sets the operation mode of RFID radio module.  By default, when
        /// an application opens a radio, the RFID Reader Library sets the
        /// reporting mode to non-continuous.  An RFID radio module's
        /// operation mode will remain in effect until it is explicitly changed
        /// via RFID_RadioSetOperationMode, or the radio is closed and re-
        /// opened (at which point it will be set to non-continuous mode).
        /// The operation mode may not be changed while a radio module is
        /// executing a tag-protocol operation.
        /// </summary>
        /// <param name="mode">The operation mode for the radio module.</param>
        /// <returns></returns>
        public void SetOperationMode(RadioOperationMode mode)
        {
            ushort cycles             = 0;
            AntennaSequenceMode smode = AntennaSequenceMode.UNKNOWN;
            uint sequenceSize         = 0;

            if (RadioOperationMode.UNKNOWN == mode)
            {
                return(Result.INVALID_PARAMETER);
            }

            if ((m_Result = GetOperationMode(ref cycles, ref smode, ref sequenceSize)) == Result.OK)
            {
                m_Result = SetOperationMode((ushort)(mode == RadioOperationMode.CONTINUOUS ? 0xFFFF : 1), smode, sequenceSize);
            }
        }
示例#4
0
文件: frmMain.cs 项目: xxdoc/vb600
        private void btnRefresh_Click(object sender, EventArgs e)
        {
            #region codes ========================================
            if (m_bOpen)
            {
                //Response Mode
                ResponseMode responseMode = ResponseMode.UNKNOWN;
                R1000Reader.RFIDGetResponseMode(ref responseMode);
                if (responseMode == ResponseMode.COMPACT)
                {
                    cmbResponseMode.SelectedIndex = 0;
                }
                else
                {
                    cmbResponseMode.SelectedIndex = 1;
                }

                //Operation Mode
                RadioOperationMode operationMode = RadioOperationMode.UNKNOWN;
                operationMode = R1000Reader.RFIDGetOperationMode();
                if (operationMode == RadioOperationMode.CONTINUOUS)
                {
                    cmbOperationMode.SelectedIndex = 0;
                    m_bContinue = true;
                }
                else
                {
                    cmbOperationMode.SelectedIndex = 1;
                    m_bContinue = false;
                }

                //tag stop count
                numTagStopCount.Value = R1000Reader.RFIDGetStopCount();

                AntennaPortConfig antPortConfig = new AntennaPortConfig();
                R1000Reader.RFIDGetAntennaPortConfiguration(0, ref antPortConfig);
                txtdwelltime.Text   = antPortConfig.dwellTime.ToString();
                txtInvRounds.Text   = antPortConfig.numberInventoryCycles.ToString();
                traPowerLevel.Value = (int)antPortConfig.powerLevel / 10;
                lbldBm.Text         = traPowerLevel.Value.ToString() + "dBm";

                ErrorMessage(0, 0, "Config Refreshed");
            }
            #endregion //end codes
        }
示例#5
0
 public static extern Result RFID_RadioGetOperationMode
 (
     [In]          Int32 handle,
     [In, Out] ref RadioOperationMode mode
 );
示例#6
0
 public static extern Result RFID_RadioSetOperationMode
 (
     [In] Int32 handle,
     [In] RadioOperationMode mode
 );
示例#7
0
        private void RadioSetOperationMode(int radioHandle, RadioOperationMode operationMode)
        {
            Result result = link.RadioSetOperationMode(radioHandle, operationMode);

            logger.Information("link.RadioSetOperationMode ( {OperationMode} ) => {Result}", operationMode, result);
        }
示例#8
0
            /// <summary>
            /// Constructor for Inventory
            /// </summary>
            /// <param name="ManagedAccess"></param>
            /// <param name="Handle"></param>
            /// <param name="WantSinglePackets"></param>
            /// <param name="runCount"></param>
            public ReaderInterfaceThreadClass(rfid.Linkage ManagedAccess, int Handle, bool WantSinglePackets, RadioOperationMode r_OpMode, TagAccessFlag r_strcTagFlag)
            {
                if (r_OpMode == RadioOperationMode.UNKNOWN)
                {
                    throw new ArgumentOutOfRangeException("OpMode", "OpMode must be CONTINUE or NON_CONTINUE");
                }

                _strcTagFlag = r_strcTagFlag;
                _OpMode = r_OpMode;
                _access = ManagedAccess;
                _handle = Handle;
                _singlePackets = WantSinglePackets;
                _stopRequest = false;
            }