标题: ULN2003步进电机 含正反转 加速 减速单片机程序 [打印本页]

作者: angelayang    时间: 2017-6-8 21:21
标题: ULN2003步进电机 含正反转 加速 减速单片机程序
51单片机+ULN2003控制步进电机的资料大分享包含正转 反转 加速 减速 程序.

电路原理图:


ULN2003芯片的中文资料:




ULN2003步进电机加速源码:
  1. /*******************************************************
  2. ULN2003驱动5V减速步进电机程序
  3. Target:STC89C52RC-40C
  4. Crystal:12MHz
  5. Author:战神单片机工作室
  6. Platform:51&avr单片机最小系统板+ULN2003步进电机驱动套件
  7. *******************************************************
  8. 接线方式:
  9. IN1 ---- P00
  10. IN2 ---- P01
  11. IN3 ---- P02
  12. IN4 ---- P03
  13. +   ---- +5V
  14. -   ---- GND
  15. *********************/
  16. #include<reg52.h>
  17. #define uchar unsigned char
  18. #define uint  unsigned int
  19. #define MotorData P0                    //步进电机控制接口定义
  20. uchar phasecw[4] ={0x08,0x04,0x02,0x01};//正转 电机导通相序 D-C-B-A
  21. uchar phaseccw[4]={0x01,0x02,0x04,0x08};//反转 电机导通相序 A-B-C-D
  22. uchar speed;
  23. //ms延时函数
  24. void Delay_xms(uint x)
  25. {
  26. uint i,j;
  27. for(i=0;i<x;i++)
  28.   for(j=0;j<112;j++);
  29. }
  30. //顺时针转动
  31. void MotorCW(void)
  32. {
  33. uchar i;
  34. for(i=0;i<4;i++)
  35.   {
  36.    MotorData=phasecw[i];
  37.    Delay_xms(speed);//转速调节
  38.   }
  39. }
  40. //停止转动
  41. void MotorStop(void)
  42. {
  43. MotorData=0x00;
  44. }
  45. //主函数
  46. void main(void)
  47. {
  48. uint i;
  49. Delay_xms(50);//等待系统稳定
  50. speed=4;
  51. while(1)
  52. {
  53. for(i=0;i<10;i++)
  54.   {
  55.    MotorCW();  //顺时针转动
  56.   }  
  57.   speed++;     //加速
  58.   /*if(speed>25)  
  59.   {
  60.    speed=4;    //重新开始加速运动
  61.    MotorStop();
  62.    Delay_xms(500);
  63.   } */
  64. }
  65. }
复制代码

正反转源程序如下:
  1. /*******************************************************
  2. ULN2003驱动5V减速步进电机程序
  3. Target:STC89C52RC-40C
  4. Crystal:12MHz
  5. Author:战神单片机工作室
  6. Platform:51&avr单片机最小系统板+ULN2003步进电机驱动套件
  7. *******************************************************
  8. 接线方式:
  9. IN1 ---- P00
  10. IN2 ---- P01
  11. IN3 ---- P02
  12. IN4 ---- P03
  13. +   ---- +5V
  14. -   ---- GND
  15. *********************/
  16. #include<reg52.h>
  17. #define uchar unsigned char
  18. #define uint  unsigned int
  19. #define MotorData P0                    //步进电机控制接口定义
  20. uchar phasecw[4] ={0x08,0x04,0x02,0x01};//正转 电机导通相序 D-C-B-A
  21. uchar phaseccw[4]={0x01,0x02,0x04,0x08};//反转 电机导通相序 A-B-C-D
  22. //ms延时函数
  23. void Delay_xms(uint x)
  24. {
  25. uint i,j;
  26. for(i=0;i<x;i++)
  27.   for(j=0;j<112;j++);
  28. }
  29. //顺时针转动
  30. void MotorCW(void)
  31. {
  32. uchar i;
  33. for(i=0;i<4;i++)
  34.   {
  35.    MotorData=phasecw
  36. ];
  37.    Delay_xms(4);//转速调节
  38.   }
  39. }
  40. //逆时针转动
  41. void MotorCCW(void)
  42. {
  43. uchar i;
  44. for(i=0;i<4;i++)
  45.   {
  46.    MotorData=phaseccw[i];
  47.    Delay_xms(4);//转速调节
  48.   }
  49. }
  50. //停止转动
  51. void MotorStop(void)
  52. {
  53. MotorData=0x00;
  54. }
  55. //主函数
  56. void main(void)
  57. {
  58. uint i;
  59. Delay_xms(50);//等待系统稳定
  60. while(1)
  61. {
  62.   for(i=0;i<500;i++)
  63.   {
  64.    MotorCW();   //顺时针转动
  65.   }
  66.   MotorStop();  //停止转动
  67. ……………………

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

所有资料51hei提供下载:
ULN2003 步进电机扩展板资料.zip (436.59 KB, 下载次数: 217)




作者: bbs99cn    时间: 2017-6-18 19:08
好资料啊
作者: bbs99cn    时间: 2017-6-18 19:09
学习了
作者: 喝了二两小瑞瑞    时间: 2018-5-19 08:50
求资料

作者: Tarantino丶    时间: 2018-5-19 10:01
好资料
作者: 陈渐渐    时间: 2018-5-19 18:50
好资料
作者: fireboo    时间: 2018-5-21 16:12
好资料
作者: fireboo    时间: 2018-5-21 16:12

好资料学习了
作者: fireboo    时间: 2018-5-21 16:21
un2003 步进电机 正反转
作者: 滑落的哀伤    时间: 2018-6-28 15:36
谢谢楼主分享,好资料。!!!
作者: dyx811    时间: 2018-10-16 18:19
谢谢,好资料,我学习了
作者: 好又快维修部    时间: 2018-10-18 11:01
楼主厉害啊
作者: conquer123    时间: 2018-10-22 20:02
好资料啊,谢谢楼主啦!
作者: yuanlinlin    时间: 2018-12-8 23:17
好资料,谢谢分享!
作者: yuanlinlin    时间: 2018-12-10 22:15
谢谢分享!
作者: duke713    时间: 2019-3-8 13:26
手上刚好有这个,学习学习,谢谢楼主
作者: 15243668539    时间: 2019-4-15 23:42
很给力
作者: 15243668539    时间: 2019-4-15 23:43
学习了
作者: 黑白枫叶    时间: 2019-6-2 13:44
好资料
作者: 15872848655    时间: 2019-7-11 16:49
请问ULN2003和步进电机怎么接啊?
作者: CCCDDS    时间: 2019-7-13 16:15
很厉害




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1