systick中断逻辑包括void SysTick_Handler(void)。
SysTick是arm处理器中一个24位的系统计时器,向下递减,主要用于系统节拍数的计算,stm32使用的也乱唤是arm的处理器,它的中断函数叫void SysTick_Handler(void)。
SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK_Div8);//SysTick时钟源为AHB时钟除以8。
SysTick_SetReload(9000);//SysTick重装载值为9000。
SysTick_ITConfig(ENABLE);//使能型竖SysTick中断。
NVIC_SystemHandlerPriorityConfig(SystemHandler_SysTick。
中断源识别
当系统中有多个中断源时,一旦有中断请求,CPU必须确定是哪一个中断源提出的中断请求,并由中断控制哗租凯器给出中断服务子程序的入口地址,装入CS与IP/EIP两个寄存器。CPU转入相应的中断服务子程序开始执行。
主程序和中断服务子程序都要使用CPU内部寄存器等资源,为使中断处理程序不破坏主程序中寄存器的内容,应先将断点处各寄存器的内容压入堆栈保护起来,再进入的中断处理。现场保护是由用户使用PUSH指令来实现的。
中断服务子程序不能直接调用,蚂铅因为它们是特殊的程序,它们的功能是在 *** 作系统中运行,而不是在应用程序中运行。它们可以在 *** 作系统中执行特定的任务,比如处理系统中的中断,但闷差好是它们不能直接被应用程序调用。因此,如果要调用中断服务子程序,必须使用 *** 作系统提供的特殊接口,这些接口可以让应用程序调用中断服务子程序庆仿。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)