Data & asynchronous transmission to use in wireless communications

  1. But, analysing the signal through oscilloscope i realized that although the frequency was 250kHz the duty-cycle was not always perfect which could be a lot of trouble on the receiver.

Show us the scope output so we know what you're talking about. You have to get very clear what you're trying to achieve and what constraints you have. In frequencies above 100kHz you have to take care about the timing of individual statements. To have a balanced output of 0s and 1s you may have to insert calculations on one side just to use an equal amount of time as the other side.

You seem to have modified the library quite heavily. To enable us to reproduce your setup you have to show us all the code you're using, else we always talk about different things.