THB6128 基本驱动程序
小白也能看懂
THB6128电路图引脚图 高细分两相混合式步进电机驱动芯片资料下载
http://www.51hei.com/bbs/dpj-150217-1.html
(出处: 单片机论坛)
单片机源程序如下:
- /*****************************************************************************
- 名称:THB6218 高细分两相混合式步进电机基驱动程序
- THB6128
- VM +12V CP+
- VG GND CP-
- A+ 电机A相正极 DIR+
- A- 电机A相负极 DIR-
- B+ 电机B相正极 EN+
- B- 电机B相负极 EN-
- 共阴极接法:分别将 CP- DIR- EN- 接电源 GND CP+ DIR+ EN+作为输入控制信号
- 共阳极接法:分别将 CP+ DIR+ EN+ 接电源 VCC CP- DIR- EN-作为输入控制信号
- 注:这里的VCC是单片机的+5V ,而不是步进电机+12V
- 作者:陈润源
- 时间:2020年7月12日19:46:12
- ******************************************************************************/
- #include <regx52.h>
- #define uchar unsigned char
- #define uint unsigned int
- sbit CP =P1^0; //PWM脉冲
- sbit DIR=P1^1; //方向
- sbit EN =P1^2; //使能
- sbit k1=P3^2; //正反转
- sbit k2=P3^3; //启动/停止
- void delayms(uint z)
- {
- uint x,y;
- for(x=z;x>0;x--)
- for(y=110;y>0;y--);
- }
- void key()
- {
- if(k1==0)
- {
- delayms(5);
- if(k1==0)
- {
- EN=1; //根据接法更改
- delayms(500); //停止缓冲一下再换相
- DIR=~DIR;
- EN=0;
- }
- while(!k1);
- }
- if(k2==0)
- {
- delayms(5);
- if(k2==0)
- {
- EN=~EN;
- }
- while(!k2);
- }
- }
- void main()
- {
- TMOD=0x21;
- TH0=(65536-100)/256;
- TL0=(65536-100)%256;
- EA=1;
- TR0=1;
- ET0=1;
- DIR=0;
- EN=1;
- while(1)
- ……………………
- …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
所有资料51hei提供下载:
步进电机.zip
(93.08 KB, 下载次数: 172)
|