标题: 基于51单片机和Proteus仿真的天车控制系统 [打印本页]

作者: futao    时间: 2019-5-9 17:26
标题: 基于51单片机和Proteus仿真的天车控制系统
#include "AT89X52.h"
#include "intrins.h"

// Definition for output port and input pins
#define out_port  P3

unsigned char const sequence[8] = {0x02,0x06,0x04,0x0c,0x08,0x09,0x01,0x03};

sbit key_for = P1 ^ 2;
sbit key_rev = P1 ^ 3;

sbit Inc = P1 ^ 0;
sbit Dec = P1 ^ 1;
sbit Dir = P2 ^ 0;
sbit PWM = P2 ^ 1;

int speed;

void delay(unsigned int j)
{
  for(; j>0; j--);
}
void delayms(unsigned int j)
{
  unsigned char i;
  for(; j>0; j--)
  {
    i = 120;
    while (i--);  
  }
}

void DCMotoDeal(void)
{
      if(!Inc)
      {
         speed = speed > 0 ? speed - 1 : 0;
      }
      if(!Dec)
      {
         speed = speed < 500 ? speed + 1 : 500;
       }
      PWM=1;
      delay(speed);
      PWM=0;
      delay(500-speed);
}

void StepMotoDeal(void)
{
    unsigned char i;
    if (!key_for)
    {
       i = i<8 ? i+1 : 0;
         out_port = sequence[i];
         delayms(50);
    }
    else if (!key_rev)
    {
        i = i>0 ? i-1 : 7;       
        out_port = sequence[i];
        delayms(50);
    }
}

void main(void)
{
   // 选择方向和时间
   Dir = 1;
   if (Dir)
   {
      speed = 400;
    }
   else
   {
      speed = 100;
   }
   out_port = 0x03;
   while(1)
    {
      DCMotoDeal();
      StepMotoDeal();
    }
}



天车.png (117.62 KB, 下载次数: 39)

天车.png

基于51单片机和Proteus仿真的天车控制系统.zip

56.85 KB, 下载次数: 6, 下载积分: 黑币 -5






欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1