|
|
  |
STM32 внутренний RC генератор и USB, STM32F102 |
|
|
|
Oct 17 2011, 13:59
|
Частый гость
 
Группа: Участник
Сообщений: 127
Регистрация: 2-08-06
Пользователь №: 19 265

|
Цитата(skripach @ Oct 17 2011, 16:23)  RC или кварц на джиттер наверно не влияет, только на точность. Шаг подстройки генератора внутреннего генератора, работающего на частоте 8 мГц, подстраивается в пределах 40 кГц, т.е. на 48 мГц частоты USB теоретически точность составит +-120 кГц. Подстройку планирую делать по RTC.
|
|
|
|
|
Oct 18 2011, 09:09
|

Профессионал
    
Группа: Участник
Сообщений: 1 091
Регистрация: 25-07-07
Из: Саратов
Пользователь №: 29 357

|
Цитата(tolik_zp @ Oct 17 2011, 16:35)  Появилась идея использовать внутренний RC генератор для тактирования ядра и кварц 32 кГц для RTC. При этом необходимо использование USB Device в режиме low speed (в крайнем случае - full speed). Не проходит и месяца, чтобы у кого-то не появились такие идеи. Только я не могу понять - ЗАЧЕМ? Что вы хотите сэкономить? Кварц за 30 центов? Цитата(tolik_zp @ Oct 17 2011, 16:35)  Спецификация USB говорит о джиттере 1 нс для full speed и 10 нс для low speed. Возможна ли такая величина джиттера после PLL? Есть ли у кого-нибудь опыт реализации такой схемы? Какой нафиг джиттер? А точность RC-генератора вас не интересует?
|
|
|
|
|
Oct 18 2011, 09:23
|
Знающий
   
Группа: Свой
Сообщений: 549
Регистрация: 13-07-10
Из: Солнечногорск-7
Пользователь №: 58 414

|
Если не ошибаюсь, у USB требуется точность синхронизации 0,25%, а внутренний генератор может уползать очень сильно. В своё время в конторе проверяли на это дело АТмегу-162, так оказалось, что при сильных перепадах температур частота может уплыть на 10% и даже больше. Возможно, в АРМах с этим делом получше, но всё равно, думается, точность окажется недопустимо низкой.
Пы.Сы. Мы надеялись сэкономить не столько денежку (хотя при серийном производстве это уже не 30 центов), сколько место на плате. Однако в итоге отказались, поскольку нам требовалась точность порядка 1% при диапазоне температур от -20 до +40 градусов.
|
|
|
|
|
Oct 18 2011, 16:49
|
Частый гость
 
Группа: Участник
Сообщений: 127
Регистрация: 2-08-06
Пользователь №: 19 265

|
Цитата(SII @ Oct 18 2011, 12:23)  Если не ошибаюсь, у USB требуется точность синхронизации 0,25%, а внутренний генератор может уползать очень сильно. В своё время в конторе проверяли на это дело АТмегу-162, так оказалось, что при сильных перепадах температур частота может уплыть на 10% и даже больше. Возможно, в АРМах с этим делом получше, но всё равно, думается, точность окажется недопустимо низкой.
Пы.Сы. Мы надеялись сэкономить не столько денежку (хотя при серийном производстве это уже не 30 центов), сколько место на плате. Однако в итоге отказались, поскольку нам требовалась точность порядка 1% при диапазоне температур от -20 до +40 градусов. Дело, конечно же, в ограниченном количестве места на плате. В сети есть проекты переходников USB-UART на AVR, при этом одна из реализаций работает от внутреннего RC, калибруемого от сигнала SOF. Это и натолкнуло меня на такую авантюру, тем более в проекте часовой кварц обязателен. Скорость low speed должна находится в пределах 1.5 мегабит +-1.5% (15000 ppm). Калибруя генератор от RTC теоретически можно получить точность 0.25% (шаг калибровки 40 кГц, частота 8 мГц). Поправьте если что не так.
|
|
|
|
|
Oct 19 2011, 01:29
|
Знающий
   
Группа: Свой
Сообщений: 549
Регистрация: 13-07-10
Из: Солнечногорск-7
Пользователь №: 58 414

|
Хм... Ну, если с постоянным "подкручиванием" от часового кварца, то, возможно, сделать такое удастся, однако смущает слишком большой шаг калибровки. Был бы он раза в четыре меньше... Вероятно, время от времени будут возникать сбои, и передачу придётся повторять, хотя в основном вроде бы должно работать. В общем, если осилите, не забудьте поделиться радостью с другими (ну и опытом, конечно: вдруг кому когда понадобится)  И, кстати, неплохо было бы такое решение испытать при сильно разных температурах: посмотреть, насколько эффективно удастся подстраиваться и в каких пределах система окажется работоспособной.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|