Реклама на сайте DatasheetsDatasheets

KAZUS.RUN - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Книги и журналы
FAQ по электронике

  Datasheets
Поиск SMD
Онлайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Схемы и проекты
Принципиальные схемы
  Программы
Каталог сайтов
Калькуляторы
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы

LPC2129 ШИМ

Непрочитано 16.04.2011, 21:45  
alberio
Гражданин KAZUS.RUN
 
Аватар для alberio
 
Регистрация: 08.07.2006
Сообщений: 582
Сказал спасибо: 76
Сказали Спасибо 90 раз(а) в 66 сообщении(ях)
alberio на пути к лучшему
По умолчанию LPC2129 ШИМ

Сконфигурировал вродь правильно, но никак не допру, почему не работает ШИМ.

PHP код:
IODIR0    |=    (1‹‹1);
    IOCLR0    |=    (1‹‹1);

    PINSEL0     &=    ~((1‹‹3)|(1‹‹2)); // select pwm3 on p0.1
    PINSEL0     |=    (1‹‹3)|(0‹‹2);

    PCONP    |= (1‹‹5);         // powering pwm
    PWMPR    =    20000;    //    prescaler 
    PWMMR3    =    10000;//     compare register
    PWMMCR    =    (1‹‹10);//     сброс от совпадения pwm3
    PWMPCR    =    (1‹‹11);//    включен pwm3
    PWMTCR    =    (1‹‹3)|(1‹‹1)|(1‹‹0); 
Счетчик не тикает, выход молчит
Реклама:
__________________
Sex, Druggs, Rock&Roll
alberio вне форума  
Непрочитано 16.04.2011, 22:28  
serb-radio
Гражданин KAZUS.RUN
 
Регистрация: 01.01.2007
Адрес: Таганрог
Сообщений: 571
Сказал спасибо: 26
Сказали Спасибо 213 раз(а) в 91 сообщении(ях)
serb-radio на пути к лучшему
По умолчанию Re: LPC2129 ШИМ

Поглядите регистр PWMEMR там надо поставить биты "защелкивания" значения регистра сравнения ШИМ, по крайней мере так в LPC2300, поглядите в даташит
Вот гляньте как у меня в LPC23хх

void PWM_conf (void)
{
// присоединение вывода к ШИМ
PINSEL7|=_BV(21); PINSEL7|=_BV(20); //Connect PWM1.3 to pin 26

// включение ШИМ на выводе
PWM1PCR |= _BV(PWMENA3); //включить выод PWMENA 3
PWM1PCR &=~_BV(PWMSEL3); // управление одиночным перепадом

// конфигурирование

PWM1PR=0x00; // предделитель


PWM1MCR|=_BV(1); // сбрасываем при вовпадении счетного регистра с PWMMR0
PWM1MCR|=_BV(0); // прерывание при вовпадении счетного регистра с PWMMR0

PWM1LER|=_BV(0) | _BV(3) ; // включить защелки в канале 0 и 6

PWM1TCR|=_BV(0); // разрешение счета

return;
}
__________________
То, что нас не убивает - делает нас сильнее

Последний раз редактировалось serb-radio; 16.04.2011 в 22:30.
serb-radio вне форума  
Непрочитано 17.04.2011, 01:07  
alberio
Гражданин KAZUS.RUN
 
Аватар для alberio
 
Регистрация: 08.07.2006
Сообщений: 582
Сказал спасибо: 76
Сказали Спасибо 90 раз(а) в 66 сообщении(ях)
alberio на пути к лучшему
По умолчанию Re: LPC2129 ШИМ

Попробовал по аналогии - ничего. Счетчик не считает
А как вы задаете период и скважность?
__________________
Sex, Druggs, Rock&Roll
alberio вне форума  
Непрочитано 17.04.2011, 09:14  
AJScorp
Почётный гражданин KAZUS.RUN
 
Аватар для AJScorp
 
Регистрация: 10.05.2005
Адрес: Саратов.ru
Сообщений: 1,550
Сказал спасибо: 384
Сказали Спасибо 735 раз(а) в 416 сообщении(ях)
AJScorp на пути к лучшему
По умолчанию Re: LPC2129 ШИМ

Сообщение от alberio Посмотреть сообщение
PWMTCR = (1‹‹3)|(1‹‹1)|(1‹‹0);
Навскидку первое - у Вас счетчик PWM в ресете.
Цитата:
The counters remain reset until TCR[1] is returned to zero.
PWMTCR = (1‹‹1); //Сброс PWM таймера
PWMTCR = (1‹‹3)|(1‹‹0); //Разрешение PWM режима и таймера

Последний раз редактировалось AJScorp; 17.04.2011 в 09:20.
AJScorp вне форума  
Сказали "Спасибо" AJScorp
alberio (17.04.2011)
Непрочитано 17.04.2011, 13:12  
serb-radio
Гражданин KAZUS.RUN
 
Регистрация: 01.01.2007
Адрес: Таганрог
Сообщений: 571
Сказал спасибо: 26
Сказали Спасибо 213 раз(а) в 91 сообщении(ях)
serb-radio на пути к лучшему
По умолчанию Re: LPC2129 ШИМ

