打印
[其它]

使用CM4内核自带systick产生中断demo

[复制链接]
939|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ArterySW|  楼主 | 2021-4-22 10:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用CM4内核自带systick产生中断demo

本demo使用CM4内核自带的systick定时器产生ms级中断,示例代码如下:

void SysTick_Init()
{
  /*Config Systick*/
  SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK);

  /* SystemCoreClock / (1000U) : ms tick */
  SysTick->LOAD  = (uint32_t)((SystemCoreClock / (1000U)) - 1UL);
  NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL);
  SysTick->VAL   = 0UL;
  SysTick->CTRL  = SysTick_CTRL_CLKSOURCE_Msk |
                   SysTick_CTRL_TICKINT_Msk   |
                   SysTick_CTRL_ENABLE_Msk;
}
通过以上配置可使systick产生1ms中断,中断处理函数入口为:
void SysTick_Handler(void)
{
}


将以上代码复制到AT32 BSP内任意工程中即可使用!


使用特权

评论回复
沙发
xcvista| | 2021-4-22 11:39 | 只看该作者
造轮子?CMSIS 里面我记得有一个函数就是这个功能的?

使用特权

评论回复
板凳
muyichuan2012| | 2021-4-22 12:17 | 只看该作者
是的  但是有个客户还是找不到,写在这里一劳永逸吧。

使用特权

评论回复
地板
隋士龙| | 2022-4-13 07:22 | 只看该作者
SysTick   使用资料  数据手册上没有。如何配置,如何使能,控制寄存器都有哪些?

使用特权

评论回复
评论
muyichuan2012 2022-4-13 09:07 回复TA
要看Coretex M4内核资料。 
5
muyichuan2012| | 2022-4-13 09:08 | 只看该作者
bsp里也有systick的现成案例,如下
AT32Fxxx_Firmware_Library_V2.x.x\project\at_start_fxxx\examples\cortex_m4\systick_interrupt

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

178

主题

270

帖子

10

粉丝