Excelente información KILLERJC.
De hecho las rutnias se pueden mejorar usando la función "__delay()" en lugar de la función "__delay_us()". Esto debido a que si se requiere configurar diferentes baudrates con mayor precisión, la fórmula para OneBitDelay sería Fosc/(4*Baudrate). De esa manera si quisieramos el baud rate de 115200 y usáramos un oscilador de 12MHz, entonces OneBitDelay = 12000000/(4*115200) = 26. Que en realidad obtendríamos un Baud rate de 115500 bps, teniendo un error del 0.26% lo que es bastante bueno. Recordemos que para el RS-232 la tolerancia es de hasta el 3%.
saludos EV y espero que esto te ayude aún más con tu proyecto.
elreypic.