From: CBFalconer on
rickman wrote:
>
.... snip ...
>
> And the R/C oscillator is only useful in a small percentage of
> applications where you don't need any more timing precision than
> what is required to run a UART, and just barely that!

A UART needs much better precision (and stability) than you can
expect from any r/c oscillator.

--
Some informative links:
<news:news.announce.newusers
<http://www.geocities.com/nnqweb/>
<http://www.catb.org/~esr/faqs/smart-questions.html>
<http://www.caliburn.nl/topposting.html>
<http://www.netmeister.org/news/learn2quote.html>
<http://cfaj.freeshell.org/google/>


From: Isaac Bosompem on

CBFalconer wrote:
> rickman wrote:
> >
> ... snip ...
> >
> > And the R/C oscillator is only useful in a small percentage of
> > applications where you don't need any more timing precision than
> > what is required to run a UART, and just barely that!
>
> A UART needs much better precision (and stability) than you can
> expect from any r/c oscillator.
>
> --
> Some informative links:
> <news:news.announce.newusers
> <http://www.geocities.com/nnqweb/>
> <http://www.catb.org/~esr/faqs/smart-questions.html>
> <http://www.caliburn.nl/topposting.html>
> <http://www.netmeister.org/news/learn2quote.html>
> <http://cfaj.freeshell.org/google/>

Yes, from what I've read you only got an error margin of 1 or 2%. Not
too big if you ask me.
(I got this from the Intersil 82C52 datasheet).
-Isaac

From: Terran Melconian on
On 2006-10-05, Isaac Bosompem <x86asm(a)gmail.com> wrote:
>
> CBFalconer wrote:
>
>> A UART needs much better precision (and stability) than you can
>> expect from any r/c oscillator.
>
> Yes, from what I've read you only got an error margin of 1 or 2%. Not
> too big if you ask me.

Assume a byte is 10 bits long (one start, one stop, no parity). If we
sample the bits in the middle of where we think they are, then by the
end of the byte we can be off by just under half a bit and still read
correctly. This looks like about 5% to me.

I wonder how exactly they arrive at 1% or 2%; do you know?

I've used the internal oscillator on an AVR and it usually worked
(except when it didn't, of course); good enough if it was only to be
used for debugging and turned off in the final product.
From: John Temples on
On 2006-10-05, Terran Melconian <te_rem_ra_ove_an_forspam(a)consistent.org> wrote:
> On 2006-10-05, Isaac Bosompem <x86asm(a)gmail.com> wrote:
>>
>> CBFalconer wrote:
>>
>>> A UART needs much better precision (and stability) than you can
>>> expect from any r/c oscillator.
>>
>> Yes, from what I've read you only got an error margin of 1 or 2%. Not
>> too big if you ask me.
>
> I wonder how exactly they arrive at 1% or 2%; do you know?

Search for Dallas/Maxim's app note 2141, "Determining Clock Accuracy
Requirements for UART Communications"

--
John W. Temples, III
From: Isaac Bosompem on

Terran Melconian wrote:
> On 2006-10-05, Isaac Bosompem <x86asm(a)gmail.com> wrote:
> >
> > CBFalconer wrote:
> >
> >> A UART needs much better precision (and stability) than you can
> >> expect from any r/c oscillator.
> >
> > Yes, from what I've read you only got an error margin of 1 or 2%. Not
> > too big if you ask me.
>
> Assume a byte is 10 bits long (one start, one stop, no parity). If we
> sample the bits in the middle of where we think they are, then by the
> end of the byte we can be off by just under half a bit and still read
> correctly. This looks like about 5% to me.
>
> I wonder how exactly they arrive at 1% or 2%; do you know?
>
> I've used the internal oscillator on an AVR and it usually worked
> (except when it didn't, of course); good enough if it was only to be
> used for debugging and turned off in the final product.

Here is the aforementioned document:
http://www.maxim-ic.com/appnotes.cfm/appnote_number/2141/

You are actually pretty close. I guess Intersil put in conservative
numbers. Under less than harsh settings you get 3.3% according to the
document.

-Isaac