查看: 1248|回复: 0
打印 上一主题 下一主题

直流电机外接位置开关调速正反转控制程序

[复制链接]
跳转到指定楼层
沙发
发表于 2015-5-7 21:32:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include<reg52.h>
#define uchar unsigned char

unsigned char N=0;
unsigned char X=20;        //占空比初始值为20%

int a,b;

sbit PWM=P3^6;        //PWM输出脚

sbit P3_0=P3^0;//正传
sbit P3_1=P3^1;//反转
sbit P3_2=P3^2;//加速
sbit P3_3=P3^3;//减速

sbit P1_0=P1^0;//M1
sbit P1_1=P1^1;//M1
sbit P1_2=P1^2;//M2
sbit P1_3=P1^3;//M2


void scjs(void)interrupt 3
{
TH1=0Xff;
TL1=0x17;
b++;
}

main()
{
TMOD=0x00;
IE=0X88;
TH1=0Xff;
TL1=0X17;
TR0=1;
TR1=1;
a=0;
b=0;


while(1)
{
PWM=1;
while(1)
{
b=0;
while(!b);
if (N==X)
PWM=0;
if (N==100)break;
N++;

if(P3_0==0)//正传
         {
          P1_0=1;
              P1_1=0;
                  P1_2=1;
              P1_3=0;
          }
if(P3_1==0)//反转
          {
          P1_0=0;
              P1_1=1;
                  P1_2=0;
              P1_3=1;
          }
if(P3_3==0)           //速度加
           {
                X++;
                         
           }
if(P3_3==0)         //速度减
           {
                X--;         
           }
      }
            N=0;
    }

  }





本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?加入因仑

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入因仑

本版积分规则

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