It is difficult and limiting to implement pure software UART in c. With the hardware compare/capture channel of the timer module in MSP430, implementing a timer-cc assisted software UART is quite simple (but still somewhat limited). MSP430F2111 has a TimerA with three cc channels. One can use them to implement either three half-duplex-UARTs or one full-duplex- and one half-duplex-UART.
By the way, I have the impression that you have been asking about exactly the same thing for the past three months. You wrote dozens of posts and started half a dozen threads here alone. I admire your determination and perseverance. But I think you are taking the wrong approach and will not get anywhere.
I think you have a not well-defined and ill-conceived objective. You keep asking others to give you sample code or guidance of coding an undefined program. With the energy you spent on such fruitless efforts, you could have learned a lot about basics of how to plan and write programs.