| Микроконтролери и електроника http://mcu-bg.com/mcu_site/ |
|
| PWM в честота http://mcu-bg.com/mcu_site/viewtopic.php?f=7&t=9406 |
Страница 1 от 2 |
| Автор: | Реконструктор [ Вто Окт 04, 2011 5:43 pm ] |
| Заглавие: | PWM в честота |
Много ли е сложно да се направи такова устройство? Примерно PWM с 10 битова стъпка да се преобразува в генератор на правоъгълни импулси 50% запълване от 0 до 1024 Хц през 1 Хц? |
|
| Автор: | БатеВаньо [ Вто Окт 04, 2011 10:09 pm ] |
| Заглавие: | Re: PWM в честота |
Има поне два начина: 1) Чисто аналогов - формиране на импулсите по амплитуда, филтрация до постоянно напрежение и след това - преобразувател U/f (има готови чипове). 2) Микроконтролер - с един таймер мери коефициента на запълване на ШИМ-а, а с друг генерира съответната честота. При втория начин определено може да се постигне по-добра точност на преобразуване, ако честотата на ШИМ-а не е по-висока от няколко десетки kHz. Все пак, за какво ти е такова нещо? |
|
| Автор: | Реконструктор [ Вто Окт 04, 2011 11:49 pm ] |
| Заглавие: | Re: PWM в честота |
Да, и на мен първата ми мисъл беше U/f, но силно се опасявам че ще има дрейф на честотата в зависимост от температурата, влажността и положението на Луната. |
|
| Автор: | БатеВаньо [ Сря Окт 05, 2011 12:07 am ] |
| Заглавие: | Re: PWM в честота |
Все пак, при всяко преобразуване говорим за определена точност. Ако ШИМ-ът е 10-битов, е безсмислено да говорим за точност по-добра от 1/2048 (или, ако следваме препоръките на метролозите 1/3072) от обхвата. Т.е. грешка от 0.5 или 0.33Hz може да се считат за допустими. Има вече доста контролери с 32-битови таймери, с които разделителната способност за честоти до 1023Hz ще бъде по-добра от 0.01Hz. Друг е въпросът, ако трябва да получиш решетка от честоти от 1 до 1023Hz с висока точност (примерно, няколко ppm). За това си има малко по-други методи (напр. PLL с TCXO и следващ делител), но също е постижимо. |
|
| Автор: | Dimitar [ Сря Окт 05, 2011 12:16 am ] | |||||||||
| Заглавие: | Re: PWM в честота | |||||||||
Я по-добре кажи направо какъв е точно замисъла на тая задача, защото най-вероятно ще има по-лесно решение Т.е. защо искаш да преобразуваш PWM точно в честота и каква е цялата постановка - т.е. от къде идва PWM-а, кой искаш да го мери и да го прави на честота и какво ще правиш с тая честота после
И що пък така мислиш Това каква честота можеш да получиш зависи от това какъв ти е кристала, какви прискелъри имаш и какви точно таймери, т.е. не можеш да кажеш така категорично, че дадена честота не може да се получи |
||||||||||
| Автор: | kiiid [ Сря Окт 05, 2011 9:43 am ] |
| Заглавие: | Re: PWM в честота |
PWM в честота се прави елементарно само с три компонента (приемайки че сигналът ти е вече оформен в TTL нива): един 8-пинов PSoC от най-евтините 8C21123A, един кондензатор и един резистор. Тествано и доказано за честоти до 6MHz. Мога да ти пусна примерна схема и код ако поемаш по тоя път и имаш нужда от помощ. |
|
| Автор: | Реконструктор [ Сря Окт 05, 2011 9:52 pm ] | |||||||||
| Заглавие: | Re: PWM в честота | |||||||||
Може би си прав. |
||||||||||
| Автор: | Реконструктор [ Сря Окт 05, 2011 9:53 pm ] | |||||||||
| Заглавие: | Re: PWM в честота | |||||||||
Ами дай да видим как става. |
||||||||||
| Автор: | Dimitar [ Чет Окт 06, 2011 1:56 am ] |
| Заглавие: | Re: PWM в честота |
Ако просто ти трябва да генерираш честота, тогава за какво ти е шим-а? Иначе дали ще стане генерирането зависи какъв е и обхвата и с какво разполага процесора. |
|
| Автор: | michev [ Чет Окт 06, 2011 12:06 pm ] |
| Заглавие: | Re: PWM в честота |
Ако не ти се харчат 10лв за DDS чип, то - сглоби си сам. На базата на едно тини 2313.. Тествах го и с атмега8 и работи идеално. Мисля че покрива всички твои изисквания. |
|
| Автор: | Cekins [ Пет Окт 07, 2011 8:58 am ] |
| Заглавие: | Re: PWM в честота |
Не е невъзможно, но 1. Няма смисъл от PWM-а. 2. Иска смятане. Правил съм подобно нещо с 8MHz клок и 16 битов таймер - обаче за добра точност иска за всяка честота да се сметне делител и запълване и то така, че да няма голяма грешка. Ама както казва Мичев, ако има готово добро решение, няма смисъл от подобна гимнастика. |
|
| Автор: | Реконструктор [ Пет Окт 07, 2011 11:37 am ] | |||||||||
| Заглавие: | Re: PWM в честота | |||||||||
Ами ясно ти е, че ако се генерира с директно с процесора, стъпката се увеличава с увеличаване на честотата. Мен ми се иска да има константна стъпка. |
||||||||||
| Автор: | Cekins [ Пет Окт 07, 2011 1:23 pm ] |
| Заглавие: | Re: PWM в честота |
А какво ще ти помогне PWM-а в този случай. В общи линии можеш да го докараш на обхвати, като в малките честоти стъпката ще е най-малка увеличавайки се в по-големите а обвхатите с прескалер/постскалер да ги докарваш. След малко сметки излиза че за 1023Hz при 8MHz клок на 16 битов таймер, може да се докара стъпка близо 0.25 Hz |
|
| Автор: | Dimitar [ Пет Окт 07, 2011 4:49 pm ] | |||||||||
| Заглавие: | Re: PWM в честота | |||||||||
Така е - затова наистина най-добре да ползваш някой честотен синтезатор. Или пък просто се подсигуряваш с необходимата точност на най-голямата честота и после надолу няма да имаш проблем. И въпреки всичко още не разбирам за какво ти е PWM-а, освен ако точно това не е задачата - да мериш PWM-а и да го преобразуваш в честота. |
||||||||||
| Автор: | plameniv [ Съб Окт 08, 2011 2:21 am ] | |||||||||
| Заглавие: | Re: PWM в честота | |||||||||
http://www.national.com/mpf/LM/LM331.html#Overview http://www.national.com/ds/LM/LM231.pdf С PWM правиш напрежението необходимо за входа на чипа а той ти прави честота. Mоже тази честота да я върнеш в контролера и да я мериш всеки път като правиш промяна. Така ще постигнеш желана стъпка без да те интересува каква е стъпката на PWM |
||||||||||
| Страница 1 от 2 | Часовете са според зоната UTC + 2 часа [ DST ] |
| Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |
|