| 
									
										
										
										
											2024-09-28 14:24:04 +08:00
										 |  |  | /****************************************************************************
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Copyright(c) 2019 by Aerospace C.Power (Chongqing) Microelectronics. ALL RIGHTS RESERVED. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | This Information is proprietary to Aerospace C.Power (Chongqing) Microelectronics and MAY NOT | 
					
						
							|  |  |  | be copied by any method or incorporated into another program without | 
					
						
							|  |  |  | the express written consent of Aerospace C.Power. This Information or any portion | 
					
						
							|  |  |  | thereof remains the property of Aerospace C.Power. The Information contained herein | 
					
						
							|  |  |  | is believed to be accurate and Aerospace C.Power assumes no responsibility or | 
					
						
							|  |  |  | liability for its use in any way and conveys no license or title under | 
					
						
							|  |  |  | any patent or copyright and makes no representation or warranty that this | 
					
						
							|  |  |  | Information is free from patent or copyright infringement. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ****************************************************************************/ | 
					
						
							|  |  |  | #ifndef IOT_CLOCK_H
 | 
					
						
							|  |  |  | #define IOT_CLOCK_H
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #ifdef __cplusplus
 | 
					
						
							|  |  |  | extern "C" { | 
					
						
							|  |  |  | #endif
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | int32_t system_clock_init(void); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | /**
 | 
					
						
							|  |  |  |  * @brief   iot_delay_us - circular wait for delay time independent of os. | 
					
						
							|  |  |  |  * @param us            [delay time (unit us).] | 
					
						
							|  |  |  |  * @return              [none.] | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | void iot_delay_us(uint32_t us); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | /**
 | 
					
						
							|  |  |  |  * @brief   iot_delay_us_cpu_cycle - circular wait for delay time | 
					
						
							|  |  |  |  *  independent of os, use cpu cycle. | 
					
						
							|  |  |  |  * @param us            [delay time (unit us).] | 
					
						
							|  |  |  |  * @return              [none.] | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | void iot_delay_us_cpu_cycle(uint32_t us); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-01-09 14:28:39 +08:00
										 |  |  | void iot_delay_cpu_cycle(uint32_t c); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-09-28 14:24:04 +08:00
										 |  |  | void system_cpu_sleep(); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | void system_cpu_wakeup(); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #ifdef __cplusplus
 | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | #endif
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #endif //IOT_CLOCK_H
 |