社区导航

 
快捷导航
  • 首页
  • 论坛
  • 查看新帖
  • 最新回复
  • 社区活动
  • 联系管理员
  • 消灭零回复
  • E金币兑换
  • 干货
搜索
查看: 90|回复: 1

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

[复制链接]

274

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2018-4-16 16:05:40 | 显示全部楼层 |阅读模式
本帖最后由 jinglixixi 于 2018-4-16 16:09 编辑

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.                
  40.           mDelaymS(100);        
  41.           MA=0;
  42.           MB=0;
  43.           MC=0;
  44.           MD=0;
  45.          //反向转动2周        
  46.            for(X=0;X<192;X++)
  47.           {
  48.              for(Y=0;Y<8;Y++)
  49.             {
  50.                  MD=1;
  51.                  MA=1; //DA
  52.                  mDelaymS(1);        
  53.                  MA=0; //D
  54.                  mDelaymS(1);
  55.                  MC=1; //CD
  56.                  mDelaymS(1);
  57.                  MD=0; //C
  58.                  mDelaymS(1);        
  59.                  MB=1; //BC
  60.                  mDelaymS(1);
  61.                  MC=0; //B
  62.                  mDelaymS(1);
  63.                  MA=1; //AB
  64.                  mDelaymS(1);
  65.                  MB=0; //A
  66.                  mDelaymS(1);                        
  67.                }               
  68.         }        
  69.         while(1);
  70. }
复制代码


后续将按预定的制作目标将触摸控制功能引入其中,以实现K1控制正转,K2控制反转等。

此内容由EEWORLD论坛网友jinglixixi原创,如需转载或用于商业用途需征得作者同意并注明出处



此帖出自单片机论坛


回复

使用道具 举报

181

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2018-4-16 18:38:48 | 显示全部楼层
单价1.3元的USB和Touchkey单片机CH552G已全面供货,试样QQ:1258305301


回复

使用道具 举报

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

本版积分规则

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

小黑屋|手机版|Archiver|电子工程世界 ( 京ICP证 060456

GMT+8, 2018-4-24 20:14 , Processed in 0.099428 second(s), 21 queries , Redis On.

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