mirror of
				https://github.com/espressif/esp-idf.git
				synced 2025-10-31 21:14:37 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			61 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| # Example: General Purpose Timer
 | |
| 
 | |
| This example uses the timer group driver to generate timer interrupts at two specified alarm intervals.
 | |
| 
 | |
| ## How to Use Example
 | |
| 
 | |
| ### Hardware Required
 | |
| 
 | |
| * A development board with ESP SoC (e.g., ESP32-DevKitC, ESP-WROVER-KIT, etc.)
 | |
| * A USB cable for Power supply and programming
 | |
| 
 | |
| ### Build and Flash
 | |
| 
 | |
| Run `idf.py -p PORT flash monitor` to build, flash and monitor the project.
 | |
| 
 | |
| (To exit the serial monitor, type ``Ctrl-]``.)
 | |
| 
 | |
| See the [Getting Started Guide](https://docs.espressif.com/projects/esp-idf/en/latest/get-started/index.html) for full steps to configure and use ESP-IDF to build projects.
 | |
| 
 | |
| ## Example Output
 | |
| 
 | |
| ```
 | |
| Timer Group with auto reload
 | |
| Group[0], timer[0] alarm event
 | |
| ------- EVENT TIME --------
 | |
| Counter: 0x0000000000000008
 | |
| Time   : 0.00000160 s
 | |
| -------- TASK TIME --------
 | |
| Counter: 0x0000000000004ed8
 | |
| Time   : 0.00403680 s
 | |
| Timer Group without auto reload
 | |
| Group[1], timer[0] alarm event
 | |
| ------- EVENT TIME --------
 | |
| Counter: 0x00000000017d7848
 | |
| Time   : 5.00000160 s
 | |
| -------- TASK TIME --------
 | |
| Counter: 0x00000000017dcb32
 | |
| Time   : 5.00424680 s
 | |
| Timer Group with auto reload
 | |
| Group[0], timer[0] alarm event
 | |
| ------- EVENT TIME --------
 | |
| Counter: 0x0000000000000008
 | |
| Time   : 0.00000160 s
 | |
| -------- TASK TIME --------
 | |
| Counter: 0x0000000000004dd4
 | |
| Time   : 0.00398480 s
 | |
| ```
 | |
| 
 | |
| ## Functionality Overview
 | |
| 
 | |
| * Two timers are configured
 | |
| * Each timer is set with some sample alarm interval
 | |
| * On reaching the interval value each timer will generate an alarm
 | |
| * One of the timers is configured to automatically reload it's counter value on the alarm
 | |
| * The other timer is configured to keep incrementing and is reloaded by the application each time the alarm happens
 | |
| * Alarms trigger subsequent interrupts, that is tracked with messages printed on the terminal:
 | |
| 
 | |
| ## Troubleshooting
 | |
| 
 | |
| For any technical queries, please open an [issue] (https://github.com/espressif/esp-idf/issues) on GitHub. We will get back to you soon.
 | 
