Beispiel #1
0
        private short ReadInt16(RegisterAG register)
        {
            Span <byte> val = stackalloc byte[2];

            Read(register, val);
            return(BinaryPrimitives.ReadInt16LittleEndian(val));
        }
Beispiel #2
0
        private void WriteByte(RegisterAG register, byte data)
        {
            Span <byte> buff = stackalloc byte[2]
            {
                (byte)register,
                data
            };

            _i2c.Write(buff);
        }
Beispiel #3
0
        private Vector3 ReadVector3(RegisterAG register)
        {
            Span <byte> vec = stackalloc byte[6];

            Read(register, vec);

            short x = BinaryPrimitives.ReadInt16LittleEndian(vec.Slice(0, 2));
            short y = BinaryPrimitives.ReadInt16LittleEndian(vec.Slice(2, 2));
            short z = BinaryPrimitives.ReadInt16LittleEndian(vec.Slice(4, 2));

            return(new Vector3(x, y, z));
        }
Beispiel #4
0
 private void Read(RegisterAG register, Span <byte> buffer)
 {
     _i2c.WriteByte((byte)((byte)register | ReadMask));
     _i2c.Read(buffer);
 }