<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://community.arm.com/utility/feedstylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>C51: Problem with serial communication</title><link>https://community.arm.com/developer/tools-software/tools/f/keil-forum/40662/c51-problem-with-serial-communication</link><description> 
Hello! 
I am trying to establish serial communication between the PC and the
AT89C5131 at a baudrate of 9600. The microcontroller has a clock
frequency of 16 MHz. According to the baud rate calculator by Keil,
0xFC is the value to be loaded into the</description><dc:language>en-US</dc:language><generator>Telligent Community 10</generator><item><title>RE: C51: Problem with serial communication</title><link>https://community.arm.com/thread/93228?ContentTypeID=1</link><pubDate>Fri, 25 Jul 2014 09:43:49 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:0905e507-7fb3-4162-8126-84f6b75de3ac</guid><dc:creator>&amp;#178;erik malund</dc:creator><description>&lt;p&gt;&lt;p&gt;
&lt;i&gt;But the Keil 8051 Baud Rate Calculator .... only covers the use
of the standard 8051&amp;#39;s Timer1 and Timer2. It doesn&amp;#39;t cover any &amp;quot;BRL
register&amp;quot;&lt;/i&gt;&lt;/p&gt;

&lt;p&gt;
but, since all UART comms are divided from the crystal freq, it
can still be used with some care.&lt;/p&gt;
&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: C51: Problem with serial communication</title><link>https://community.arm.com/thread/107818?ContentTypeID=1</link><pubDate>Fri, 25 Jul 2014 00:53:51 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:5fe69b69-62b2-4499-9f7d-3727d6a5a57c</guid><dc:creator>lcd user</dc:creator><description>&lt;p&gt;&lt;p&gt;
&lt;i&gt;It&amp;#39;s a part of the Internal Baud rate generator in the
8051&lt;/i&gt;&lt;/p&gt;

&lt;p&gt;
That register might be in the ATMEL part, but it&amp;#39;s not a
&lt;i&gt;standard&lt;/i&gt; 8051 SFR.&lt;/p&gt;
&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: C51: Problem with serial communication</title><link>https://community.arm.com/thread/118516?ContentTypeID=1</link><pubDate>Thu, 24 Jul 2014 22:46:47 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:703e9555-78e4-4a78-a4f5-d847d4e451fc</guid><dc:creator>Westonsupermare Pier</dc:creator><description>&lt;p&gt;&lt;p&gt;
I think he understands that, but what baud rate do you end up
generating, and what&amp;#39;s the percentage of error compared to the
desired frequency? Can that be improved by using a different
crystal?&lt;/p&gt;
&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: C51: Problem with serial communication</title><link>https://community.arm.com/thread/82039?ContentTypeID=1</link><pubDate>Thu, 24 Jul 2014 21:38:48 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:058f5ea2-6f6c-4f3a-aabf-2fbf8889fb96</guid><dc:creator>Deeksha Yogish</dc:creator><description>&lt;p&gt;&lt;p&gt;
&lt;i&gt;But the Keil 8051 Baud Rate Calculator - &lt;a href="http://www.keil.com/c51/baudrate.asp"&gt;http://www.keil.com/c51/baudrate.asp&lt;/a&gt;
- only covers the use of the standard 8051&amp;#39;s Timer1 and Timer2. It
doesn&amp;#39;t cover any &amp;quot;BRL register&amp;quot;&lt;/i&gt;&lt;/p&gt;

&lt;p&gt;
The BRL register is the Baud rate Reload register, it is an 8-bit
register used exclusively for Baud rate generation and works as an
8-bit autoreload timer. It&amp;#39;s a part of the Internal Baud rate
generator in the 8051.&lt;/p&gt;

