标题: 单片机驱动三相电机正反转程序 [打印本页]

作者: 6313    时间: 2021-4-25 16:13
标题: 单片机驱动三相电机正反转程序
网上找了好久都没有找到三相电机正反转程序,用51单片机试写了个程序。
#include <reg51.h>
#define uint unsigned int
#define uchar unsigned char
//定义按键端口
sbit key1 = P1^0;//定义LED灯端口
sbit key2 = P1^1;
sbit key3 = P1^2;

sbit led1 = P2^0;
sbit led2 = P2^1;
sbit led3 = P2^2;


//延时函数声明
void delay(uint xms);
//程序入口
void main(){
  while(1){
完整程序附件下载
    //第一次判断
    if(key1 == 0){
          //延时20ms 消除抖动
          delay(20);
          //第二次判断
          if(key1 == 0){
            led2 = 1;// 灯亮
                delay(200);
            led1 = 0;
            
          }
          while(!key1);  //当按键未松开时,key为0,执行该死循环。
         //等待按键被松开
         }
          if(key2 == 0){
          //延时20ms 消除抖动
          delay(20);
          //第二次判断
          if(key2 == 0){
            led1 = 1;          //灯亮
                delay(200);
                led2 = 0;                  
            
          }
         
         
         //等待按键被松开

          while(!key2);  //当按键未松开时,key为0,执行该死循环。
        }
        if(key3 == 0){
          //延时20ms 消除抖动
          delay(20);
          //第二次判断
          if(key3 == 0){
                      //灯亮
                led1 = 1;
                   led2 = 1;
           
          }
         
         
         //等待按键被松开

          while(!key3);  //当按键未松开时,key为0,执行该死循环。
                }  
           

          }
                }


作者: 6313    时间: 2021-4-25 16:14
三相电机正反转程序.zip (2.08 KB, 下载次数: 15)
作者: 6313    时间: 2021-4-25 16:20
程序注释错误,更改为led1=0,led2=0 开。led1=1,led2=1 关.
作者: taotie    时间: 2021-4-25 22:03
呵呵~~~没看明白是怎样正反转的。
其实三相交流电机就是交换其中两相就可正反转。




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