public float analogin_read(ref analogin_t obj) { if (!interfaces.TryGetValue(obj.id, out var uif)) { throw new ArgumentException(); } return(((AnalogIn)uif).Read() / 65535.9f); }
public ushort analogin_read_u16(ref analogin_t obj) { if (!interfaces.TryGetValue(obj.id, out var uif)) { throw new ArgumentException(); } return(((AnalogIn)uif).Read()); }
private IUnitInterface CreateAnalogIn(ref analogin_t obj, PinName pin) { var p = PinMap.Peripheral(pin, PinMap.PinMap_ADC); if (p == (int)PinName.NC) { return(null); } if (!interfaces.TryGetValue(obj.id, out var uif)) { if (pin_if.ContainsKey(pin)) { throw new ArgumentException(); } uif = new AnalogIn((ADCName)p, pin); obj.id = uif.GetHashCode(); interfaces.Add(obj.id, uif); } return(uif); }
public void analogin_init(ref analogin_t obj, PinName pin) { CreateAnalogIn(ref obj, pin); }