Asus AAEON GENE-SKU6 User Manual page 128

3.5” subcompact board
Hide thumbs Also See for AAEON GENE-SKU6:
Table of Contents

Advertisement

// Input :
//
Example, Set Digital I/O Pin 2 to high level
AaeonSetOutputLevel(Pin2Bit, PinHigh);
}
**************************************************************************
**************************************************************************
Boolean AaeonReadPinStatus(byte PinBit){
Boolean PinStatus ;
PinStatus = SIOBitRead(DIOLDN, StatusReg, PinBit);
Return PinStatus ;
}
VOID AaeonSetOutputLevel(byte PinBit, byte Value){
ConfigDioMode(PinBit, OutputPin);
SIOBitSet(DIOLDN, OutputReg, PinBit, Value);
}
********************************************************************************
********************************************************************************VOID
SIOEnterMBPnPMode(){
IOWriteByte(SIOIndex, 0x87);
IOWriteByte(SIOIndex, 0x87);
}
VOID SIOExitMBPnPMode(){
IOWriteByte(SIOIndex, 0xAA);
}
VOID SIOSelectLDN(byte LDN){
IOWriteByte(SIOIndex, 0x07);
IOWriteByte(SIOData, LDN);
}
VOID SIOBitSet(byte LDN, byte Register, byte BitNum, byte Value){
Byte TmpValue;
SIOEnterMBPnPMode();
SIOSelectLDN(LDN);
IOWriteByte(SIOIndex, Register);
TmpValue = IOReadByte(SIOData);
TmpValue &= ~(1 << BitNum);
TmpValue |= (Value << BitNum);
Appendix D – Digital I/O Ports
// SIO LDN Register Offset = 0x07
114

Advertisement

Table of Contents
loading

Table of Contents