当前位置: 首页>>代码示例>>C++>>正文


C++ Motor::angle方法代码示例

本文整理汇总了C++中Motor::angle方法的典型用法代码示例。如果您正苦于以下问题:C++ Motor::angle方法的具体用法?C++ Motor::angle怎么用?C++ Motor::angle使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Motor的用法示例。


在下文中一共展示了Motor::angle方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: main

int main(void)
{
	Can0 can;
	can.setup();
	Buzzer buzzer;
	Led0 led0;
	Led1 led1;
	Led2 led2;
	Led3 led3;

	A1 limBack;
	A3 limFlont;
	Serial1 serial1;
	led0.setupDigitalOut();
	led1.setupDigitalOut();
	led2.setupDigitalOut();
	led3.setupDigitalOut();
	buzzer.setupDigitalOut();
	CanEncoder canEncoder0(can,0,5);
	CanEncoder canEncoder1(can,1,5);
	CanEncoder canEncoder2(can,2,5);

	canEncoder0.setup();
	canEncoder1.setup();
	canEncoder2.setup();

	Motor motor;
	Connection control;
	Testmotor t;
	R1350n r1350n(serial1);
	r1350n.setup();
	int timeLed=0;

	Position position(canEncoder0,canEncoder1,canEncoder2);
	buzzer.digitalHigh();
	while(1){

		if(control.dispose==0){
			led0.digitalWrite(1);
		}
		else if(control.dispose==1){
			led1.digitalWrite(1);
		}
		else if(control.dispose==2){
			led2.digitalWrite(1);
		}
		if(control.member==1){
			led3.digitalWrite(1);
		}
		else if(control.member==2){
			if(millis()-timeLed>=500){
				led3.digitalToggle();
				timeLed=millis();
			}
		}
		if(millis()-control.period>=cycle){
			control.period=millis();
			if(control.sw==0&&millis()-control.time>1000){
				control.switch0();
			}
			if(control.sw==1){
				position.radian(r1350n.angle());
				position.selfPosition();
				control.xy(position.integralx,position.integraly);
				if(control.spinNumber[control.member][control.dispose][control.point]==1){
					motor.motorControl(control.devietionX,control.devietionY);
					motor.degreeLock(position.rad);
				//	motor.testmotor();
					motor.last();
					motor.dutyCleanUp();
					if(control.point<5){
						control.coordinatePoint(motor.distance);
					}
				}
				else if(control.spinNumber[control.member][control.dispose][control.point]==0){
					motor.angle(position.degree,position.degree);
					control.spinControl(position.degree);
				}
				if(control.actionNumber[control.member][control.dispose][control.point]==1){
					if(control.armpwm[control.member][control.dispose][control.point]!=0){
						control.armTime();
					}
					control.arm();
					motor.armMotor(control.armpwmC,control.armcwC,control.armccwC);

				}




				control.indication(position.encf[0],position.encf[1],position.encf[2],position.degree,position.integralx,position.integraly,r1350n.angle());
			}

			if(millis()-control.time>1000){
				control.switch0();
			}
		}
	}
	return 0;
}
开发者ID:inabayuki,项目名称:3wheel,代码行数:100,代码来源:main.cpp


注:本文中的Motor::angle方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。