public void SetPortIOMode(int portNo, PortIOMode mode) { this.CheckPortNo(portNo); PortIOMode OrgPortIOMOde = this.GetPortIOMode(portNo); if (OrgPortIOMOde == mode) { return; } int IOMode = AC6651.GetIOMode(this.Handle); int NewIOMode = (int)mode; if (NewIOMode == 1) { Helper.SetBit(ref IOMode, portNo); } else if (NewIOMode == 0) { Helper.ClearBit(ref IOMode, portNo); } int RetCode = AC6651.SetIOMode(this.Handle, IOMode); if (RetCode != AC6651.Succeed) { throw Helper.NewCustomException("StringAC6651SetPortIOModeError"); } }
public PortIOMode GetPortIOMode(int portNo) { this.CheckPortNo(portNo); int IOMode = AC6651.GetIOMode(this.Handle); IOMode = (IOMode >> portNo) & 0x1; return((PortIOMode)IOMode); }