Muchos de los pines de tu microcontrolador tienen diferentes funciones. El 'normal' de la función haría referencia a GPIO, General purpose Input/Output. En ese caso, puede utilizar estos pines directamente por escribir y leer de los registros correspondientes.
'Suplente' funciones se refieren a otras funciones, que pueden incluir I2C, SPI, USART, CCP, PWM, Reloj, ADC, etc... con el control de los pines cuando en una función alternativa depende de la periférica, pero en general se reduce a la escritura y lectura de registros de función especial (SFR); el periférico se encarga del resto.
Que la función es estándar después de un RESET depende (es que no siempre GPIO!), y que usted puede encontrar en la correspondiente hoja de datos. La mayoría de las veces, usted puede seleccionar la función que desea utilizar en la marcha, así que usted puede cambiar entre los periféricos.
Mediante el uso de un pin para varios dispositivos periféricos, usted puede hacer los microcontroladores con muy características. Sin embargo, debido a que la mayoría del tiempo, quiere que los periféricos de que el pin todo el tiempo (y no quiere cambiar de funciones on-the-fly) no puede usar todos los periféricos en un solo programa, o al menos no al mismo tiempo. Por otro lado, que en realidad no necesita a menudo de todos modos.
Como Connor señala, 'función alternativa' se puede referir a algo así, en un contexto ligeramente distinto: aquí no se trata de cuál es la función de poner en un alfiler, pero sobre lo de los pines se utiliza para una función. Esto se denomina Periféricos Pin Seleccione, y básicamente significa que usted puede elegir el pin de tu visión periférica está utilizando. Usted podría, por ejemplo, hacer RS232 sobre RA1 y RA2 o más de RB1 y RB2.
Ver Connor respuesta para una descripción más detallada (y upvote él para esto).