Jump to content

    

Внутренний низкочастотный генератор.

Recommended Posts

Herz

Встречаю в составе МК (по крайней мере, свежих серий) два вида внутреннего тактирования: от высокочастотного генератора (до десятков МГц) или от низкочастотного.

И вот последний иногда на частоту 128 кГц (например, у Атмел), а иногда на 31 кГц (как у ПИКов). Интересно, откуда взяты такие значения? Ну, 128 мне ещё понятно.

А в чём смысл значения 31 кГц, есть мнения?

Share this post


Link to post
Share on other sites

Arlleex

ИМХО, делают что-то близкое к 32.768 кГц, чтобы уметь получать секунды и миллисекунды.

Если встроенные делители позволяют делить не на степени 2, то частота генератора не обязана быть 32.768 кГц.

Share this post


Link to post
Share on other sites

Herz

Да нет, встречается даже и то, и другое. Внешний генератор на 32.768 и внутренний на 31. При этом ещё и RTCC, как в PIC16F19156.

Нет, думаю, дело не в этом. Во-первых, могли сразу 32.768 заложить, разницы никакой. Во-вторых, для часов это всё равно слишком неточно.

Share this post


Link to post
Share on other sites

3 часа назад, Herz сказал:

Во-первых, могли сразу 32.768 заложить, разницы никакой

Во-первых, кто бы тогда покупал кварцы на 32768? :blum3:

Может это значение дается для некоей абстрактной температуры в вакууме, а при +25 оно как раз где-то 32768?

Может чтобы вы могли легко сделать программную коррекцию своих якобы часов, пропуская несколько тиков таймера при каждом  переполнении - это проще, чем при каждом переполнении добавлять несколько тиков.

Share this post


Link to post
Share on other sites

Herz
13 минут назад, Сергей Борщ сказал:

Может это значение дается для некоей абстрактной температуры в вакууме, а при +25 оно как раз где-то 32768?

На самом деле там, оказывается, 31.25кГц, и с делителем 1:15625 можно получить пол-секундный клок для тактирования часов.

Или использовать генератор на 32.768 с делителем 1:16384, для тех же 500мс. Ума не приложу, зачем такой вывих:

 

image.thumb.png.7fba5f87da1ed3226bcab0174b6d9522.png

Share this post


Link to post
Share on other sites

Arlleex

Судя по картинке, 31.25 кГц - это не частота генератора, а уже поделенная на 16. А вот MFINTOSC, получается, 500 кГц, что уже более ровная цифра.

Share this post


Link to post
Share on other sites

Herz

Да там вообще всё как-то запутано. Вот картинка из того же даташита:

 

image.thumb.png.4df8ccc1bbf1bb3728b3721f82c561a9.png

И пояснение:

Цитата

9.2 Clock Source Types
Clock sources can be classified as external or internal.
External clock sources rely on external circuitry for the clock source to function. Examples are: oscillator modules (ECH, ECM, ECL mode).
Internal clock sources are contained within the oscillator module. The internal oscillator block has two internal oscillators and a dedicated Phase Lock Loop (PLL) that are used to generate internal system clock sources.

The High-Frequency Internal Oscillator (HFINTOSC) can produce a range from 1 to 32 MHz.
The Low-Frequency Internal Oscillator (LFINTOSC) generates a 31 kHz frequency. The external oscillator block can also be used with the PLL.
The system clock can be selected between external or internal clock sources via the NOSC bits in the OSCCON1 register.

Цитата

The internal oscillator block has two independent oscillators that can produce two internal system clock sources.
1. The HFINTOSC (High-Frequency Internal Oscillator) is factory calibrated and operates up to 32 MHz. The frequency of HFINTOSC can be
selected through the OSCFRQ Frequency Selection register, and fine-tuning can be done via the OSCTUNE register.
2. The LFINTOSC (Low-Frequency Internal Oscillator) is factory-calibrated and operates at 31 kHz.

Кажется, всё ясно. Два внутренних генератора: высокочастотный и низкочастотный. Но. Откуда взялся MFINTOSC (Medium frequency internal oscillator?) и какова его его реальная частота (500кГц?) - загадка.

Можно было бы предположить (совсем с потолка), что MFINTOSC - это какой-то промежуточный режим высокочастотного генератора. Но нет, там частоты начинаются с 1МГц. Странно это.

Share this post


Link to post
Share on other sites

Plain
15 часов назад, Herz сказал:

в чём смысл значения 31 кГц

Очевидно потому, что работа, читай потребление, на часовом кварце большинство потребителей устраивает, т.е. существенно больше или меньше значение породило бы вопросы.

Share this post


Link to post
Share on other sites

Herz

В том-то и дело, что нет видимого резона отклоняться от "часовой" частоты. Но что за "магическое" число 31 - пока не понимаю.

Share this post


Link to post
Share on other sites

Plain

Ну оно у Microchip, во-первых, 31 кГц ±15%, а во-вторых, наверное технологичнее — смаштабировали резистор генератора в N раз.

Edited by Plain

Share this post


Link to post
Share on other sites

Herz
1 час назад, Plain сказал:

Ну оно у Microchip, во-первых, 31 кГц ±15%,

Я не видел, где говорится о таком разбросе. В паспорте конкретных цифр, почему-то, нет, но сказано:

Цитата

The Low-Frequency Internal Oscillator (LFINTOSC) is a factory calibrated 31 kHz internal clock source.

Вряд ли ±15% можно отнести к результату калибровки.

Зато ещё одна загадка в даташите на это семейство (PIC16(L)F19155/56/75/76/85/86):

image.thumb.png.fb7bfd9202df0316083b7281d7fa77ca.png

 

Как видим, здесь ещё приводится частота некоего внутреннего генератора MFINTOSC, который в тексте не упоминается ни словом.

Share this post


Link to post
Share on other sites

Plain

Среднечастотный генератор там немало где упоминается, для WDT и TMR0, например. Погрешность низкочастотного в 15% была в бумагах на другие МК, а здесь они очевидно решили больше не пугать народ абсолютной честностью и нарисовали лишь типовую на графиках Рис.40-33, 40-34.

Share this post


Link to post
Share on other sites

Abrams
53 minutes ago, Plain said:

Среднечастотный генератор там немало где упоминается, для WDT и TMR0, например. Погрешность низкочастотного в 15% была в бумагах на другие МК, а здесь они очевидно решили больше не пугать народ абсолютной честностью и нарисовали лишь типовую на графиках Рис.40-33, 40-34.

Не пугайте людей про 15%, такого разброса нет:

image.thumb.png.8c89d1090d7887e7ff2adbd1088b2519.png

Share this post


Link to post
Share on other sites

Herz
2 минуты назад, Abrams сказал:

такого разброса нет:

Как нет и вообще никакого, именно для LFINTOSC 31кГц, что настораживает.

1 час назад, Plain сказал:

Среднечастотный генератор там немало где упоминается, для WDT и TMR0, например.

Такое впечатление, что это артефакты от какого-то другого документа. А в разделе OSCILLATOR MODULE (где он в первую очередь должен быть явно) не упоминается совсем. Как и на картинке из того же раздела, которую я приводил выше.

 

Share this post


Link to post
Share on other sites

Plain

Вот у PIC10F320 нашёлся рекорд ±25%, но такому клопу позволительно, а в относительно новом PIC18F04Q40, там немало переделали, получили уже ±10%.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.