找回密码
 注册
关于网站域名变更的通知
查看: 570|回复: 2
打印 上一主题 下一主题

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

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2018-11-26 09:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
L298n驱动步进电机源程序 正转 反转 调速 两相四拍八拍都有
3 w- T  P! Q* u# v7 |4 a( _) |, R1 l( }1 w
8 H+ t9 g8 k; x/ N

. ~3 s* U8 L7 @& B////////////////////////汇诚科技////////////////////7 n! `) l( u6 y7 W5 |0 D8 \* U6 h
///////////////////步进电机调试程序/////////////: T  v/ M/ ^4 g" Q& |. v
) p% g( h7 m2 X9 O" _( f
#include<reg52.h>  
& Q& P* Q0 ~1 Y3 n
3 N/ _# S+ C' U+ }" b. A  S0 J5 u/*****P1.0=A 1.1=B 1.2=B' ; P1.3=A'****/ 0 e: a, ^1 z$ f( L/ e) v! q$ q# t
//////////////////////////////////////////////////////////////////////////////////////////////
" |+ ]: h, I# x; O/*******************************正转数组**************************************************/1 o3 C6 u' r; x: ?2 X
  code unsigned char runz[8]={0x05,0x01,0x09,0x08,0x0a,0x02,0x06,0x04};  //两相四线八拍工作方式$ t7 _: f9 E6 R2 V: N
/*******************************反转数组**************************************************/
/ F. W4 j, c* G  code unsigned char runf[8]={0x04,0x06,0x02,0x0a,0x08,0x09,0x01,0x05};  //两相四线八拍工作方式, B9 o' D6 F+ G% Z: i7 w2 D
unsigned char keycan=0;                //键值4 O9 d( Q+ l. F7 G; h
unsigned char s,i,j,k,z;0 y) L; z0 v3 T  o' D

* i+ A$ c. p6 |9 K6 e5 |- y3 Y; eint y=30;//定义转动速度,数值越大电机转速越慢反之则快
6 ?1 M& f- R* o3 u: Y7 @) i. f- y; K4 m
sbit P2_0=P2^0;//正转按键
/ Z/ d, m1 `$ K% S" L/ `& h# ~sbit P2_1=P2^1;//反转按键$ x( R* @6 l1 m* F0 u
sbit P2_2=P2^2;//电机加速# ^% c; ?8 d$ K! y7 @+ b) a
sbit P2_3=P2^3;//电机减速
7 c; E' E7 m) m' @3 O4 |) Z1 q& R
0 i# T" Y& P- V% Q' w* `void delay(i)//延时函数
: `& m0 E" J3 g* t  {  Q5 n) Q+ }# h0 A
      for(j=0;j<i;j++)8 }+ ?5 t' ?+ p+ A% ]+ x2 c5 r- J
      for(k=0;k<250;k++);0 D, i* g% [! Y' K( F. E( D% h
  }5 I1 o0 V' X1 J6 U* E

2 i4 k5 C" A4 _. _: i+ c) n1 D/ |! E
5 e$ s- {2 O+ C
void zrun()// 正转运行
4 i( Z9 T! }0 s4 @) p0 i2 C8 ~* x{
2 }4 \" i. W8 s# D  b2 m# C6 d" C: u5 _6 g
   for(z=0;z<8;z++)
# v1 O, j  ~  T6 |2 h3 k       {
0 }1 z+ L( o+ o2 k# w4 V, x5 y         P1=runz[z];# x" h7 g1 K; n( b- q# |
         delay(y);
6 L5 E$ u/ s6 V9 k! }& d' l, y6 p6 P9 Z% z       }, v% F  Z2 h! ~# J
}3 T8 I0 G# @* }6 D9 r/ `/ P/ Z

* ?2 r2 ^# Y6 G; G' A. x. d( k0 svoid frun()// 反转运行1 v$ M/ T; b2 N* J
{
7 ]. I6 s( l( |2 r     for(z=0;z<8;z++)
( b6 w; u0 ?" ~/ v/ E4 L        {9 m3 Z4 J: W2 U; Y0 M, K
            P1=runf[z];' R5 U" n( a8 y& g9 M' Z6 ~
            delay(y);
" ?0 K3 Q1 ^: d; Q- }9 u         }1 j3 X, P: W% y4 ^
}# {3 P3 [+ D% ?  w! d, @5 b% r

4 O6 s4 m1 H- P) _  }main()6 g+ S- K2 X% y3 `
{7 I0 x8 C7 H( M& d- I; V2 c5 D
   while(1)
# t. n' k; F- l$ n5 g    {
4 t  B" l4 g7 K# n, F3 x' l# m       if(P2_0==0) //如果电机正转按键按下
5 k- _$ w# A5 ^* q! L! d      {" H( y0 \1 _5 G7 O8 W
        keycan=1;         //键值等于10 l# F1 N1 c" c- X  `( u$ ?
      }
* K  Z( h) o) _1 g2 ^/ w' y0 [3 l         if(P2_1==0) //如果电机反转按键按下) c* ~9 M7 r1 c5 C; ?
      {
4 Y9 {( J& s4 O$ b        keycan=2;         //键值等于2# J- u3 z* s0 J, @4 g7 J8 |$ }
       }
" Q  P. N- f* G; Z                     switch (keycan)$ r) C6 j+ Y5 A5 ^. s7 X& A
                    {! F- ]* R6 w& H- X
                     case 1: zrun();  //键值等于1 正转
5 Z) r4 s/ B% @" r                                 break;
. u- `/ X, F) D4 F$ c* `$ W6 ^1 ?                     case 2: frun();  //键值等于2 反转
; d  n7 o$ c9 c! V1 y7 Z                     break;) y2 |1 {) S$ u* J3 x3 W

8 v6 O2 P) z& X4 n5 W                     }
3 s2 N: k: A* K5 v7 l, f) ~2 ]* w* ]' }3 e. X5 U
             if(P2_2==0)  //  电机加速9 _7 N3 ]/ z/ n  R
      {
7 Z# C& S* e* }0 S% V9 q3 d        y+=5;) E9 k0 L0 B4 Z3 m
      }% R; r7 `8 q* t& E3 k( ]
         if(P2_3==0)" q* R$ z4 S* h- c- @) C) ^
      {                         // 电机减速
3 q+ W3 ~7 _8 ?5 i( @3 Z+ e' V8 D$ \; J2 z+ O/ w: N; U/ v. K6 O/ D( e& Q

% M' H! i+ ?' R! q. Q) `$ V9 \% W…………限于本文篇幅 余下代码请从论坛下载附件…………/ |- B: r6 W' q7 }6 k
游客,如果您要查看本帖隐藏内容请回复

+ a# ]6 r) W- Q) Q1 N; G0 s

+ ~' a+ k+ N4 K" i" D* J

该用户从未签到

2#
发表于 2018-11-26 10:25 | 只看该作者
感谢楼主的分享

该用户从未签到

3#
发表于 2020-6-12 09:57 | 只看该作者
非常感谢楼主
1 k, W+ I2 ~* j5 S1 [
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-7-19 17:08 , Processed in 0.140625 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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