public BasicCommandReturn SetSystemPackageChunkLength(PackageLength DataPackageChunkSize) { if (!Enum.IsDefined(typeof(PackageLength), DataPackageChunkSize)) { throw new Exception("The chunk size is not a valid max chunk size for the device!"); } this.DataPackageChunkSize = DataPackageChunkSize; return(SetSystemParam(SystemParam.DataPackageLength, (byte)DataPackageChunkSize)); }
/// <summary> /// Creates a serial connection and sets up the class to begin a connection /// </summary> /// <param name="ComPort"></param> /// <param name="Address"></param> /// <param name="BaudRate"></param> /// <param name="DataPackageChunkSize"></param> public FingerPrintScaner(string ComPort, uint?Address = null, BaudRates BaudRate = BaudRates.BaudRateOf57600, PackageLength DataPackageChunkSize = PackageLength.LengthOf128, bool OpenNow = true) { if (!Enum.IsDefined(typeof(BaudRates), BaudRate)) { throw new Exception("BaudRate is not a valid baudrate!"); } if (!Enum.IsDefined(typeof(PackageLength), DataPackageChunkSize)) { throw new Exception("The chunk size is not a valid max chunk size for the device!"); } int BaudRateValue = DefaultBaudRate; switch (BaudRate) { case BaudRates.BaudRateOf9600: BaudRateValue = 9600; BaudRate = BaudRates.BaudRateOf9600; break; case BaudRates.BaudRateOf19200: BaudRateValue = 19200; BaudRate = BaudRates.BaudRateOf19200; break; case BaudRates.BaudRateOf28800: BaudRateValue = 28800; BaudRate = BaudRates.BaudRateOf28800; break; case BaudRates.BaudRateOf38400: BaudRateValue = 38400; BaudRate = BaudRates.BaudRateOf38400; break; case BaudRates.BaudRateOf48000: BaudRateValue = 48000; BaudRate = BaudRates.BaudRateOf48000; break; case BaudRates.BaudRateOf57600: BaudRateValue = 57600; BaudRate = BaudRates.BaudRateOf57600; break; case BaudRates.BaudRateOf67200: BaudRateValue = 67200; BaudRate = BaudRates.BaudRateOf67200; break; case BaudRates.BaudRateOf76800: BaudRateValue = 76800; BaudRate = BaudRates.BaudRateOf76800; break; case BaudRates.BaudRateOf86400: BaudRateValue = 86400; BaudRate = BaudRates.BaudRateOf86400; break; case BaudRates.BaudRateOf96000: BaudRateValue = 96000; BaudRate = BaudRates.BaudRateOf96000; break; case BaudRates.BaudRateOf105600: BaudRateValue = 105600; BaudRate = BaudRates.BaudRateOf105600; break; case BaudRates.BaudRateOf115200: BaudRateValue = 115200; BaudRate = BaudRates.BaudRateOf115200; break; } if (Address != null) { this.AddressBytes = BitConverterHelpers.GetBytes32(Address.Value); } this.DataPackageChunkSize = DataPackageChunkSize; SerialPort = new SerialPort(ComPort, BaudRateValue, Parity.None, 8, StopBits.One); if (OpenNow) { SerialPort.Open(); } }