找回密码
 立即注册
楼主: 梁工

51开源,步进电机驱动 程序, 直接驱动, 或驱动步进电机驱动器 一共8个程序

 火.. [复制链接]
  • 打卡等级:偶尔看看I
  • 打卡总天数:15
  • 最近打卡:2025-03-26 09:09:59

6

主题

104

回帖

353

积分

中级会员

积分
353
发表于 2024-10-24 08:37:44 | 显示全部楼层
梁*** 发表于 2024-10-23 18:09
你这个320是什么参数?我一直不明白,回了这么多贴,怎么还是没改好?就改一下ARR,换个正弦表,改变占空 ...

梁工,最后这一点占空比按16位装载,在哪里设置,我怎么没有找到呢

点评

我抽时间改好了,发给你:  详情 回复 发表于 2024-10-24 20:16
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:299
  • 最近打卡:2026-03-06 09:14:52

84

主题

7283

回帖

1万

积分

超级版主

积分
15618
发表于 2024-10-24 20:16:11 | 显示全部楼层
huatl*** 发表于 2024-10-24 08:37
梁工,最后这一点占空比按16位装载,在哪里设置,我怎么没有找到呢

我抽时间改好了,发给你:

两相步进电机-细分驱动-STC8H-高级PWMB输出.rar (325.53 KB, 下载次数: 285)

回复

使用道具 举报 送花

已绑定手机

0

主题

1

回帖

4

积分

新手上路

积分
4
发表于 2024-11-7 14:04:25 | 显示全部楼层
梁工你好!加速时间慢,调哪个参数。

点评

#define UpTime 100 //加(减)速时间(ms)  详情 回复 发表于 2024-11-7 15:36
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:299
  • 最近打卡:2026-03-06 09:14:52

84

主题

7283

回帖

1万

积分

超级版主

积分
15618
发表于 2024-11-7 15:36:18 | 显示全部楼层
mvxr*** 发表于 2024-11-7 14:04
梁工你好!加速时间慢,调哪个参数。

#define        UpTime        100                //加(减)速时间(ms)
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:295
  • 最近打卡:2026-03-06 13:10:58
已绑定手机

7

主题

55

回帖

421

积分

中级会员

积分
421
发表于 2024-11-11 10:07:42 | 显示全部楼层
要是用tmc2209步进电机驱动芯片来做的话直接采用脉冲版本就可以吧

点评

是的,直接发脉冲和方向信号即可。  详情 回复 发表于 2024-11-11 11:08
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:299
  • 最近打卡:2026-03-06 09:14:52

84

主题

7283

回帖

1万

积分

超级版主

积分
15618
发表于 2024-11-11 11:08:02 | 显示全部楼层
海底*** 发表于 2024-11-11 10:07
要是用tmc2209步进电机驱动芯片来做的话直接采用脉冲版本就可以吧

是的,直接发脉冲和方向信号即可。
回复

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:53
  • 最近打卡:2024-12-27 08:18:49

0

主题

116

回帖

104

积分

注册会员

积分
104
发表于 2024-11-11 12:39:14 | 显示全部楼层
学习了
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:295
  • 最近打卡:2026-03-06 13:10:58
已绑定手机

7

主题

55

回帖

421

积分

中级会员

积分
421
发表于 2024-11-14 08:19:08 | 显示全部楼层
梁*** 发表于 2024-11-11 11:08
是的,直接发脉冲和方向信号即可。

谢谢梁工了
回复

使用道具 举报 送花

  • 打卡等级:以坛为家III
  • 打卡总天数:744
  • 最近打卡:2026-03-07 00:13:30

10

主题

107

回帖

3023

积分

论坛元老

积分
3023
发表于 2024-11-15 14:02:45 | 显示全部楼层
用 STC8G1K08-20P,ULN2003A ,驱动 28BYJ-48歨进电机的电路是不是有问题,上电没反应,断开P30就可以正常上电。
但是上电后启动M3步进电机时,电机一直在振动,要帮它扭一扭转轴才能转起来,
我在KEIL里手动仿真,发现在第一次循环到 case 3 结束之后会异常 跳转到扫描按键的中断里面去,之后就能正常循环
if (ucKeySec == 1)
    {
        switch(num2)
            {
                    case 0:M3A = 1;M3B = 0;M3C = 0;M3D = 0;break;
                    case 1:M3A = 1;M3B = 1;M3C = 0;M3D = 0;break;
                    case 2:M3A = 0;M3B = 1;M3C = 0;M3D = 0;break;
                    case 3:M3A = 0;M3B = 1;M3C = 1;M3D = 0;break;
                    case 4:M3A = 0;M3B = 0;M3C = 1;M3D = 0;break;
                    case 5:M3A = 0;M3B = 0;M3C = 1;M3D = 1;break;
                    case 6:M3A = 0;M3B = 0;M3C = 0;M3D = 1;break;
                    case 7:M3A = 1;M3B = 0;M3C = 0;M3D = 1;break;
            }
            delay1m(3);
        num2++;
            if(num2 == 8)num2 = 0;
    }

    if (Ir2_time == 1)
    {
        ucKeySec = 0;
        sec_flag = 1;
        if (sec_cnt == 3)
        {
            static int cyc1 = 1529;
            sec_cnt = 0;
            sec_flag = 0;
            while (cyc1--)   
            {
              switch(num1)
               {
                     case 0:M2A = 1;M2B = 0;M2C = 0;M2D = 0;break;
                     case 1:M2A = 1;M2B = 1;M2C = 0;M2D = 0;break;
                     case 2:M2A = 0;M2B = 1;M2C = 0;M2D = 0;break;
                     case 3:M2A = 0;M2B = 1;M2C = 1;M2D = 0;break;    //这里,在弟一次运行到这行结束后会跳转到按键扫描中断里,第2次及以后就可正常循环到 case 4
                     case 4:M2A = 0;M2B = 0;M2C = 1;M2D = 0;break;
                     case 5:M2A = 0;M2B = 0;M2C = 1;M2D = 1;break;
                     case 6:M2A = 0;M2B = 0;M2C = 0;M2D = 1;break;
                     case 7:M2A = 1;M2B = 0;M2C = 0;M2D = 1;break;
                }
                delay1m(3);
                //num1++;
                if(++num1 == 8)num1 = 0;
            }
            Ir2_time = 0;
            ucKeySec = 1;
        }
    }
}

void TM0_Isr() interrupt 1
{
    TF0 = 0;  /*清除中断标志*/
    TR0 = 0;  /*关中断*/
    /*扫描按键*/
    Key_Scan();
    TL0 = 0xCD; //设置定时初值
    TH0 = 0xD4; //设置定时初值
    TR0 = 1; /*开中断*/
}
截图202411151348026273.jpg
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:288
  • 最近打卡:2026-03-07 06:02:51

17

主题

141

回帖

1762

积分

金牌会员

积分
1762
发表于 2024-12-5 09:58:34 | 显示全部楼层

对应的驱动图是手册上的吗

回复

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2026-3-7 07:13 , Processed in 0.122481 second(s), 104 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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