This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

How to use Timer 1 instead of Timer 0 for the example provided in SDK of NRF52XXX

I am new to Nordic and developing an application using nrf52 chip. I am trying to use timer0 example provided in the SDK for Timer1. I did following changes related to timer 0 call so that it can be called for timer 1.

In main.c file.

#include "nrf_drv_timer.h"
#include "bsp.h"
#include "app_error.h"

*const nrf_drv_timer_t TIMER_LED = NRF_DRV_TIMER_INSTANCE(1);*

const uint8_t leds_list[LEDS_NUMBER] = LEDS_LIST;

/**
 * @brief Handler for timer events.
 */
void timer_led_event_handler(nrf_timer_event_t event_type, void* p_context)
{
    static uint32_t i;
    uint32_t led_to_invert = 17;//(1 << leds_list[(i++) % LEDS_NUMBER]);
    
    switch(event_type)
    {
        *case NRF_TIMER_EVENT_COMPARE1:*
            LEDS_INVERT(led_to_invert);
            break;
        
        default:
            //Do nothing.
            break;
    }    
}


/**
 * @brief Function for main application entry.
 */
int main(void)
{
    uint32_t time_ms = 10; //Time(in miliseconds) between consecutive compare events.
    uint32_t time_ticks;
    uint32_t err_code = NRF_SUCCESS;
    
    //Configure all leds on board.
    LEDS_CONFIGURE(LEDS_MASK);
    LEDS_OFF(LEDS_MASK);
    
    //Configure TIMER_LED for generating simple light effect - leds on board will invert his state one after the other.
    err_code = nrf_drv_timer_init(&TIMER_LED, NULL, timer_led_event_handler);
    APP_ERROR_CHECK(err_code);
    
    time_ticks = nrf_drv_timer_ms_to_ticks(&TIMER_LED, time_ms);
    
    *nrf_drv_timer_extended_compare(
         &TIMER_LED, NRF_TIMER_CC_CHANNEL1, time_ticks, NRF_TIMER_SHORT_COMPARE1_CLEAR_MASK, true);*
    
    nrf_drv_timer_enable(&TIMER_LED);

    while(1)
    {
        __WFI();
    }
}

Also enabled timer 1 in nrv_drv_config.h file.

Can somebody please help me to get my timer 1 started?

Parents Reply Children
Related