Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

MCP79410 — много бърза.
http://mcu-bg.com/mcu_site/viewtopic.php?f=2&t=8547
Страница 1 от 2

Автор:  Reader [ Вто Фев 15, 2011 9:28 am ]
Заглавие:  MCP79410 — много бърза.

Здравейте!

Експериментирам с „новия“ часовник на Microchip MCP79410, но по никакъв начин не мога да го накарам да работи нормално — непрекъснато избързва. Опитах два различни модела кварцове и три набора кондензатори — без успех. Избързването се движи между +2 и +30 сек. за 16 часа.
С честотомер (не особено добър, но по мои изчисления прави отклонение от 1 Hz в този диапазон) измерих следните стойностите на извода MFP при настройка на RSx в 011:
— при 4,7 pF: 32770 Hz
— при 10 pF: 32766 Hz
— при 15 pF: 32765 Hz
Независимо от тези измерени стойности, часовникът избързва упорито. За съжаление, нямам представа какъв е точният модел на кварцовете, но същите работят прекрасно на DS1340.
Някакви идеи?

Благодаря предварително.

Автор:  mountaineer [ Вто Фев 15, 2011 9:37 am ]
Заглавие: 

Как ти е опроводена платката? Кварцът трябва да е близо до чипа, пистите да са къси и около тях да няма други писти, само маса.

Автор:  Reader [ Вто Фев 15, 2011 9:47 am ]
Заглавие: 

Така си е. Не е това. :(

И пак за кварцовете — същите работят прекрасно, когато са закачени като вторичен осцилатор на PIC24F16KAxxx, който да управлява вградения RTCC. Само MCP79410 не мога да подкарам…

Автор:  bateAz [ Вто Фев 15, 2011 10:35 am ]
Заглавие: 

Имаш ли керамичен кондензатор на захранването близо до чипа ?
Опитай с подаване на честота 32768 Hz от външен осцилатор.
Не го познавам добре този чип, да не би да има софтуерна компенсация на отклонението на кварца ?

Изобщо, идеи да търсиш ...

Автор:  Reader [ Вто Фев 15, 2011 11:10 am ]
Заглавие: 

bateAz написа:
Имаш ли керамичен кондензатор на захранването близо до чипа ?
Има. Всичко си е по учебник.
bateAz написа:
Опитай с подаване на честота 32768 Hz от външен осцилатор.
Виж, това е добра идея, но няма откъде да взема еталонна честота. А да използвам генератори със съмнителна точност… какво ще постигна?
bateAz написа:
Не го познавам добре този чип, да не би да има софтуерна компенсация на отклонението на кварца ?
Има, но диапазонът на корекциите не са сравними с текущото му отклонение.
bateAz написа:
Изобщо, идеи да търсиш ...
Търся… Работил съм с DS1302, DS1340, вградения RTCC на PIC24, но за първи път наблюдавам подобен ефект и затова съм в шах.

Автор:  ДедоБоре [ Вто Фев 15, 2011 11:33 am ]
Заглавие: 

и аз не познавам чипа.
какво ти пречи да извадиш на MFP пина 1Hz и да калибрираш през Calibration register?
+127..+127ppm е напълно достатъчно за прецизна калибрация.

Reader написа:
... но няма откъде да взема еталонна честота...

поне честотомер нямаш ли? казваш, че този кварц работи с други чипове точно. ами значи имаш еталонна честота 8)

айде, да нямаш корелационен ананлизатор е нормално. ама
без никакви уреди се работи трудно.

Автор:  Reader [ Вто Фев 15, 2011 11:47 am ]
Заглавие: 

При сегашните ми експерименти часовникът избързва с около секунда на два часа, което прави (ако не бъркам сметките) около 138 ppm.

Не разбрах с какво ще ми помогне експериментът с външната честота. Да кажем, че часовникът тръгне нормално — и какво от това?

Автор:  CarBeta [ Вто Фев 15, 2011 11:55 am ]
Заглавие: 

Преди време имах подобен проблем с часовник. Моя бягаше с 2min. за 24h. Реших си проблема с тример кондензатор 5-30pf на CLOCKIN.

Автор:  ДедоБоре [ Вто Фев 15, 2011 12:07 pm ]
Заглавие: 

ъъъъъ?! никога ли не сте калибрирали каквото и да е?
за да настроиш нещо почестота, трябва да имаш еталон.
за да настроиш волтметър - трябва за имаш еталон за 1волт (примерно)
за да премериш дължина - трябва да имаш точен метър.
и т.н.
часовник да се калибрира с часовник е като да мериш софия-пловдив с кибритена клечка.