Задается в программе в прерывании, для формирования пачки импульсов. Необходимо после задания периода и скважности защелкивать PWMEMR. Так еще поглядите подается ли питание на модуль шимрегистр PCONP
void pow_init (void)
{

//выключение периферии
PCONP&= ~_BV(PCI2C0)& ~_BV(PCRTC) & ~_BV(PCEMC1) &~_BV(PCCAN1) &~_BV(PCCAN2);
PCONP&= ~_BV(PCI2C1) &~_BV(PCSSP1) & ~_BV(PCSPI) & ~_BV(PCUART2) &~_BV(PCUART3);
PCONP&= ~_BV(PCI2C2) & ~_BV(PCI2S) &~_BV(PCSDC) &~_BV(PCGPDMA) &~_BV(PCENET);
PCONP&= ~_BV(PCUSB) & ~ _BV(PCUART0);

// включение периферии
PCONP|= _BV(PCTIM0) | _BV(PCTIM1) | _BV(PCTIM2) | _BV(PCTIM3) | _BV(PCPWM1) | _BV(PCSSP0) | _BV(PCAD);

return;
}
__________________
То, что нас не убивает - делает нас сильнее
serb-radio вне форума  
Непрочитано 17.04.2011, 13:44  
alberio
Гражданин KAZUS.RUN
 
Аватар для alberio
 
Регистрация: 08.07.2006
Сообщений: 582
Сказал спасибо: 76
Сказали Спасибо 90 раз(а) в 66 сообщении(ях)
alberio на пути к лучшему
По умолчанию Re: LPC2129 ШИМ

Сообщение от AJScorp Посмотреть сообщение
Навскидку первое - у Вас счетчик PWM в ресете.
Так и есть, спасибо - таймер затикал Вот только ШИМа нет. Читаю - и никак не могу понять. Есть регистр PWMPR - прескалер счетчика для модуля ШИМ, есть регистр PWMMR3, для третьего канала ШИМ - регистр сравнения (длительности импульса). А период? Задается PWMPR? Тогда мне непонятно, почему не работает...
PHP код:
PWMPR    =    100;        //    prescaler 
    PWMMR3    =    50;            //    PWMMR3     compare register

    PWMPCR    =    (1‹‹11);    //    pwm control    включен pwm3
    PWMMCR    =    (1‹‹10);//    compare control register сброс от совпадения pwm3
    PWMLER    =    (1‹‹3);

    PWMTCR    =    (1‹‹1);
    PWMTCR    =    (1‹‹3)|(1‹‹0); 
__________________
Sex, Druggs, Rock&Roll
alberio вне форума  
Непрочитано 17.04.2011, 14:17  
AJScorp
Почётный гражданин KAZUS.RUN
 
Аватар для AJScorp
 
Регистрация: 10.05.2005
Адрес: Саратов.ru
Сообщений: 1,550
Сказал спасибо: 384
Сказали Спасибо 735 раз(а) в 416 сообщении(ях)
AJScorp на пути к лучшему
По умолчанию Re: LPC2129 ШИМ

Для режима Single Edge PWM установка выхода в "1" происходит по MR0, в "0" по MRx.

Можно установить период в MR0 (PWMMCR = 0x02), а заполнение регулировать через MR3. На рисунке - пример для MR5.
Миниатюры:
Нажмите на изображение для увеличения
Название: LPCPWM.PNG
Просмотров: 59
Размер:	45.6 Кб
ID:	20690  
AJScorp вне форума  
Сказали "Спасибо" AJScorp
alberio (17.04.2011)
Непрочитано 17.04.2011, 15:31  
alberio
Гражданин KAZUS.RUN
 
Аватар для alberio
 
Регистрация: 08.07.2006
Сообщений: 582
Сказал спасибо: 76
Сказали Спасибо 90 раз(а) в 66 сообщении(ях)
alberio на пути к лучшему
По умолчанию Re: LPC2129 ШИМ

Да, теперь, вроде бы понимаю. То есть регистр одного из каналов играет роль регистра периода для другого - таблица в даташите. В данном случае регистр нулевого канала есть регистром периода для третьего. Ну... немного странно, ведь выходит, что все 6 каналов не запустишь одновременно...
Тем не менее Счетчик считает - сбрасывается, все как надо. Только вот ШИМа на выходе все нет
__________________
Sex, Druggs, Rock&Roll
alberio вне форума  
Непрочитано 17.04.2011, 16:45  
serb-radio
Гражданин KAZUS.RUN
 
Регистрация: 01.01.2007
Адрес: Таганрог
Сообщений: 571
Сказал спасибо: 26
Сказали Спасибо 213 раз(а) в 91 сообщении(ях)
serb-radio на пути к лучшему
По умолчанию Re: LPC2129 ШИМ

а PINSEL сконфигурячил как надо? и предделителя чегото большеватое значение
__________________
То, что нас не убивает - делает нас сильнее
serb-radio вне форума  
Непрочитано 17.04.2011, 17:15  
kison
Почётный гражданин KAZUS.RUN
 
Регистрация: 13.12.2004
Сообщений: 3,168
Сказал спасибо: 11
Сказали Спасибо 691 раз(а) в 503 сообщении(ях)
kison на пути к лучшему
По умолчанию Re: LPC2129 ШИМ

Сообщение от alberio Посмотреть сообщение
Ну... немного странно, ведь выходит, что все 6 каналов не запустишь одновременно...
Запускаются 6 одновременно. Только не "все 6", а 6 из семи. Каналов то 7.
kison вне форума  
 

Метки
arm, lpc2129, pwm, шим
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не могу наладить ШИМ Саныч Производственное оборудование 4 01.05.2011 17:10
Кривая генерация шим putmannn Электроника - это просто 28 11.02.2011 21:27
Помогите С P-Канальным Транзистором В Шим winso Источники питания и свет 39 11.10.2010 07:49
Проблема с аппаратным ШИМ в мега169 Archer07 Микроконтроллеры, АЦП, память и т.д 3 09.07.2010 15:40
Ищу ШИМ контроллер serb-radio Информация по радиокомпонентам 1 16.02.2010 21:10


Часовой пояс GMT +4, время: 20:13.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.