mirror of
				https://github.com/espressif/esp-idf.git
				synced 2025-11-03 22:08:28 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			28 lines
		
	
	
		
			701 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			701 B
		
	
	
	
		
			C
		
	
	
	
	
	
#include <stdio.h>
 | 
						|
#include "unity.h"
 | 
						|
 | 
						|
#include "esp_private/system_internal.h"
 | 
						|
#include "esp_private/esp_clk.h"
 | 
						|
 | 
						|
TEST_CASE("Test effect of rtc clk calibration compensation on system time", "[esp_system]")
 | 
						|
{
 | 
						|
    uint32_t prev_cal = esp_clk_slowclk_cal_get();
 | 
						|
    int64_t t1 = esp_system_get_time();
 | 
						|
 | 
						|
    // Modify calibration value
 | 
						|
    esp_clk_slowclk_cal_set(prev_cal/2);
 | 
						|
 | 
						|
    // Internally, the origin point of rtc clk has been adjusted
 | 
						|
    // so that t2 > t1 remains true
 | 
						|
    int64_t t2 = esp_system_get_time();
 | 
						|
 | 
						|
    TEST_ASSERT_GREATER_THAN(t1, t2);
 | 
						|
 | 
						|
    // Restore calibration value
 | 
						|
    esp_clk_slowclk_cal_set(prev_cal);
 | 
						|
 | 
						|
    t2 = esp_system_get_time();
 | 
						|
 | 
						|
    TEST_ASSERT_GREATER_THAN(t1, t2);
 | 
						|
}
 |