ESP8266 Developer Zone The Official ESP8266 Forum 2017-04-16T14:25:01+08:00 https://bbs.espressif.com:443/feed.php?f=49&t=2537 2017-04-16T14:25:01+08:00 2017-04-16T14:25:01+08:00 https://bbs.espressif.com:443/viewtopic.php?t=2537&p=12346#p12346 <![CDATA[Re: TIMERS]]> Statistics: Posted by magres — Sun Apr 16, 2017 2:25 pm


]]>
2017-03-06T17:02:37+08:00 2017-03-06T17:02:37+08:00 https://bbs.espressif.com:443/viewtopic.php?t=2537&p=11434#p11434 <![CDATA[Re: TIMERS]]> I've gone through hardware timer APIs in 8266 API guide, but still from it and given sample code in hw_timer.c and .h files, i'm not clear about hardware timer's operations. earlier it was mentioned like detailed documents would be released soon. so is there any reference material available for further understanding? or i'm left with that API guide and hw_timer.c and .h, provided in SDK, only?

i'd appreciate your help or advice.

Statistics: Posted by rajkumar patel — Mon Mar 06, 2017 5:02 pm


]]>
2016-10-13T11:17:27+08:00 2016-10-13T11:17:27+08:00 https://bbs.espressif.com:443/viewtopic.php?t=2537&p=10141#p10141 <![CDATA[Re: TIMERS]]>
I have attached the timer register map. This should be useful!
8m-esp8266_interface_timer_registers_release_18-11-2014.xlsx

Statistics: Posted by Guest — Thu Oct 13, 2016 11:17 am


]]>
2016-10-10T21:26:37+08:00 2016-10-10T21:26:37+08:00 https://bbs.espressif.com:443/viewtopic.php?t=2537&p=10102#p10102 <![CDATA[Re: TIMERS]]>
pratik wrote:
Hello,

We will release detailed documentation on the timers soon. The timers are used for timing processes or internal operations, especially in RTOS SDKs and AT firmware code, so it gets a lot more complex than ATmega devices.
Meanwhile, I may try to write an article on this in a couple of days. I will keep the thread updated.


Is soon already now? ;-)

Statistics: Posted by eriksl — Mon Oct 10, 2016 9:26 pm


]]>
2016-08-14T15:57:15+08:00 2016-08-14T15:57:15+08:00 https://bbs.espressif.com:443/viewtopic.php?t=2537&p=8459#p8459 <![CDATA[Re: TIMERS]]>
I understand your concerns, you should know in my case I am using the "bare metal" as much as possible, so there is no RTOS, and no AT code. Also I am moving away from the (non-RTOS) SDK code for PWM, pin change interrupts and timer functions. That would leave little, maybe even none, users of timers outside my own code. I guess that depends on how wlan frames are passed to the SDK code, if that code is using timers and or interrupts.

Statistics: Posted by eriksl — Sun Aug 14, 2016 3:57 pm


]]>
2016-08-12T10:50:21+08:00 2016-08-12T10:50:21+08:00 https://bbs.espressif.com:443/viewtopic.php?t=2537&p=8400#p8400 <![CDATA[Re: TIMERS]]>
We will release detailed documentation on the timers soon. The timers are used for timing processes or internal operations, especially in RTOS SDKs and AT firmware code, so it gets a lot more complex than ATmega devices.
Meanwhile, I may try to write an article on this in a couple of days. I will keep the thread updated.

Statistics: Posted by Guest — Fri Aug 12, 2016 10:50 am


]]>
2016-08-10T20:11:41+08:00 2016-08-10T20:11:41+08:00 https://bbs.espressif.com:443/viewtopic.php?t=2537&p=8378#p8378 <![CDATA[TIMERS]]>
I am missing some detailed information about the hardware (!) timers. Sometimes the software timers or the sdk interface are just not enough. Coming from ATMega devices, where the timers are very thorougly documented and easy to use.

This is the information that I gathered, please correct.

Two timers, FRC1 and FRC2 (once called "frame rate counter", but something "fast real-time clock timer" looks more significant?).

FRC1 counts down, 22 bits resolution, frequency is 80 Mhz divided by 1, 16 or 256, even though this line:

Code:

#define  TIMER_CLK_FREQ                              (APB_CLK_FREQ>>8) //divided by 256

says it's always divided by 256???

FRC2 counts up, 32 bits resolution, frequency is ???

I have found some #defines that tell where to load and read the timer current value. I assume there are no "compare values" like on the ATmega, it simply counts down to zero and then, if configured, fires and interrupt?

When I am using os_timer_* functions (not hw_timer, as documented), I find that any interrupt handler attached to FRC1 is not called. This is not documented. Is that correct? When I change the interrupt source for FRC1_NMI, it is called indeed. Can this be explained?

Is there a way to have an interrupt connected to FRC2? What does the SDK code use FRC2 for itself, will it interfere with SDK code when I use it myself?

Also I found that as soon as the FRC1_NMI is used, the pin change interrupts stop working. This is also not documented. Please explain.

Thanks.

Statistics: Posted by eriksl — Wed Aug 10, 2016 8:11 pm


]]>