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

PIC18F452+32.768 - Часовников Проблем :-)
http://mcu-bg.com/mcu_site/viewtopic.php?f=2&t=6959
Страница 1 от 4

Автор:  me40 [ Пон Юли 06, 2009 6:07 pm ]
Заглавие:  PIC18F452+32.768 - Часовников Проблем :-)

Направих си часовник с PIC18F452 и външен кварц 32.768 (вероятно китайски). Някой ще кажe защо с PIC18F452......не е толкова от значение спрямо проблема , който забелязах, а той е:

На 13 и 14 кр. съм свързал основният кварц (използвам телевизионен 4.43mhz)
На 15 и 16 (T1OSI и T1OSO) съм свързал 32.768к .

В момента немога да кача софта, но в общи линии е елементарен, а се получава голяма грешка
Пускам таимер 1 да брои от 8000 до FFFF, което би трябвало да е 1 сек.
Конфигуриран е :
всички битове нула, а бит3,2,1 и нула са в еденица !!!!
През това време на дисплей изписвам текущата стойност, което става мн. по бързо от 1 сек и чакам да се вдигне флага за препълване на таймера. Веднага зареждам с 8000, смъквам флага, изписвам на дисплея и отново чакам да се вдигне флага за препълване.
Получавам около 5 секунди на час грешка (избързване), което е страшно много. Използвал съм 33pf, кондензатори към маса от кварца. Питането ми е дали е възможно от стойността на кондензаторите да регулирам толкова голяма грешка?Вчера реших да коригирам грешката софтуерно и с груби сметки , като броя не от 8000, а от 7FC5 се получи доста добър резултат на 3-4 часа разликата е секунда (пак е недостатъчно )
По-големият проблем е че , когато захраня пика с батерия часовника започва да изостава спрямо захранване от IC7805 и таймер от 7FC5. Е това ме разби !!!!!! Довечера ще прбвам без софтуерната корекция и батерийно захранване ! Защо се получава разлика спрямо двете захранвания? Смущения ли има трансформаторното или.....?!?!

Автор:  Wise [ Пон Юли 06, 2009 6:39 pm ]
Заглавие: 

според мен ползвай 4.7 или 5,6 или 6,8 пикофарада кондензатори и пак смятай...
с тези кварцове си е доста чалъмско

Автор:  bongo_x2 [ Пон Юли 06, 2009 7:30 pm ]
Заглавие: 

Кварцът не работи като кварц

Автор:  plameniv [ Вто Юли 07, 2009 1:30 am ]
Заглавие:  Re: PIC18F452+32.768 - Часовников Проблем :-)

me40 написа:
Вчера реших да коригирам грешката софтуерно и с груби сметки , като броя не от 8000, а от 7FC5 се получи доста добър резултат на 3-4 часа разликата е секунда (пак е недостатъчно )
По-големият проблем е че , когато захраня пика с батерия часовника започва да изостава спрямо захранване от IC7805 и таймер от 7FC5. Е това ме разби !!!!!! Довечера ще прбвам без софтуерната корекция и батерийно захранване ! Защо се получава разлика спрямо двете захранвания? Смущения ли има трансформаторното или.....?!?!

Използвай кварц с по висока честота и софтуерна корекция. Колкото по висока е честотата толова по точен ще е.
На кой таймер си го сложил. На втория таймер ли е ?
Ако не държи стабилно честотата нищо не пречи да си боднеш отвън генератор или още по лесно е да си купиш чип като DS1307, просто му четеш регистрите и няма да имаш грижи и няма да зависиш от контролера :wink:

Автор:  me40 [ Вто Юли 07, 2009 10:25 am ]
Заглавие: 

Таймер 1 се грижи за отброяването. Какво ще рече външен генератор? Примерно кварца който имам със някоя 7400? Да направя генератор и тогава да подавам на таймер 1 да брои. По стабилно ли ще е ? За чип-а DS1307 разбрах че съществува едва вчера. И с него ще пробвам, но ме човърка къде е точно проблема и най вече защо се влияе от захранването. Предполагам с външен генератор няма да зависи от захранването (дали е батерия или 7805)

Автор:  [ Вто Юли 07, 2009 1:49 pm ]
Заглавие: 

18-та серия има бъг в таймер 1, когато работи като асинхронно с външен кварц, прочети чаршафа с грешки за този процесор, и виж дали спадаш в тази графа.

Автор:  plameniv [ Вто Юли 07, 2009 3:24 pm ]
Заглавие: 

