public async Task TestBits() { var factory = new ModbusFactory(); IModbusMaster modbus = factory.CreateMaster(_client); await _client.ConnectAsync(MODBUS_IP, MODBUS_PORT); BitArray data = await modbus.ReadBitsAsync(MODBUS_SLAVE, 0); Assert.Equal(16, data.Length); await modbus.WriteBitsAsync(MODBUS_SLAVE, 0, new BitArray(16, true)); data = await modbus.ReadBitsAsync(MODBUS_SLAVE, 0); Assert.Equal(16, data.Length); Assert.Equal(new BitArray(16, true), data); await modbus.WriteBitsAsync(MODBUS_SLAVE, 0, new BitArray(16, false)); data = await modbus.ReadBitsAsync(MODBUS_SLAVE, 0); Assert.Equal(16, data.Length); Assert.Equal(new BitArray(16, false), data); data = await modbus.ReadOnlyBitsAsync(MODBUS_SLAVE, 0); Assert.Equal(16, data.Length); }