OpenEdv-开源电子网

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

用定时器中断 一阶互补滤波计算mpu6050角度程序卡死了

[复制链接]

2

主题

4

帖子

0

精华

新手上路

积分
22
金钱
22
注册时间
2023-7-31
在线时间
5 小时
发表于 2023-8-1 13:25:08 | 显示全部楼层 |阅读模式
2金钱
用的stm32c8t6芯片,与mpu6050通信获取角速度、加速度。然后用定时器中断0.005秒,互补滤波计算角度,在oled上显示。只能显示很短的时间,马上就卡死了。

这是中断函数的代码,是因为中断函数内不能用复杂的浮点数吗?
我把这部分代码直接放在主函数中是不会卡死的,但是误差非常大了。

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

使用道具 举报

2

主题

4

帖子

0

精华

新手上路

积分
22
金钱
22
注册时间
2023-7-31
在线时间
5 小时
 楼主| 发表于 2023-8-1 14:16:37 | 显示全部楼层
本帖最后由 diabolo 于 2023-8-1 16:49 编辑

它是运行一会儿就卡死,前面有几秒是可以正确显示的
回复

使用道具 举报

2

主题

4

帖子

0

精华

新手上路

积分
22
金钱
22
注册时间
2023-7-31
在线时间
5 小时
 楼主| 发表于 2023-8-1 14:19:37 | 显示全部楼层
本帖最后由 diabolo 于 2023-8-1 16:32 编辑

太奇怪了
回复

使用道具 举报

10

主题

3281

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8206
金钱
8206
注册时间
2020-5-11
在线时间
3700 小时
发表于 2023-8-2 09:45:50 | 显示全部楼层
本帖最后由 LcwSwust 于 2023-8-2 09:48 编辑

没见着代码,但是你可以利用示波器测量某段代码耗费的时间,方法:IO置高、运行代码、IO置低,示波器测量这个IO的高电平宽度。
专治疑难杂症
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2024-11-24 04:32

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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