/* Selects the driving current of specified GPIO pin(s). 
The pin(s) are specified using a bit-packed byte, where each bit that is set identifies the pin to be accessed, and where bit 0 of the byte represents GPIO port pin 0, bit 1 represents GPIO port pin 1, and so on. */
void GPIOPadConfigSet(unsigned long ulPort, unsigned long ulPins, unsigned long ulStrength)
/* Selects the driving current of specified GPIO pin(s). 
The pin(s) are specified using a bit-packed byte, where each bit that is set identifies the pin to be accessed, and where bit 0 of the byte represents GPIO port pin 0, bit 1 represents GPIO port pin 1, and so on. */
void GPIOPadConfigSet(unsigned long ulPort, unsigned long ulPins, unsigned long ulStrength)
{
    unsigned long ulPortBase;
	unsigned long ulBit;
    xASSERT(GPIOBaseValid(ulPort));
	ulPortBase = GPIOToPortGet(ulPort);
    for(ulBit = 0; ulBit < 32; ulBit++)
    {
        if(((ulPins >> ulBit) & 1) != 0)
        {
            xHWREG(ulPortBase + PORT_PCR + ulBit * 4) &= ~PORT_PCR_DSE_HIGH ;
            xHWREG(ulPortBase + PORT_PCR + ulBit * 4) |= ulStrength ;
        }
    }
}