找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2584|回复: 0
打印 上一主题 下一主题
收起左侧

关于L298N电机驱动模块 PWM调速 求解答

[复制链接]
跳转到指定楼层
楼主
ID:290020 发表于 2018-3-20 16:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这段程序哪里错了吗?小车能跑但不能调速,还是我线接错了?
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit pwm1=P2^0;
sbit pwm2=P2^1;
sbit I1=P2^2;
sbit I2=P2^3;
sbit I3=P2^4;
sbit I4=P2^5;
uchar a,t=0,s=20,n=20,pwm;
void init()
   {
     TMOD=0X21;   //?????1???2
     TL0 = 0xff;                //??????
     TH0 = 0xf7;
     TR0 = 1;                //???0????                 //??????
     TH1=0xfd ;     
     TL1=0xfd ;   //???
     TR1=1;       //?????1
     REN=1;       // ????

     SM0=0;
     SM1=1;       //?????????1

     EA=1;       // ???????
     ES=1;       // ????????
   }
         
void main()
    {
        init();
         while(1);
     }
               
void tim0() interrupt 1
                 {
                         TR0=0;
                         TH0=0xff;
                         TL0=0xf7;
                         TR0=1;
                         t++;
                         
                         if(t>=40)
                         { t=0;}
                         if(t<=n)
                         { pwm1=1;}
                         if(n<t<40)
                         {pwm1=0;}
                         
                   if(t>=40)
                         { t=0;}
                         if(t<=s)
                         { pwm2=1;}
                         if(s<t<40)
                         {pwm2=0;}
     }
   void ser() interrupt 4
           {
           ES=0;
         RI=0;   //?????????0;      
          a=SBUF; //??????????a
                          
        switch(a)
    {
      case 65:  I1=1,I2=0,I3=1,I4=0;  break;   //  ????A  ????
      case 66:  I1=0,I2=0,I3=1,I4=0;  break;   //  ????B  ????
      case 67:  I1=1,I2=0,I3=0,I4=0;  break;   //  ????C  ????
      case 68:  I1=0,I2=1,I3=0,I4=1;  break;         //  ????D  ????
      case 69:  n=s=10;  break;  //E
      case 70:  n=s=20;  break;  //F
      case 71:  n=s=30;  break;  //G
                       
      case 97:   I1=I2=I3=I4=0;  break;  //????a   ????
      case 98:   I1=I2=I3=I4=0;  break;  //????b   ????
      case 99:   I1=I2=I3=I4=0;  break;  //????c   ????
      case 100:  I1=I2=I3=I4=0;  break;  //????d   ????

      default: break;
     }
         ES=1;
        }

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

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

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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