有4个电机A,B,C,D!
设定sbit A,B,C,D四个引脚
想写一个通用的函数,用于调速。
设定一个形参,调用函数的时候,把想要调速的电机传进来。要怎么弄啊!
但是难不成必须写四个函数?
有4个电机A,B,C,D!
设定sbit A,B,C,D四个引脚
想写一个通用的函数,用于调速。
设定一个形参,调用函数的时候,把想要调速的电机传进来。要怎么弄啊!
但是难不成必须写四个函数?
//c51 中 sbit 不能在函数中传递参数。C51 也没有 bit 指针。
void control(sbit x) //这样肯定是不行的
void control(sbit *x) //这样肯定是不行的
//不过可以先做个 IO 的驱动
比如2个电机,每个电机 2 个 IO
sbit A0 = P1^0; //电机0
sbit B0 = P1^1; //电机0
sbit A1 = P1^2; //电机1
sbit B1 = P1^3; //电机1
void set_ioa(char moto,bit var)
{
if(moto == 0)
A0 = var;
if(moto == 1)
A1 = var;
}
void set_iob(char moto,bit var)
{
if(moto == 0)
B0 = var;
if(moto == 1)
B1 = var;
}
void control(char moto,char speed)
{
set_ioa(moto,0);
set_iob(moto,1);
}