OpenEdv-开源电子网

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

STM32H743 开启UCOSIII擦写flash,CPU停止运行一秒钟

[复制链接]

1

主题

3

帖子

0

精华

新手入门

积分
17
金钱
17
注册时间
2020-7-23
在线时间
9 小时
发表于 2023-9-8 10:24:26 | 显示全部楼层 |阅读模式
20金钱
使用STM32H743平台,程序运行于bank2,擦除bank1的一个扇区,开启UCOSIII,程序会停止运行一秒钟;
擦除一个扇区用时和CPU停止运行时间大致一致,判定停止运行方式是开启了TIMER2定时器中断,在中断服务函数内进行IO口翻转,抓取结果发现停止运行900多毫秒;
在滴答中断处也进行IO口翻转,同样停止运行900多毫秒;
停止运行处为OS_CPU_SysTickHandler->OSIntExitr任务调度导致的,擦flash时CPU需要大约一秒时间,此时是否无法进行任务切换操作并且导致CPU阻塞;
在不开启UCOSIII操作系统时,擦除flash,tim2终端服务函数是可以正常翻转的

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

11

主题

2140

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4837
金钱
4837
注册时间
2015-1-10
在线时间
606 小时
发表于 2023-9-12 09:39:21 | 显示全部楼层
操作flash会关闭所有中断
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-4-18 17:46

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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