me40 написа:
Таймер 1 се грижи за отброяването. Какво ще рече външен генератор? Примерно кварца който имам със някоя 7400? Да направя генератор и тогава да подавам на таймер 1 да брои. По стабилно ли ще е ? За чип-а DS1307 разбрах че съществува едва вчера. И с него ще пробвам, но ме човърка къде е точно проблема и най вече защо се влияе от захранването. Предполагам с външен генератор няма да зависи от захранването (дали е батерия или 7805)

Според мен си е нормално да работи с по ниска честота при по ниско захранване. Проблема на вътрешния генератор е, че първо го мъчиш на ниска честота и при промяна на захранването на генератора фронтовете стават много по полегати от там и се превключва при други напрежения и вероятно това променя честотата, затова ти споменавам че имаш нужда от качествен генератор с вградени делтели след него до 1с както е реализирано в DS130X, иначе винаги ще имаш проблем с точноста. То не е грешка в контролера а всички така работят, а и особенно при запис си има цикъл за синхронизиране и се пропускат импулси докато влезе в синхрон.
Защо не използваш например кварц 20МХз за основния генератор той си е направен да бачка добре и едва ли ще ти дава такава грешка в честотата при промяна на напрежението пък и винаги ще е синхронизиран. Другия не е предвиден за такива честоти и не е така стабилен. Превключваш си предварителния делител към вътрешния генератор и с малка корекция при нулиране на таймера вероятно ще имаш по голяма точност. Имай на предвид че като го превключиш към основния честотата е 4 пъти по малка демек 5МХз, след делителя 625КХз с малка корекция в брояча и ще постигнеш прекъсване точно на 1С . Въпреки това според мен е безсмислено да го правиш с толкова софтуерни корекции и какво ли не при положение че DS130X чиповете са си предвидени точно за часовник и са доста точни. Така може да минеш и с какъв да е PIC16F8X :)

Автор:  Wise [ Вто Юли 07, 2009 3:46 pm ]
Заглавие: 

Може да видиш и HT1381 - има ги във футурел /за лев и половина ти спестява проблеми/

Автор:  me40 [ Вто Юли 07, 2009 5:46 pm ]
Заглавие: 

Благодаря за отговорите, но пропуснах да отбележа че и двата вида захранване минават през 7805, защото батерията е на 8В. Затова ми е чудно. Захранването е 13в нестабилизирано. После 7809 от който постоянно се зарежда батерията на 8.4 В с ток 10-на милиампера. После 7805 и процесора. Ако отпадне 9-тях волта т.е спрял е тока батерията захранва 7805 с 8в. Дали му е достатъчно незнам, но все пак това е батерия и няма смущения.
Та затова ми е чудно откъде идва разликата при двата вида захранване т.е все 5 волта, но......
При пускането на таймера от 7FC8, работи вече 7 часа и грешката е около 2/10-ти - така на око, но това с мрежовото трансформаторно захранване!!!!
Категорично при работата само на батерия се получава спрямо тази настройка разлика около 2 секунди на час. Ей това най ми е интересно. Филтрирал съм съм с 2200 uF 13-тях волта, след 9-тях волта имам 470uF, а след 7805 220 uF. Съответно съм наслагал и по 100-220 nf на входовете и изходите. Ще напрая по-добра филтрация, примерно 4700 uF

Автор:  a_stankov [ Вто Юли 07, 2009 7:39 pm ]
Заглавие: 

me40 написа:
Благодаря за отговорите, но пропуснах да отбележа че и двата вида захранване минават през 7805, защото батерията е на 8В. Затова ми е чудно. Захранването е 13в нестабилизирано. После 7809 от който постоянно се зарежда батерията на 8.4 В с ток 10-на милиампера. После 7805 и процесора. Ако отпадне 9-тях волта т.е спрял е тока батерията захранва 7805 с 8в. Дали му е достатъчно незнам, но все пак това е батерия и няма смущения.
Та затова ми е чудно откъде идва разликата при двата вида захранване т.е все 5 волта, но......
При пускането на таймера от 7FC8, работи вече 7 часа и грешката е около 2/10-ти - така на око, но това с мрежовото трансформаторно захранване!!!!
Категорично при работата само на батерия се получава спрямо тази настройка разлика около 2 секунди на час. Ей това най ми е интересно. Филтрирал съм съм с 2200 uF 13-тях волта, след 9-тях волта имам 470uF, а след 7805 220 uF. Съответно съм наслагал и по 100-220 nf на входовете и изходите. Ще напрая по-добра филтрация, примерно 4700 uF


