找回密码
 立即注册
查看: 380|回复: 1

我做的无刷电机只能转一圈就停了,找不到原因求助

[复制链接]
  • 打卡等级:以坛为家II
  • 打卡总天数:434
  • 最近打卡:2025-05-01 20:16:58
已绑定手机

229

主题

328

回帖

1471

积分

金牌会员

积分
1471
发表于 2024-12-5 20:43:36 | 显示全部楼层 |阅读模式
反电动势过零图.png


整体的思路还是用的梁工的例子,在他的基础上做了些修改

我在每个反电动势下降沿采用外部低电平中断,电动势高电平只能从上一个过零点到低电平触发计算时间,这里我用的定时器0计算时间

电机的速度不会激变,所以只需要测得上一个过零点到低电平触发的时间,给下一个过零点到高电平触发做延时,延时依旧用定时器0

QQ20241205-203347.png

测得的延时时间用0减去在赋值给定时器0初始值,这样就能用作触发高电平延时了

核对了六步换相函数好多次,没发现问题,可实际电机只转一圈就停了

不得已求助网友我的逻辑和代码有没有问题,原理图都在附件里了,这里低电平触发的外部中断分别是 CMPA为外部中断3

CMPB和CMPC是P1口中断,感谢大家帮我看下

方波无刷电机驱动.7z (16.16 MB, 下载次数: 28)
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:423
  • 最近打卡:2025-05-01 07:10:25
已绑定手机

76

主题

4833

回帖

8343

积分

超级版主

DebugLab

积分
8343
发表于 2024-12-5 22:21:58 | 显示全部楼层
DebugLab
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-2 06:42 , Processed in 0.132821 second(s), 57 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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