| Автор |
Съобщение |
|
million
Ранг: Минаващ
Регистриран на: Сря Дек 06, 2006 9:05 pm Мнения: 92 Местоположение: София
|
 setup_ccp1 (CCP_PWM) Въпрос!
Здравейте! Опитвам се да увелича резолюцията PWM модула или казано по точно, да я накарам да работи в по тесен диапазон от 100% запълване. 10бита са 1024 стъпки за 100% не са достатъчни, но 1024стъпки в 25% е екстра. Пробвам следното, но не става:
Честотата трябва да е 250 Хзц.
Пускам 4 пъти по висока честота(1000Хзц) и използвам само 1 пулс от общо четирите, но или аз бъркам нещо, или хардуера не позволяава. Някакви идеи
|
| Съб Юни 30, 2007 1:33 pm |
|
 |
|
zaphod
Ранг: Форумен бог
Регистриран на: Нед Юли 24, 2005 10:28 am Мнения: 2658
|
 Re: setup_ccp1 (CCP_PWM) Въпрос!
и как точно това нещо ще ти ползва "само един от четирите" импулса? мисля че set_pwm1_duty(0); трябва да бъде сложено в else участъка на ифа, а не в този
|
| Съб Юни 30, 2007 2:47 pm |
|
 |
|
million
Ранг: Минаващ
Регистриран на: Сря Дек 06, 2006 9:05 pm Мнения: 92 Местоположение: София
|
Да си призная, слагах го къде ли не. Все се получава едно мигане на осцилоскопа с основната честота. Пробвах да пускам и спирам целия ССР модул, но там е още по зле резултата. Засега все още симулирам с ПРОТЕУС с 16Ф877, мисля че за толкова просто нещо може да му се вярва.
|
| Съб Юни 30, 2007 4:18 pm |
|
 |
|
Predator_MF
Ранг: Форумен бог
Регистриран на: Чет Окт 07, 2004 1:22 pm Мнения: 1949 Местоположение: София
|
Каква ти е идеята с тоя брояч с Timer 0 ? Мигане има щото на всеки 4 прекъсвания на Timer0 пишеш 0 в PWM и съответно увеличаваш докрай/намаляш докрай PWM (зависи как си вързал изхода). Не мога да схана идеята ти 
|
| Съб Юни 30, 2007 5:40 pm |
|
 |
|
million
Ранг: Минаващ
Регистриран на: Сря Дек 06, 2006 9:05 pm Мнения: 92 Местоположение: София
|
Таймер0 го използвам за две неща за момента:
1. увеличава с +1 през зададения му период променливата "TEMP", което ми е широчината на ШИМа
2. да килва 4 цикъла на PWM за да получа 1024 стъпки на по малка част от цялата широчина, но да си останат 250 херца. Тъй като там ми е необходима. Сигурно има и друг начин, но с моите знания..... надали ще се получи нещо. Затова моля за помощ.
ПС. добавих и кода за повече яснота 
|
| Съб Юни 30, 2007 6:09 pm |
|
 |
|
zaphod
Ранг: Форумен бог
Регистриран на: Нед Юли 24, 2005 10:28 am Мнения: 2658
|
е, не моа ти помогна. а напрежение ли искаш да направиш от това? щото малко ми е мъгла крайната цел...
|
| Съб Юни 30, 2007 7:48 pm |
|
 |
|
Ки4о
Ранг: Форумен бог
Регистриран на: Съб Юли 22, 2006 9:50 pm Мнения: 1638
|
Ако ще го ползваш за управление на двигател си направи софуеерен ШИМ,макар че многото щракания на ШИМ-а не се харесват на двигателя.От страна хардуеерен модул в ПИК-а си леко ограничен.
|
| Съб Юни 30, 2007 10:20 pm |
|
 |
|
ji4ka
Ранг: Форумен бог
Регистриран на: Чет Фев 01, 2007 4:04 am Мнения: 1539
|
Идеята ти е правилна, но за Ц-то не мо'а ти помогна. Трябва да ползваш прекъсването на ПВМ-а (таймер2) за брояча за да има пълен синхрон. Може да се доразвие да управляваш целия обхват, не само 25% - тогава "празните" периоди трябва да са както 0В така и 5В,по алгоритъм. Ще получиш ПВМ с разредност 12бит. Разбира се всичко е за сметка на честотата.
|
| Нед Юли 01, 2007 12:22 am |
|
 |
|
zaphod
Ранг: Форумен бог
Регистриран на: Нед Юли 24, 2005 10:28 am Мнения: 2658
|
че той не ползва ли прекъсването бе? според мене го ползва, иначе кога ше се вика тая функция дето я е писал. очевидно брои импулсите и всеки четвърти го пуска, останалите ги нулира. обаче, все още не мога да си представя смисленна употреба на това нещо. едно е сигурно - вероятно му трябват самите импулси като време, а не усредненото напрежение. ако му трябва усредненото напрежение все пак, това е голяма глупост което прави....
|
| Нед Юли 01, 2007 8:22 am |
|
 |
|
Predator_MF
Ранг: Форумен бог
Регистриран на: Чет Окт 07, 2004 1:22 pm Мнения: 1949 Местоположение: София
|
Явно искаш да регулираш изхода 0-25% с 10 бита разряд...само че що ползваш #INT_RTCC - това не е ли Timer0 ? Трябва ти Timer2 в тоя PIC и ще стане:
|
| Нед Юли 01, 2007 12:05 pm |
|
 |
|
million
Ранг: Минаващ
Регистриран на: Сря Дек 06, 2006 9:05 pm Мнения: 92 Местоположение: София
|
|
| Пон Юли 02, 2007 12:14 pm |
|
|