找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 11958|回复: 21
收起左侧

L298n驱动步进电机源程序 正转 反转 调速 两相四拍八拍都有

  [复制链接]
ID:198138 发表于 2017-5-8 14:55 | 显示全部楼层 |阅读模式
L298n驱动两相四线步进电机四拍、八拍程序
0.png

001、步进电机正转两相四拍程序\
002、步进电机正转两相八拍程序\
003、步进电机反转两相四拍程序\
004、步进电机反转两相八拍程序\
005、步进电机两相四拍调速程序\
006、步进电机两相八拍调速程序\
0.png

单片机源程序:

  1. ////////////////////////汇诚科技////////////////////
  2. ///////////////////步进电机调试程序/////////////

  3. #include<reg52.h>  

  4. /*****P1.0=A ;P1.1=B ;P1.2=B' ; P1.3=A'****/
  5. //////////////////////////////////////////////////////////////////////////////////////////////
  6. /*******************************正转数组**************************************************/
  7.   code unsigned char runz[8]={0x05,0x01,0x09,0x08,0x0a,0x02,0x06,0x04};  //两相四线八拍工作方式
  8. /*******************************反转数组**************************************************/
  9.   code unsigned char runf[8]={0x04,0x06,0x02,0x0a,0x08,0x09,0x01,0x05};  //两相四线八拍工作方式
  10. unsigned char keycan=0;                //键值
  11. unsigned char s,i,j,k,z;

  12. int y=30;//定义转动速度,数值越大电机转速越慢反之则快

  13. sbit P2_0=P2^0;//正转按键
  14. sbit P2_1=P2^1;//反转按键
  15. sbit P2_2=P2^2;//电机加速
  16. sbit P2_3=P2^3;//电机减速

  17. void delay(i)//延时函数
  18.   {
  19.       for(j=0;j<i;j++)
  20.       for(k=0;k<250;k++);
  21.   }



  22. void zrun()// 正转运行
  23. {

  24.    for(z=0;z<8;z++)
  25.        {
  26.          P1=runz[z];
  27.          delay(y);
  28.        }
  29. }

  30. void frun()// 反转运行
  31. {
  32.      for(z=0;z<8;z++)
  33.         {
  34.             P1=runf[z];
  35.             delay(y);
  36.          }
  37. }

  38. main()
  39. {
  40.    while(1)
  41.     {
  42.        if(P2_0==0) //如果电机正转按键按下
  43.       {
  44.         keycan=1;         //键值等于1
  45.       }
  46.          if(P2_1==0) //如果电机反转按键按下
  47.       {
  48.         keycan=2;         //键值等于2
  49.        }
  50.                      switch (keycan)
  51.                     {
  52.                      case 1: zrun();  //键值等于1 正转
  53.                                  break;
  54.                      case 2: frun();  //键值等于2 反转
  55.                      break;

  56.                      }

  57.              if(P2_2==0)  //  电机加速
  58.       {
  59.         y+=5;
  60.       }
  61.          if(P2_3==0)
  62.       {                         // 电机减速


  63. …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码

完整资料打包下载:
参考例程包.zip (89.58 KB, 下载次数: 429)

评分

参与人数 1黑币 +5 收起 理由
gzj729 + 5 很给力!

查看全部评分

回复

使用道具 举报

ID:220465 发表于 2017-7-21 19:49 | 显示全部楼层
谢谢楼主分享  学习到了很多 ~~~
回复

使用道具 举报

ID:89443 发表于 2017-10-11 09:15 | 显示全部楼层
学习了,谢谢分享
回复

使用道具 举报

ID:242665 发表于 2017-10-25 08:52 来自手机 | 显示全部楼层
好东西好东西
回复

使用道具 举报

ID:254073 发表于 2017-11-27 17:00 | 显示全部楼层
谢谢楼主
回复

使用道具 举报

ID:257114 发表于 2017-12-4 23:48 | 显示全部楼层
楼主 找不到连接 下载不了
回复

使用道具 举报

ID:277261 发表于 2018-1-18 10:06 | 显示全部楼层
学习了,谢谢分享
回复

使用道具 举报

ID:291140 发表于 2018-3-15 00:38 来自手机 | 显示全部楼层
可以啊。。。
回复

使用道具 举报

ID:91691 发表于 2018-3-15 07:50 | 显示全部楼层
学习了,谢谢分享
回复

使用道具 举报

ID:291647 发表于 2018-3-15 09:21 | 显示全部楼层
资料很好,谢谢,
回复

使用道具 举报

ID:298477 发表于 2018-3-28 18:34 | 显示全部楼层
感谢楼主分享
回复

使用道具 举报

ID:300570 发表于 2018-4-1 22:22 | 显示全部楼层
这个文件帮了我大忙,感谢楼主
回复

使用道具 举报

ID:310102 发表于 2018-4-20 16:23 | 显示全部楼层
不错 学习学习
回复

使用道具 举报

ID:220355 发表于 2018-5-10 22:09 | 显示全部楼层
L298N驱动不能反转,是怎么回事啊?求解
回复

使用道具 举报

ID:213277 发表于 2018-5-10 22:58 | 显示全部楼层
楼主大人,有没有4驱动的298程序
回复

使用道具 举报

ID:327045 发表于 2018-5-11 15:13 | 显示全部楼层
好东西值得收藏收藏!!!!!
回复

使用道具 举报

ID:327903 发表于 2018-5-11 21:24 | 显示全部楼层
/*****P1.0=A ;P1.1=B ;P1.2=B' ; P1.3=A'****/和code unsigned char runz[8]={0x05,0x01,0x09,0x08,0x0a,0x02,0x06,0x04};  这个编码错的。同意的举手
回复

使用道具 举报

ID:326699 发表于 2018-5-30 11:27 | 显示全部楼层
可以发下电路吗
回复

使用道具 举报

ID:286586 发表于 2018-6-14 12:32 | 显示全部楼层
看看 学习学习
回复

使用道具 举报

ID:125613 发表于 2018-8-19 18:57 | 显示全部楼层
没硬件接线图啊

回复

使用道具 举报

ID:586952 发表于 2019-8-2 14:51 | 显示全部楼层
啊啊啊啊,大佬我的积分不够。可以给我发下吗?1050690991@qq.com
回复

使用道具 举报

ID:106852 发表于 2020-2-6 17:03 | 显示全部楼层
感谢分享!
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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