1相2线直流电机程序.zip

  • 浏览量:2182
  • 下载量:125
  • 资料大小:34.34 KB
  • 日期:2014-04-11
  • 上传者:ww4160
  • 分享
  • 评论
  • 举报
  • 收藏

资料描述

    51单片机学习6-- 1相2线直流电机





    因为51单片机的io输出电流难以到达驱动电机,因此需要加一个驱动ic(uln2003系列)驱动小型电机


    需要注意的是protues仿真中uln2003的输出需要加上拉电阻


    原理图如下:





    下面的例子控制电机的转身用延时函数来实现


    程序如下:


    #include 


    #define uint unsigned int


    #define uchar unsigned char


    void motor1();


    void motor2();


    void motor3();


    void delay_ms(uint);


    void delay_50us(uint);


    void key();


    sbit key1=p3^2;  //正转


    sbit key2=p3^3;  //反转


    sbit key3=p3^4;  //停止


    uchar flag1;


    uchar flag2;


    uchar flag3;





    void main()


    {


    while(1)


    {


    key();


    if(flag1==1)


    motor1();


    if(flag2==1)


    motor2();


    if(flag3==1)


    motor3();





    }


    }





    void key()   //按键调速子程序


    {


    if(key1==0)   //正转


    {


    delay_ms(10);


    if(key1==0)


    {


    flag1=1;


    flag2=0;


    flag3=0;


    }


    while(!key1);


    }


    if(key2==0)   //反转


    {


    delay_ms(10);


    if(key2==0)


    {


    flag1=0;


    flag2=1;


    flag3=0;


    }


    while(!k
评论(0)

登录后可评论,请 登录注册

   
相关资料
换一换