Baudrate change after programming cable removed

Hi All,

I have written an application that uses the RS232 library to send and receive data on serial port E at 115200 baud.

The application worked fine whilst I still had the programming cable attached to the Rabbit 3000 module.
When I disconnect this programming cable however, the baudrate of the serial port drops quite dramatically. Normally, I sent about 30 bytes in less than 5 ms.
Without the cable, sending this data took about 4 seconds and the receiving sided showed null characted being transmitted.

I then look at serEopen and saw it was using the value of freq_divider to calculated the baudrate setting.
I modified the code to give me this value when the cable was attached and then put a statement in to set the value to the same. Thereafter it worked again.

Somehow, the bios did not set the value of freq_divider by itself when the cable is not attached.

Does anybody know why and how to change the coded so that the bios will do it.

Note that I am using Dynamic C version 8.03

Thanks

Hello,
My user name is engineer101.
I am curious about your problem, as I have a similar problem with my C code sending out data on the serial port, E port.

When I plug the PROG cable connector into the RCM4300-BL4S200 board set, [the connector is on the RCM4300], then the code works fine and the data gets sent out at 1900 baud, 8 data bits, 1 stop bit, no parity, no flow control.

However, when I unplug the PROG cable connector from the RCM4300 board then my code does not work correctly and I get ‘zeroes’ at the remote computer where I am inserting this ‘sent data’ into a spreadsheet, for my customer.

This is my problem but I am wondering if I should look at the ‘freq_divider’ – as a possible way to lead into a solution to my problem.

Thanks for your post as it suggested to me – that your mention of the ‘freq_divider’ my be a good clue to solve my problem.
Thank you from ‘enginee101’. 11-01-2010