public async Task I2cScanAsync(CanDevice device) { var frame = new CanFrame(); frame.Address = device.CanId; frame.DLC = (byte)(1); frame.RemoteRequest = true; await SendFrameAsync(frame); }
public CanDevice GetOrCreateCanDevice(uint address) { var device = CanDevices.FirstOrDefault(d => d.CanId == address); if (device == null) { device = new CanDevice() { CanId = address }; CanDevices.Add(device); } return(device); }
public I2cDevice GetOrCreateI2cDevice(byte id, CanDevice master) { var device = I2cDevices.FirstOrDefault(d => d.Id == id && d.Master == master); if (device == null) { device = new I2cDevice() { Id = id, Master = master }; master.I2cDevices.Add(device); I2cDevices.Add(device); } return(device); }