RTV forum PL | NewsGroups PL

Konfiguracja Timer1 na AT91SAM7S512 z freeRTOS przykład z PWM

timer w SAM7

NOWY TEMAT

elektroda NewsGroups Forum Index - Elektronika Polska - Konfiguracja Timer1 na AT91SAM7S512 z freeRTOS przykład z PWM

marcin
Guest

Tue Aug 25, 2009 9:36 am   



Witajcie,

Próbuję uruchomić timer1 na AT91SAM7S512. Na początek skopiowałem z noty
Atmela przykład z PWM (
http://www.atmel.com/dyn/resources/prod_documents/doc2682.pdf ). SAM7
pracuje pod kontrolą freeRTOS. Kod wygląda tak:

void initTimer1()
{
AT91C_BASE_TC1->TC_CCR = TC_CLKDIS ; /* Disable the Clock Counter
*/
Io_SetPeripheralB( IO_PA15 );
Io_SetPeripheralB( IO_PA16 );
Io_PioDisable( IO_PA15 );
Io_PioDisable( IO_PA16 );
// *PIO_PDR = (1<<15) ; /* Define TIOA1 and TIOB1 as peripheral */
// * Timer/Counter 1 mode configuration
AT91C_BASE_TC1->TC_CMR =
TC_BSWTRG_SET_OUTPUT | /* BSWTRG :
software trigger set TIOB */
TC_BCPC_TOGGLE_OUTPUT | /* BCPC :
Register C compare toggle TIOB */
TC_BCPB_TOGGLE_OUTPUT | /* BCPB :
Register B compare toggle TIOB */
TC_ASWTRG_SET_OUTPUT | /* ASWTRG :
software trigger set TIOA */
TC_ACPC_TOGGLE_OUTPUT | /* ACPC :
Register C compare toggle TIOA */
TC_ACPA_TOGGLE_OUTPUT | /* ACPA :
Register A compare toggle TIOA */
TC_WAVE | /* WAVE :
Waveform mode */
TC_CPCTRG | /* CPCTRG :
Register C compare trigger ena */
TC_EEVT_XC0 | /* EEVT :
XC0 as external event (TIOB=out */
TC_CLKS_MCK2 ; /* TCCLKS : MCK
/ 2 */
// Compare registers initialization
AT91C_BASE_TC1->TC_RC = 0x80E8 ; /* 1kHz PWM
generation */
AT91C_BASE_TC1->TC_RB = 0x4074 ; /* 30% duty cycle on
TIOB1 */
AT91C_BASE_TC1->TC_RA = 0x26AC ; /* 50% duty cycle on
TIOA1 */
AT91C_BASE_TC1->TC_CCR = TC_CLKEN ; /* Enable the Clock
counter */
AT91C_BASE_TC1->TC_CCR = TC_SWTRG ; /* Trig the timer */
}

Wg. noty Atmela po wykonaniu tego kodu powinienem mieć na TIOA1 i TIOB1 dwa
przebiegi PWM 1kHz, niestety jest głucha cisza. Pewnie popełniam jakiś
"oczywisty błąd". Z tego co się orientuję, to freeRTOS włada jedynie timerem
TC0, TC1 jest do pełnej dyspozycji programisty. Nie mam pomysłu, to mój
pierwszy program na ARM i freeRTOS zarazem, i utknąłem w ciemnej d...
Ogólnie system żyje, mogę majtać tymi liniami z poziomu PIO, timingi i
wszelkie inne objawy życia freeRTOS są w porządku.
Proszę o pomoc jeżeli ktoś ma jakiś pomysł...
--
Pozdrawiam grupę!
Marcin

Paweł
Guest

Tue Aug 25, 2009 5:00 pm   



Quote:
Proszę o pomoc jeżeli ktoś ma jakiś pomysł...

Czy włączyłeś w PMC zegar do TC1 ?

Paweł

marcin
Guest

Tue Aug 25, 2009 8:50 pm   



Użytkownik "Paweł" <pawel.neo@neostrada.pl> napisał w wiadomości
news:h712g7$f$1@nemesis.news.neostrada.pl...

Quote:
Czy włączyłeś w PMC zegar do TC1 ?

Coś ruszylo Smile)) Dziękuję!!!
--
Pozdrawiam!
Marcin

elektroda NewsGroups Forum Index - Elektronika Polska - Konfiguracja Timer1 na AT91SAM7S512 z freeRTOS przykład z PWM

NOWY TEMAT

Regulamin - Zasady uzytkowania Polityka prywatnosci Kontakt RTV map News map