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

Измерване на продължителност на единичен импулс...как?
http://mcu-bg.com/mcu_site/viewtopic.php?f=4&t=2028
Страница 1 от 1

Автор:  forest_gump [ Съб Мар 18, 2006 12:39 am ]
Заглавие:  Измерване на продължителност на единичен импулс...как?

Уважаеми колеги, дайте някакви идеи как би трябвало да се измери с възможно най-голяма точност продължителността на единичен импулс със почти идеални фронтове. Постановката е следната: имаме система в очакване на събитието, а то е единичен импулс /със положителен или отрицателен фронт/ със възможно време на продължителността на импулса от порядъка на (от 1.5ms до 200ms). Максимално допустимата грешка при измерване да е <5us .
Та се чудя как да реализирам кепчващата част, вариянт имам със тригер J-K, броячи каскадно свързани, и еталонен генератор; чудя се също за таймерите във PIC18F2520 или CCP-то му. Ако точноста е по голяма това ще е добре дошло, няма да се знае обаче колко широк импулс се очаква може да е 1.5ms може и да е 200ms ... Та как мислите вие ..?
...Благодаря..!

Автор:  bateAz [ Съб Мар 18, 2006 12:57 am ]
Заглавие: 

Нямаш проблеми с кепчъра на PIC. Пускаш го по преден фронт, мериш кога е щракнал, сменяш фронта и при прекъсване пак го мериш. Вадиш от едното време другото и получаваш продължителността ( в брой клоци / прескелер ) Сложността идва, ако броячът ти се превърти, но за това ще следиш прекъсванията от таймера и ще си добавяш по 65536 такта.

Автор:  [ Съб Мар 18, 2006 1:11 am ]
Заглавие: 

Импулса само с един поляритет ли е ? Нещо ме подвеждат думите положителен и отрицателен фронт на импулса. Предполагам, че искаш да кажеш преден и заден фронт на импулса.

Автор:  forest_gump [ Съб Мар 18, 2006 1:20 am ]
Заглавие: 

ами ето го импулса :

______|--------|________

или така:

--------|______|-----------

искам да кажа че може да се инвертират фронтовете както ние удобно..

Автор:  [ Съб Мар 18, 2006 1:50 am ]
Заглавие: 

Ако е така, направи го както казва bateAz, ще работи точно. Малко ще ти се усложи софта, но ще работи. Другото е да си сложиш външни броячи с такава разредност, че да не се препълват, например 24-битов брояч ( от три 8-битови ) запълвайки го с 1 MHz ( 1us разделителна способност ) ще ти свърши работа.

Автор:  Gogo [ Съб Мар 18, 2006 3:26 am ]
Заглавие: 

Мисля, че външен брояч е излишен в случая. Ан 10 мипса с 18-ката ще имаш точност под 2 микросекунди без излишни хардуерни усложнения [-X

Автор:  evc [ Съб Мар 18, 2006 10:25 am ]
Заглавие: 

Gogo написа:
Мисля, че външен брояч е излишен в случая. Ан 10 мипса с 18-ката ще имаш точност под 2 микросекунди без излишни хардуерни усложнения [-X

Точността всъщност ще бъде под 200ns! И е по-добре да ползваш вградения кепчър на 18Ф2520, нали той за това служи? 200ms не са ти проблем ако разрешиш прекъсването едновременно по кепчър събитие и по препълване на таймер1/таймер3. Като получиш прекъсване от таймера само си увеличаваш един външен брояч, а по прекъсване от кепчъра - вече смяташ.

Едит: всъщност и батеАз ти го е казал същото. Само уточнявам за резолюцията.

Автор:  forest_gump [ Нед Мар 19, 2006 5:05 pm ]
Заглавие: 

Спрях се на вариянта със CCP-то на 18F2520, тия дни ще обадя резултата ...

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