关于烧mos管的问题
时间:10-02
整理:3721RD
点击:
在看程序的时候看到这样一个控制电机的程序,里面的一句话让我很费解。
#define ZZ { Q0 = 0;Q1 = 0;Q2 = 1;Q3 = 1;} //正转
#define FZ { Q0 = 1;Q1 = 1;Q2 = 0;Q3 = 0;} //反转
#define STOP { Q0 = 1;Q1 = 0;Q2 = 1;Q3 = 0;} //停止
//禁止出现 Q0 = 0;Q1 = 1;Q2 = 0;Q3 = 1; 不然会烧掉mos管
我想问一下为什么直接赋值会烧mos管,但是用宏定义的方式就不会呢?多谢各位
#define ZZ { Q0 = 0;Q1 = 0;Q2 = 1;Q3 = 1;} //正转
#define FZ { Q0 = 1;Q1 = 1;Q2 = 0;Q3 = 0;} //反转
#define STOP { Q0 = 1;Q1 = 0;Q2 = 1;Q3 = 0;} //停止
//禁止出现 Q0 = 0;Q1 = 1;Q2 = 0;Q3 = 1; 不然会烧掉mos管
我想问一下为什么直接赋值会烧mos管,但是用宏定义的方式就不会呢?多谢各位
我想小编理解错了,程序的意思跟直接赋值和宏定义没有关系,而是在变量Q0,Q1,Q2,Q3取某一组值得情况下会烧掉mos管,在取其他值得情况下不会有问题
哦哦 明白了 多谢多谢!