[原创] 【新版CH554评测】CH554开发板驱动步进电机转动

jinglixixi   2018-4-16 16:05 楼主
CH554开发板驱动的步进电机型号为28BYJ-48,由于其工作电流相对较大,故需要配相应的驱动芯片,这里选用的芯片为ULN2003,整体电路如图所示。
图片1.png
线路构成
1.驱动芯片ULN2003
ULN2003驱动芯片由7达林顿电路构成,其中的每一达林顿电路都串联一个2.7K 的基极电阻,5V 的工作电压下它能与TTL CMOS 电路直接相连,可以直接处理原先需要标准逻辑缓冲器来处理的数据。
ULN2003 工作电压高,工作电流大,灌电流可达500mA,并且能够在关态时承受50V 的电压,输出还可以在高负载电流并行运行。
图片2.png
ULN2003芯片引脚图
2. 45线制步进电机
28BYJ-4845线制减速步进电机,它共有5条引线,其中VCC接电机的中心抽头线(一般为红色),其它4条接电机的A,B,C,D相。该电机的直径为28mm,电压:5V,步进角度:5.625 x 1/64,减速比:1/64。
图片3.png
3.步进电机控制
为使用CH554开发板控制步进电机的转动,对相应引脚的定义如下:
sbit MA = P3^0;
sbit MB = P3^1;
sbit MC = P3^2;
sbit MD = P3^3;
使用正反转的程序如下:
  1. void main( )
  2. {
  3. UINT8 X;
  4. UINT8 Y;
  5. CfgFsys(); mDelaymS(20);
  6. //设置P3.0~P3.3为输出模式
  7. Port3Cfg(1,0);
  8. Port3Cfg(1,1);
  9. Port3Cfg(1,2);
  10. Port3Cfg(1,3);
  11. MA=0;
  12. MB=0;
  13. MC=0;
  14. MD=0;
  15. //正向转动2周
  16. for(X=0;X<192;X++)
  17. {
  18. for(Y=0;Y<8;Y++)
  19. {
  20. MD=0;
  21. MA=1; //A
  22. mDelaymS(1);
  23. MB=1; //AB
  24. mDelaymS(1);
  25. MA=0; //B
  26. mDelaymS(1);
  27. MC=1; //BC
  28. mDelaymS(1);
  29. MB=0; //C
  30. mDelaymS(1);
  31. MD=1; //CD
  32. mDelaymS(1);
  33. MC=0; //D
  34. mDelaymS(1);
  35. MA=1; //DA
  36. mDelaymS(1);
  37. }
  38. }
  39. mDelaymS(100);
  40. MA=0;
  41. MB=0;
  42. MC=0;
  43. MD=0;
  44. //反向转动2周
  45. for(X=0;X<192;X++)
  46. {
  47. for(Y=0;Y<8;Y++)
  48. {
  49. MD=1;
  50. MA=1; //DA
  51. mDelaymS(1);
  52. MA=0; //D
  53. mDelaymS(1);
  54. MC=1; //CD
  55. mDelaymS(1);
  56. MD=0; //C
  57. mDelaymS(1);
  58. MB=1; //BC
  59. mDelaymS(1);
  60. MC=0; //B
  61. mDelaymS(1);
  62. MA=1; //AB
  63. mDelaymS(1);
  64. MB=0; //A
  65. mDelaymS(1);
  66. }
  67. }
  68. while(1);
  69. }
后续将按预定的制作目标将触摸控制功能引入其中,以实现K1控制正转,K2控制反转等。
此内容由EEWORLD论坛网友jinglixixi原创,如需转载或用于商业用途需征得作者同意并注明出处 本帖最后由 jinglixixi 于 2018-4-16 16:09 编辑

回复评论 (1)

单价1元含税的USB和Touchkey单片机CH551G已大批量出货,试样QQ:1258305301
点赞  2018-4-16 18:38
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复