Hi Simon,
I include mbed.lib in my project just to get your initialization for the Stack, Heap, PLLs, Flash, etc, but I don't instantiate any class belonging to mbed and I don't call any function belonging to mbed, neither directly nor indirectly, except for:
NVIC_SetPriority()
NVIC_EnableIRQ()
NVIC_DisableIRQ()
(I use my own interrupts)
and yes, I do see that once in a while (right now every approximately 45 seconds, but this could depend on my clock or prescaler settings, I don't know), Timer3 suddenly stops doing what I programmed it to do. Also, what happens every 45 s is NOT a reset. It does not sound like a watchdog issue.
Question: Does the mbed library implement any of these interrupt handlers?
- TIMER3_IRQHandler
- WDT_IRQHandler
- SysTick_Handler
- RIT_IRQHandler
- RTC_IRQHandler
Tomorrow I'll try to isolate which register is being modified, by that ghost hand.
Thank you.
Hi,
I know that Timer3 (of LPC1768) is used by the mbed library, but if I don't need the mbed library, can I use Timer3 for my own purposes, by writing directly to its registers? I do that with many other peripherals, and they work fine. However, Timer3 does strange things, as if "someone else" was changing the value of some of its registers, once in a while. I have a piezo buzzer connected between MAT3.0 and MAT3.1, and I want to drive it with a variable (audio) frequency signal.
My question: the mbed library writes into the Timer3 registers only once at the beginning, or every once in a while?
Thanks.