|
![]() MCU User Forum
![]() Tx using the C8051F30x
|
| next newest topic | next oldest topic |
| Author | Topic: Tx using the C8051F30x |
|
DavidGMarcus New Member |
I am using the C8051F30x and I am trying to Transmit for right now a character "A" to the computer.(Basic I know) When using the SI labs dev board for the C8051F30x I set my baud rate to 9600 and the Character that I write out is the character I receive. However when I change the baud rate to 4800 the character that I write out is not what i receive. I receiver a U with 2 dots above it. I then compared the signals of the Character A from the computer a 4800 Baud to that of a character A coming out of the C8051F30x. They are the same signal except the one coming from the computer is much more compact.(Computer's A=4ms C8051F30x's A= 11ms) Why is my signal almost 3 times longer than the computers? Below is my intialiation for the UART after i define the Baud to be 4800: void UART0_Init (void)
TL1 = 0xFF; // Set Timer1 to overflow immediately IP: Logged |
|
erikm Member |
I then compared the signals of the Character A from the computer a 4800 Baud to that of a character A coming out of the C8051F30x. They are the same signal except the one coming from the computer is much more compact. the baudrate setting is wrong. 4800 baud ~ 480 chars ~ 20ms/char. Note that config, while excellent, is not error free, use the formula in the datasheet A better way is to constantly transmit uppercase U and measure the bit time. Erik [This message has been edited by erikm (edited July 28, 2010).] IP: Logged |
|
worknhard9062 Member |
4800 baud ~ 480 chars ~ 20ms/char. Of course you meant 2ms/char. ------------------ IP: Logged |
|
erikm Member |
ah, that basted decimal point, it often get me in trouble ![]() Erik IP: Logged |
All times are CT (US) | next newest topic | next oldest topic |
![]() |
|
Have you seen our MCU Knowledge Base?