[AT32 WorkBench] AT32 WorkBench常用功能7--Systick中断配置

[复制链接]
7587|5
 楼主| muyichuan2012 发表于 2024-5-11 16:11 | 显示全部楼层 |阅读模式
本帖最后由 muyichuan2012 于 2025-9-28 09:59 编辑

AT32WorkBench常用功能7--Systick中断配置

AT32 WorkBench官网使用教程链接:
https://www.arterytek.com/cn/support/tools.jsp?index=0

本文主要介绍如何基于AT32 WorkBench配置Systick中断
硬件环境
l  AT-START-F423
l  逻辑分析仪

软件环境
l  AT32 Workbench
l  MDK5
l  DSView


配置步骤
1 打开AT32 WorkBench新建AT32F423工程
95515663f279e9c608.png

2 配置系统时钟(如果使用默认内部HICK倍频到150MHz,客户跳过此步骤2
2.1 打开外设CRM配置HEXT为时钟振荡器,如下图
6380663f27b8e74fb.png

2.2 打开时钟配置
7544467ecdfbe4d238.png

3 开启Systick中断,在SYSTEM上勾选SysTick中断,并配置中断频率为50Hz,如下图
4554167ece006368ca.png


4 配置PA1为push output,用于观察Systick中断
70977663f2803c8408.png

5 点击“生成代码”生成MDK5代码工程
77621663f281a87405.png


6 在Systick中断中添加GPIO toggle代码
在at32f423_int.c文件中的void SysTick_Handler(void)函数加入PA1翻转函数,
  1. void SysTick_Handler(void)
  2. {
  3.   /* add user code begin SysTick_IRQ 0 */

  4.       gpio_bits_toggle(GPIOA,GPIO_PINS_1);

  5.   /* add user code end SysTick_IRQ 0 */


  6.   /* add user code begin SysTick_IRQ 1 */

  7.   /* add user code end SysTick_IRQ 1 */
  8. }

7 在MDK5上编译,并下载代码到AT32F423 MCU 上

8 复位运行AT32F423 MCU,用逻辑分析仪观察PA1上翻转频率,波形如下图   
注意:因为是每20 ms PA1翻转一次,所以下降沿到下降沿的周期就应该为40 ms,如下图
96644663f282fd9fd6.png

LEDyyds 发表于 2024-5-14 11:01 | 显示全部楼层
如果延时函数怎么配置
feiante 发表于 2024-12-23 15:50 | 显示全部楼层
为什么我配置后,没进入中断

评论

可下载最新版AT32 Workbench,已支持delay函数的自动配置, 在外设SYSTEM选择时基源即可. 下载链接 :https://www.arterytek.com/cn/support/index.jsp?index=5  发表于 2024-12-26 16:06
 楼主| muyichuan2012 发表于 2024-12-23 16:11 | 显示全部楼层
本帖最后由 muyichuan2012 于 2024-12-23 16:22 编辑

最新版本可以通在外设SYSTEM 时基源勾选 Systick,然后就可以进Systick中断了
旧年胶片 发表于 2025-8-29 14:13 | 显示全部楼层
AT32 WorkBench 配置 Systick 中断:在时钟配置中设系统时钟频率,SysTick 配置页设置重载值(定时时间 = 重载值 / 时钟频率),使能中断。生成代码后,在 SysTick_Handler 函数中编写定时任务。调试时可在中断函数设断点,查看触发周期,通过修改重载值调整定时精度。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

215

主题

2077

帖子

37

粉丝
快速回复 在线客服 返回列表 返回顶部