слагаш кварц без корекции/капацитети, както е по дейташита.
вадиш на MFP пина 32768kHz.
мериш с честотомер.
в регистъра за калибрация пишеш съответната стойност докато го нагодиш на 32768.
ако не стане - хвърляш чипа/забравяш за него
ако честотата е 32768, а часовника пак бърка - ако не стане - хвърляш чипа/забравяш за него

едит:
сега погледнах - с калибриращия регистър се махат цели цикли, а не се коригира генератора.
значи трябва да се извади 1Hz и да се мери/сравнява с друг 1Hz. което също се прави лесно с честотомер/брояч

има много видове неточности, но не се мерят лесно.
а и няма смисъл

Автор:  Reader [ Вто Фев 15, 2011 2:59 pm ]
Заглавие: 

ДедоБоре, ситуацията ми е точно като в случая „ако честотата е 32768, а часовника пак бърка - ако не стане - хвърляш чипа/забравяш за него“, с тази разлика, че не мога да си позволя просто да изхвърля чипа. Това, че се случва за първи път с подобно устройство, ме навежда на мисълта, че аз бъркам някъде, просто вече не знаех къде.
А за кондензаторите — те са си по спецификация; вероятно по аналогия с другите генератори на Microchip. За разлика от часовниците на Dallas.

Да обобщя:
При настройка на тестовия изход на 32768 Hz измерих около 32766 Hz (с номинални кондензатори от 10 pF).
При настройка на тестовия изход на 8192 Hz измерих около 8194 Hz (!!!)
Няма видимо влияние на калибрационния регистър върху изходната честота. На едно място в документацията се казва, че корекцията (добавяне/вадене на цикли) се прави веднъж на минута, на друго — че се прави на всеки 60 цикъла. Най-вероятно честотомерът ми не улавя подобни разлики.

Оказа се, че тестовата честота 32768 се взема от входния генератор, без корекция, а 8192 и другите са с корекция. Обаче това не обяснява защо при зададена корекция 0 входната честота е под, а изходната — над номинала.
Накрая, в пристъп на мрачно вдъхновение, забраних четенето на часовника от микропроцесора и тестовата честота падна от 8194 на 8191 Hz! Очевидно резултатът от +2 сек/16 часа, за който споменах в първото съобщение, е бил получен при изключено устройство, докато е работил на батерия. Нямам представа защо, но очевидно честото разпитване на часовника предизвиква избързването му.
В момента съм запуснал дългосрочен експеримент, за да проверя отклонението на часовника за по-дълъг период от време.

Благодаря на всички за отзивчивостта!

Автор:  ДедоБоре [ Вто Фев 15, 2011 3:49 pm ]
Заглавие: 

въй #-o
ето заради такива щуротии избягвам майкрочипски чипове.
за да имаш точно време трябва да храниш кокошките навреме. http://www.veselaferma.com

Автор:  741 [ Вто Фев 15, 2011 4:08 pm ]
Заглавие: 

Reader написа:
Накрая, в пристъп на мрачно вдъхновение, забраних четенето на часовника от микропроцесора и тестовата честота падна от 8194 на 8191 Hz!

Прилича на зашумено захранване и кофти опроводяване на чипа, по-скоро второто.
Можеш ли да дадеш снимка, на която да личат пистите?

Автор:  Reader [ Вто Фев 15, 2011 4:11 pm ]
Заглавие: 

Съжалявам, в момента не мога. Но ще го имам предвид като насока за следващата проверка, благодаря.

Автор:  Reader [ Сря Фев 16, 2011 12:36 pm ]
Заглавие: 

Още едно гребло, което може да настъпите:
Въпреки че в документацията е казано, че отрицателната кореция вади импулси, а положителната добавя, на практика отрицателната корекция предизвиква увеличаване на вътрешния брояч със зададената стойност, а положителната предизвиква пауза в увеличаването на брояча. Така отрицателната корекция забързва часовника, а положителната го забавя.
Освен това — според мен във Verilog-модела на този часовник (публикуван в сайта на Microchip) има грешка, заради която е невъзможно да предизвикаш забавяне на часовника чрез регистъра за корекция. Не знам доколко този модел отразява действителното положение на нещата, а и аз не съм чак толкова „в час“ с Verilog, така че ще помоля някой да хвърли едно око на секции 1.02 и 1.03 от модела. Според мен присвояването на ред 462 трябва да се извършва само ако корекцията е отрицателна.

Автор:  ДедоБоре [ Чет Фев 17, 2011 12:10 am ]
Заглавие: 

имаш ли някоя готова платчица да го премеря?

Страница 1 от 2 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/