[PIC32/SAM]

【ATSAMD51EVK测评报告】-3- SysTick的使用

[复制链接]
4836|0
手机看帖
扫描二维码
随时随地手机跟帖
南来之风|  楼主 | 2022-12-3 20:26 | 显示全部楼层 |阅读模式
AMD, TI, ck, ev
本帖最后由 南来之风 于 2022-12-3 20:26 编辑

笔者在这篇文章介绍如何在Harmony环境下配置使用ATSAMD51(Cortex M4内核)的Systick。系统滴答(SysTick)定时器是一个非常基本的倒计时定时器,用于在每隔一 定的时间产生一个中断,即使是系统在睡眠模式下也能工作,是一个非常基本的内核外设。

MCC进入,然后选择Harmony界面。
56468638b3f19c7ae0.png

在System点击,右侧配置选项处,展开System,展开Systick,勾选 Enable Systick,以及Systick Interrupt。
79893638b3f50259e5.png

点击左侧”Generate“生成代码
7924638b3f65afa3d.png


切换到代码编辑界面前,必须认真查看输出窗口没有error
63494638b36247d152.png

没有error后,再次点击MCC按钮,切换到代码编辑界面。这里直接修改main.c:
void timeout_handler(uintptr_t context)
{
    static int cnt = 0;
   
    if(cnt == 1000){
        GPIO_PC18_User_LED0_Toggle();
        cnt = 0;
    }else
        cnt++;
        
}

int main(){
...
    SYSTICK_TimerCallbackSet(&timeout_handler, (uintptr_t) NULL);
    SYSTICK_TimerStart();
...
}


最终效果:
QQMail_0.gif

使用特权

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

本版积分规则

63

主题

282

帖子

2

粉丝