&lt;p&gt;
&lt;a href="http://www.atmel.in/Images/doc4338.pdf"&gt;www.atmel.in/.../doc4338.pdf&lt;/a&gt;&lt;/p&gt;
&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: C51: Problem with serial communication</title><link>https://community.arm.com/thread/107817?ContentTypeID=1</link><pubDate>Thu, 24 Jul 2014 21:28:17 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:042e75a7-9967-47d6-a60c-74f99f414a11</guid><dc:creator>Deeksha Yogish</dc:creator><description>&lt;p&gt;&lt;p&gt;
&lt;i&gt;Or an even better solution. Since this thread is tagged as an
ARM thread - consider selecting a suitable ARM processor and enjoy
big nice 32-bit prescale + baudrate + fractional + PLL + peripherial
clocking registers and mix and match crystal frequencies, core
frequencies, peripherial frequencies, baudrates as needed.&lt;/i&gt;&lt;/p&gt;

&lt;p&gt;
Unfortunately, I don&amp;#39;t have a choice in the controller that I&amp;#39;m
using. But the controller I&amp;#39;m using the &amp;quot;AT89C5131A-L&amp;quot; allows me to
change my crystal frequency.&lt;/p&gt;
&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: C51: Problem with serial communication</title><link>https://community.arm.com/thread/82042?ContentTypeID=1</link><pubDate>Thu, 24 Jul 2014 21:19:27 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:fd636668-6969-4309-b2cd-6d0c6f838a41</guid><dc:creator>Deeksha Yogish</dc:creator><description>&lt;p&gt;&lt;p&gt;
Thank you, I think this is what I&amp;#39;m going to do.&lt;/p&gt;
&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: C51: Problem with serial communication</title><link>https://community.arm.com/thread/68813?ContentTypeID=1</link><pubDate>Thu, 24 Jul 2014 10:58:33 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:bbe9830c-69bc-48af-906f-ebcf2f2e405a</guid><dc:creator>Andy Neil</dc:creator><description>&lt;p&gt;&lt;p&gt;
&lt;i&gt;&amp;quot;According to the baud rate calculator by Keil, 0xFC is the
value to be loaded into the BRL register&amp;quot;&lt;/i&gt;&lt;/p&gt;

&lt;p&gt;
But the Keil 8051 Baud Rate Calculator - &lt;a href="http://www.keil.com/c51/baudrate.asp"&gt;http://www.keil.com/c51/baudrate.asp&lt;/a&gt;
- only covers the use of the standard 8051&amp;#39;s &lt;b&gt;Timer1&lt;/b&gt; and
&lt;b&gt;Timer2&lt;/b&gt;. It doesn&amp;#39;t cover any &amp;quot;BRL register&amp;quot;&lt;/p&gt;

&lt;p&gt;
&lt;a href="http://www.8052.com/tutser.phtml"&gt;www.8052.com/tutser.phtml&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;
So what do you mean &lt;b&gt;?&lt;/b&gt;&lt;/p&gt;
&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: C51: Problem with serial communication</title><link>https://community.arm.com/thread/93234?ContentTypeID=1</link><pubDate>Thu, 24 Jul 2014 07:53:45 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:610b7477-0cc5-4199-b1b8-d0d2dff9a06c</guid><dc:creator>ImPer Westermark</dc:creator><description>&lt;p&gt;&lt;p&gt;
Or an even better solution. Since this thread is tagged as an ARM
thread - consider selecting a suitable ARM processor and enjoy big
nice 32-bit prescale + baudrate + fractional + PLL + peripherial
clocking registers and mix and match crystal frequencies, core
frequencies, peripherial frequencies, baudrates as needed.&lt;/p&gt;
&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: C51: Problem with serial communication</title><link>https://community.arm.com/thread/63006?ContentTypeID=1</link><pubDate>Thu, 24 Jul 2014 06:30:59 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:9404ae75-8f8e-483e-b223-2981e294df9d</guid><dc:creator>&amp;#178;erik malund</dc:creator><description>&lt;p&gt;&lt;p&gt;
&lt;i&gt;please help me figure out if there is any other way to ensure
the transmission and reception does not involve unwanted data&lt;/i&gt;&lt;/p&gt;

&lt;p&gt;
use a &amp;quot;baudrate crystal&amp;quot; e.g. 11.0592MHz&lt;/p&gt;
&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>