реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Watchdog LPC23xx для системных тиков FreeRTOS, Как сделать, возмоно ли?
elektronshik
сообщение Feb 26 2009, 11:38
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 73
Регистрация: 25-10-07
Из: Тольятти
Пользователь №: 31 723



Недавно пришлось портировать FreeRTOS на LPC2368, так вот оказалось у филипсов отсутствует спец таймер для генерации системных тиков (миллисекундный интервал). Все 4 таймера и ШИМ нужны для др. задач. А WDT болтается без толку. Можно ли как-нибудь организовать его работу, чтоб он постоянно, с интервалом в 1 мс генерировал IRQ, и не сбрасывал контроллер?
Пробовал по всякому настраивать получилось только со сбросом.
Если настроить так:
Код
WDMOD_bit.WDEN = 1; // Watchdog interrupt mode: debug with the Watchdog interrupt but no WDRESET enabled.
WDMOD_bit.WDRESET = 0; // No reset
WDCLKSEL_bit.WDSEL = 0x01; // Selects the APB peripheral clock (PCLK) as the Watchdog clock source.
WDTC = ((configCPU_CLOCK_HZ / configTICK_RATE_HZ) - 1); // Watchdog time-out interval.
WDFEED = 0xAA;
WDFEED = 0x55;    
install_irq(VIC_WDT,vPortPreemptiveTick, 1);

прерывание возникает, но выйти из него можно только отключив в VIC, при этом WDT перестает тикать.
Вобщем на LPC я перешел недавно, подскажите что не так делаю.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Feb 26 2009, 11:56
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(elektronshik @ Feb 26 2009, 14:38) *
так вот оказалось у филипсов....

...имеется в наличии RTC, а еще есть входы внешних прерываний, а еще масса интересной переиферии генерирующей прерывания через определеное количество тиков после запуска.
А Watchdog действительно просто так не обманывается, и это правильно.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
elektronshik
сообщение Feb 26 2009, 12:48
Сообщение #3


Участник
*

Группа: Свой
Сообщений: 73
Регистрация: 25-10-07
Из: Тольятти
Пользователь №: 31 723



Цитата(zltigo @ Feb 26 2009, 14:56) *
...имеется в наличии RTC

Часы тоже нужны...
"interrupt approximately every 977 microseconds." не подходит - надо точно 1 мс.

Цитата(zltigo @ Feb 26 2009, 14:56) *
а еще есть входы внешних прерываний

Это чтобы внешнюю схему таймера городить?
Цитата(zltigo @ Feb 26 2009, 14:56) *
масса интересной переиферии генерирующей прерывания через определеное количество тиков после запуска.

Надеюсь это не АЦП?
Цитата(zltigo @ Feb 26 2009, 14:56) *
А Watchdog действительно просто так не обманывается, и это правильно.

crying.gif
Go to the top of the page
 
+Quote Post
zltigo
сообщение Feb 26 2009, 13:34
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(elektronshik @ Feb 26 2009, 15:48) *
"interrupt approximately every 977 microseconds." не подходит - надо точно 1 мс.

Очень сильно сомневаюсь, что использовании часов нужно "точно"
Цитата
Это чтобы внешнюю схему таймера городить?

Или перемычку на подходящую перефиферию.
Цитата
Надеюсь это не АЦП?

Может и ADC, может и другое.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
KRS
сообщение Feb 26 2009, 13:54
Сообщение #5


Профессионал
*****

Группа: Модераторы
Сообщений: 1 951
Регистрация: 27-08-04
Из: Санкт-Петербург
Пользователь №: 555



а какая у вас частота PWM? может его можно использовать и как системный таймер.
Go to the top of the page
 
+Quote Post
elektronshik
сообщение Feb 27 2009, 07:57
Сообщение #6


Участник
*

Группа: Свой
Сообщений: 73
Регистрация: 25-10-07
Из: Тольятти
Пользователь №: 31 723



Цитата(KRS @ Feb 26 2009, 16:54) *
а какая у вас частота PWM? может его можно использовать и как системный таймер.

Можно все что угодно использовать как системный таймер, но меня интересует именно WDT, как самая бесполезная для меня периферия.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 13:22
Рейтинг@Mail.ru


Страница сгенерированна за 0.01392 секунд с 7
ELECTRONIX ©2004-2016