OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4557|回复: 2

配置SysTick_Config后程序不能全速运行,可以单步执行

[复制链接]

2

主题

7

帖子

0

精华

新手上路

积分
42
金钱
42
注册时间
2018-1-25
在线时间
12 小时
发表于 2020-8-25 16:38:42 | 显示全部楼层 |阅读模式
本帖最后由 六耳鱼儿 于 2020-8-26 09:54 编辑

删除了全部程序,连任务都没有创建,只做LED点亮。调用原子哥的delay_init(),或者标准库的SysTick_Config(),效果一样,程序不能全速运行,但是单步运行可以点亮LED。跟踪滴答时钟寄存器状态,计数也一直在减,减到0会重装载,但就是不进SysTick_Handler中断。
微信图片_20200825163726.png
微信图片_20200826094932.png
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

2

主题

7

帖子

0

精华

新手上路

积分
42
金钱
42
注册时间
2018-1-25
在线时间
12 小时
 楼主| 发表于 2020-8-26 11:42:58 | 显示全部楼层
本帖最后由 六耳鱼儿 于 2020-8-26 13:55 编辑

用定时器3 、4、485串口都分别测试了一下,与滴答定时器一样的效果,不开中断时正常运行,只要任意中断触发程序就飞了。
微信图片_20200826114143.png
回复 支持 反对

使用道具 举报

2

主题

7

帖子

0

精华

新手上路

积分
42
金钱
42
注册时间
2018-1-25
在线时间
12 小时
 楼主| 发表于 2020-8-26 17:14:19 | 显示全部楼层
困扰好几天了,终于找到解决了,原因是system_stm32f4xx.c文件中的 #define VECT_TAB_OFFSET  0x4000。改为0就可以了,由于之前使用了bootloader,导致这里的宏定义忘了改回来。网上转悠了一天,还真找到一样的原因的了。有看到可以作为一个提醒。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-22 16:37

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表