纯文本网站建设,郑州包装设计公司,做电商看的网站有哪些内容,做照片书的模板下载网站好1. 滴答定时器
杰发科技7801内部有一个滴答定时器#xff0c;该定时器是M0核自带的#xff0c;因此可以直接用该定时器来获取时间戳。
同样#xff0c;7803也可以使用该方式获取时间戳。 2. 滴答定时器原理
SysTick是一个24位的递减计数器#xff0c;它从预设的重装载值…1. 滴答定时器
杰发科技7801内部有一个滴答定时器该定时器是M0核自带的因此可以直接用该定时器来获取时间戳。
同样7803也可以使用该方式获取时间戳。 2. 滴答定时器原理
SysTick是一个24位的递减计数器它从预设的重装载值开始每经过一个系统时钟周期计数值就减1。当计数器的值递减到0时如果SysTick中断使能处理器将产生一个SysTick异常异常号通常为15并跳转到SysTick中断服务例程ISR执行相应的中断处理代码。此时计数器会自动从重装载寄存器中重新加载初值开始新一轮的递减计数。 3. 定时器配置 #include ac780x.h
#include timer_sample.h
#include stdint.h#include core_cm0plus.hvoid systick_init(void) {// 配置 SysTick 重装载值为最大值SysTick-LOAD 0xFFFFFF; // 24-bit 最大值// 配置寄存器SysTick-CTRL 0x00010007;
}uint32_t tick_count[100];
unsigned char cou 0;int main(void) {// 初始化 SysTicksystick_init();TIMER_Clock(); //1ms定时器初始化InitDelay();while (1) {if(g_timer0Count){g_timer0Count 0;tick_count[cou] SysTick-VAL;cou;}}return 0;
}
4. 寄存器状态 5. 注意 注意7801自带的Initdelay()也是使用systick
实测初始化delay不影响滴答计数 6. 结果
图中的数值两两相减列出结果48M主频 1ms计数值正确