add enum for motor selection
This commit is contained in:
parent
a57832829f
commit
ed1725c392
@ -172,21 +172,15 @@ void MCInit(){
|
||||
MC_read(MC_AMax1);
|
||||
}
|
||||
|
||||
void MCSetV(uchar m, int v){
|
||||
void MCSetV(enum MC_motor m, int v){
|
||||
uchar addr = MC_VTar1 | m;
|
||||
|
||||
// shorten the int
|
||||
if(v < 0)
|
||||
v |= 0x0800; // set signed bit
|
||||
else
|
||||
v &= ~0x0800; // remove signed bit
|
||||
v &= 0x0FFF; // contraint to 12 bits
|
||||
switch (m){
|
||||
case 1:
|
||||
MC_write(MC_VTar1, v);
|
||||
break;
|
||||
case 2:
|
||||
MC_write(MC_VTar2, v);
|
||||
break;
|
||||
case 3:
|
||||
MC_write(MC_VTar3, v);
|
||||
break;
|
||||
}
|
||||
|
||||
MC_write(addr, v);
|
||||
}
|
||||
|
||||
@ -8,7 +8,9 @@
|
||||
#ifndef MOTIONCONTROLLER_H_
|
||||
#define MOTIONCONTROLLER_H_
|
||||
|
||||
typedef enum MC_motor {MC_MotorR=0x00, MC_MotorL=0x20};
|
||||
|
||||
void MCInit();
|
||||
void MCSetV(uchar m, int v);
|
||||
void MCSetV(enum MC_motor m, int v);
|
||||
|
||||
#endif /* MOTIONCONTROLLER_H_ */
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user