/// <summary> /// Opens a pin in order for it to be ready to use. /// </summary> /// <param name="pinNumber">The pin number in the controller's numbering scheme.</param> public void OpenPin(int pinNumber) { int logicalPinNumber = GetLogicalPinNumber(pinNumber); if (_openPins.Contains(logicalPinNumber)) { throw new InvalidOperationException("The selected pin is already open."); } _driver.OpenPin(logicalPinNumber); _openPins.Add(logicalPinNumber); }
/// <summary> /// Opens a pin in order for it to be ready to use. /// </summary> /// <param name="pinNumber">The pin number in the controller's numbering scheme.</param> protected virtual void OpenPinCore(int pinNumber) { int logicalPinNumber = GetLogicalPinNumber(pinNumber); _driver.OpenPin(logicalPinNumber); }