Quantcast
Channel: Embedded Software (Read Only)
Viewing all articles
Browse latest Browse all 25965

Forum Post: DMTimer accuracy deviation

$
0
0

I'm using some DMtimer-code to create regularly interrupts. The code is taken out of DMTimer-example for BeagleBone and is running with a frequency of 2 MHz and highest interrupt priority:

#define TIMER_INITIAL_COUNT (0xFFFFFFFFu-12) #define TIMER_RLD_COUNT     (0xFFFFFFFFu-12)  IntPrioritySet(SYS_INT_TINT2, 0, AINTC_HOSTINT_ROUTE_IRQ); 

Beside of this USB (out of USBDevSerial-example), Ethernet (out of enetLwip-example) and SD-card/FatFS is used, there the interrupts are running with lower priority in order to not to influence the DMtimer-interrupt:

// ethernet IRQs IntPrioritySet(SYS_INT_3PGSWTXINT0, 1, AINTC_HOSTINT_ROUTE_IRQ); IntPrioritySet(SYS_INT_3PGSWRXINT0, 1, AINTC_HOSTINT_ROUTE_IRQ); ... //EDMA IRQs for SD-Card IntPrioritySet(EDMA_COMPLTN_INT_NUM, 3, AINTC_HOSTINT_ROUTE_IRQ); IntPrioritySet(EDMA_ERROR_INT_NUM, 3, AINTC_HOSTINT_ROUTE_IRQ); //MMCSD-IRQs IntPrioritySet(SYS_INT_MMCSD0INT, 3, AINTC_HOSTINT_ROUTE_IRQ); IntPrioritySet(SYS_INT_MMCSD1INT, 3, AINTC_HOSTINT_ROUTE_IRQ); ... //USB IntPrioritySet(SYS_INT_USB0, 2, AINTC_HOSTINT_ROUTE_IRQ);

All of them run with a higher priority value, means a lower priority than the DMTimer interrupt.

Nevertheless I notice a deviation of timer accuracy, it is about factor 1,68 too slow.

Any ideas what could cause this? Are there any other interrupts I should care about? Or what else could slow down the DMtimer?


Viewing all articles
Browse latest Browse all 25965

Trending Articles



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