/*** * @Author: * @Date: 2023-04-11 18:46:58 * @LastEditors: xxx * @LastEditTime: 2023-04-11 22:16:47 * @Description: * @email: * @Copyright (c) 2023 by xxx, All Rights Reserved. */ #ifndef _SYS_H #define _SYS_H #include "main.h" #include "lib.h" void sys_nvic_set_vector_table(uint32_t baseaddr, uint32_t offset); /* 设置中断偏移量 */ void sys_standby(void); /* 进入待机模式 */ void sys_soft_reset(void); /* 系统软复位 */ void LL_IncTick(void); /* 系统滴答时钟 */ void sys_millis_reset(void); /* 系统计时器重新开始 */ uint32_t sys_millis(void); /* 获取系统时间 */ uint32_t sys_to_seconds(uint32_t start_time); /* 将系统时间转换为秒 */ // 以下为汇编函数 void sys_wfi_set(void); /* 执行WFI指令 */ void sys_intx_disable(void); /* 关闭所有中断 */ void sys_intx_enable(void); /* 开启所有中断 */ void sys_msr_msp(uint32_t addr); /* 设置栈顶地址 */ void scheduler_time_start(void); uint32_t scheduler_time_stop(void); uint32_t scheduler_time_occupancy_get(uint32_t run_time); #endif