예제 #1
0
        public void FromUInt16_TimestampedValue_PayloadHasValue()
        {
            ushort value     = 1024;
            var    timestamp = GetTimestamp();
            var    message   = HarpMessage.FromUInt16(DefaultAddress, timestamp, MessageType.Write, value);

            AssertIsValid(message);
            var(payload, actualTimestamp) = message.GetTimestampedPayloadUInt16();
            AssertTimestamp(timestamp, actualTimestamp);
            Assert.AreEqual(value, payload);
        }
예제 #2
0
        public void FromUInt16_TimestampedArray_PayloadHasValue()
        {
            var value     = new ushort[] { 512, 2048 };
            var timestamp = GetTimestamp();
            var message   = HarpMessage.FromUInt16(DefaultAddress, timestamp, MessageType.Write, value);

            AssertIsValid(message);
            var(payload, actualTimestamp) = message.GetTimestampedPayloadArray <ushort>();
            AssertTimestamp(timestamp, actualTimestamp);
            AssertArrayEqual(value, payload);
            Assert.AreEqual(value[1], message.GetTimestampedPayloadUInt16(1).Value);
        }
예제 #3
0
 /// <summary>
 /// Returns a <see cref="HarpMessage"/> write command with the specified address, and an
 /// array payload of 16-bit unsigned integers.
 /// </summary>
 /// <param name="address">The address of the register to which the Harp message refers to.</param>
 /// <param name="values">The values to be stored in the payload.</param>
 /// <returns>
 /// A valid <see cref="HarpMessage"/> write command with the specified address and payload.
 /// </returns>
 public static HarpMessage WriteUInt16(int address, params ushort[] values)
 {
     return(HarpMessage.FromUInt16(address, MessageType.Write, values));
 }
예제 #4
0
 /// <summary>
 /// Returns a <see cref="HarpMessage"/> read command for a 16-bit unsigned integer
 /// register with the specified address.
 /// </summary>
 /// <param name="address">The address of the register to read.</param>
 /// <returns>
 /// A valid <see cref="HarpMessage"/> read command for a 16-bit unsigned integer
 /// register with the specified address.
 /// </returns>
 public static HarpMessage ReadUInt16(int address)
 {
     return(HarpMessage.FromUInt16(address, MessageType.Read));
 }
예제 #5
0
 /// <summary>
 /// Returns a <see cref="HarpMessage"/> write command with the specified address, and a
 /// single value 16-bit unsigned integer payload.
 /// </summary>
 /// <param name="address">The address of the register to which the Harp message refers to.</param>
 /// <param name="value">The value to be stored in the payload.</param>
 /// <returns>
 /// A valid <see cref="HarpMessage"/> write command with the specified address and payload.
 /// </returns>
 public static HarpMessage WriteUInt16(int address, ushort value)
 {
     return(HarpMessage.FromUInt16(address, MessageType.Write, value));
 }