Hi All,
After adding the line as Mark suggest (EM_timer.count_delay = DMA_TIMER_US_DELAY(1,1,10)
it is working fine now.
Just some additional information, we can use DMA_TIMER_US_DELAY to get interval of uS or DMA_TIMER_MS_DELAY for mS interval.
My latest code as below, the the DMA timer set to 100mS timeout period:
//////////////////////////////////
static void EM4095TimerInt(void)
{
tEM4095RunTime[0].timer_off = 1;
uTaskerStateChange(OWN_TASK, UTASKER_GO);
}
static void EM4095_ConfigDMATimer(DMA_TIMER_SETUP * EM_timer)
{
EM_timer->int_type = DMA_TIMER_INTERRUPT;
EM_timer->channel = EM4095_DMA_TIMER_CHANNEL;
EM_timer->int_priority = EM4095_DMA_TIMER_INTERRUPT_PRIORITY;
EM_timer->int_handler = EM4095TimerInt;
EM_timer->mode = (DMA_TIMER_INTERNAL_CLOCK_DIV_16|DMA_TIMER_PERIODIC_INTERRUPT|DMA_TIMER_RESTART_ON_MATCH);
EM_timer->count_delay =DMA_TIMER_MS_DELAY(16,1,100) // 100ms delay
}
//////////////////////////////////
Thank you very much. Now I manage to decode the Manchester Coding signal.