Това 7805 освен пик-а какво друго захранваш.

Автор:  milenjs [ Вто Юли 07, 2009 7:49 pm ]
Заглавие: 

А премери ли честотата на кварца?

Автор:  me40 [ Вто Юли 07, 2009 9:04 pm ]
Заглавие: 

За съжаление имам само аналогов осцилоскоп. Май ще трябва да си правя цифров честотомер :-) с някой PIC
Цитат:
прочети чаршафа с грешки за този процесор

Откъде мога да извадя този чаршаф?

Тъкмо разгледах и HT1381 - също добро решение. Ще пробвам аз и с двете (HT и DS)

Брей да му се невиди. Един прост часовник.............ама не е толкова лесно да се постига висока точност.
Днес попитах в един часовникарски магазин за точни часовници (кварцови) и ми казаха че имало такива , които правели отклонение до 1 сек. на месец, а някой скъпи модели за година мърдали с около секунда . Чак не ми се вярва. Че Те по точни от радиосверяемите :-).
Попитах и за уред с който да се настройва кварцов часовник (Естествено ако има променливо кондензаторче). Разбрах че имало уред , който се слагал върху кварца и вероятно по индуктивен път прихваща честотата и с него настройваш. Да , ама нямали такъв. Имали само за механичните.
Чувал ли е някой за такъв уред или с честотомер е по лесният вариянт?
А това струва ли си : http://cgi.ebay.com/1x-Crystal-Oscillat ... 7C294%3A50
или по ефтиният вариянт http://bg.farnell.com/iqd-frequency-pro ... dp/1276701

Автор:  Koleto [ Сря Юли 08, 2009 9:51 am ]
Заглавие: 

Пускал съм същата щуротия само че на PIC18F4520... Кварца го взех от компютърна дънна платка (от тез малките металните кръглите е)... Кондензаторите са по около 18пФ от същото дъно (бяха си сложени на тоя кварц)... Проблем с точността не съм имал изобщо(поне не и толкова фрапираща че да ми направи впечатление). Единствената разлика с твоя случай (ако правилно съм те разбрал какво си направил) е, че не следя флага на Timer1 ами ползвам прекъсването, което се генерира при препълване - докато си брои таймера, процесора върши куп други работи... Физически къде си монтирал кварца? Ако е далече от крачетата на процесора да не го смущава нещо от вън? При мен кондензаторчетата са запоени директно на крачетата на процесора и кварца е на не повече от 2мм от тях...

Автор:  Cekins [ Сря Юли 08, 2009 12:24 pm ]
Заглавие: 

Ако ще правиш часовник, защо го правиш директно с пика, и кви са тия 9 волта, 8 волта и т.н. Примерно DS1307 си има вход за бекъп батерия, слагаш му една литиева 3 волта и отнася години. Като ти дойде захранване само четеш колко показва. И пак зависи колко ти е точен кварца. Сега в комета има едни дето им дават по-малко от 1 минута на година, ама това си заслужава ако ще правиш някакви супер точни неща. DS1307 с обикновен кварц съм го засичал на около 5 минути на година. При това не се влияе особенно от захранването. Освен всичко останало повечето РТЦ-та дето съм виждал имат NVRam - върши супер работа. Няколко байта правят чудеса - знаеш че каквото си записал там ще остане при всички случаи. Имам един проект дето така съм го извъртял с рама на ртц-то, че ако ще и 100 пъти да спира захранване машинката си свършва работата точно по зададения път.

Автор:  bongo_x2 [ Сря Юли 08, 2009 10:33 pm ]
Заглавие: 

Ама генераторът работи както си иска, най-тъпото ще е софтуерно "решение" на елементарен хардуерен проблем, по-добре ползвай RC генератор.
Поиграй си с капацитетите пък и откога часовников кварц е незаменяем?! От китайско менте което греши с минути на седмица пак ти върши работа щото грешката ще е стабилна.

А за честотомера: няк'ви си 33кХц са, нищо за съвременен комп. Генерирах с Audacity синусоида с различни честоти и я замерих с OscilloMeter. До 24кХц нямах проблем, оттам нагоре взе да ми показва глупости. Все пак звуковата ми карта е стара пък и по принцип си правя настройките за 48кХц по подразбиране и не ми се играе да търся къде е фала.

P.S.: me40 , сигурен ли си, че кварца и кондензаторите са близо до крачетата и около тях няма други писти? Масата за кондензаторите трябва да е по-дебела писта отиваща директно към съотв. краче.

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