Quantcast
Channel: Forums - Recent Threads
Viewing all articles
Browse latest Browse all 262198

Tiva timer0 split pair periodic

$
0
0

I am trying to configure 2 simple periodic timer but the more I read and the more I try different configuration, the more I get confused.

I tried 2 timers, 0 and 1 but get time intervals that do not correspond to the timer load values. I now have tried the WTIMER0 configuration  haphazardly because the documentation is scattered over a few chapters in DRIVER_LIB. Here is the code:

SysCtlClockSet(SYSCTL_SYSDIV_1 | SYSCTL_USE_PLL | SYSCTL_OSC_MAIN |SYSCTL_XTAL_16MHZ);
     
SysCtlPeripheralEnable(SYSCTL_PERIPH_WTIMER0);
     // Configure the  32-bit periodic timers
    TimerConfigure(WTIMER0_BASE, TIMER_CFG_SPLIT_PAIR  | TIMER_CFG_A_PERIODIC  | TIMER_CFG_B_PERIODIC);
    //PWMPeriod2 = SysCtlClockGet() / 100;
    PWMPeriod2=160000;
    // Setup the interrupts for the timer timeout.
    IntEnable(INT_WTIMER0A);
    TimerIntEnable(WTIMER0_BASE, TIMER_TIMA_TIMEOUT);
    TimerIntRegister(WTIMER0_BASE, TIMER_A,TimerA_IntHandler);
    TimerIntRegister(WTIMER0_BASE, TIMER_B,TimerB_IntHandler);
    IntEnable(INT_WTIMER0B);
    TimerIntEnable(WTIMER0_BASE, TIMER_TIMB_TIMEOUT);
    TimerEnable(WTIMER0_BASE, TIMER_A);
    TimerEnable(WTIMER0_BASE, TIMER_B);
    TimerLoadSet(WTIMER0_BASE, TIMER_B, 8000000);   // 0.5 SEC 
    TimerLoadSet(WTIMER0_BASE, TIMER_A, 160000);

Time A interrupts at 1.305 seconds What am I missing? Is there a pre-scaler? Do I have to set the clock source?

thanks

Claude


Viewing all articles
Browse latest Browse all 262198

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>