Exemplo n.º 1
0
int main(void)
{ 
	float x=1;
	float p=10;
	NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置系统中断优先级分组2
	delay_init(168);  //初始化延时函数
	EXTIX_Init(); 
  uart_init(115200);
  TIM10_PWM_Init(10000-1,336-1);	//84M/84=1Mhz的计数频率,重装载值500,所以PWM频率为 1M/500=2Khz.   
	TIM11_PWM_Init(10000-1,336-1);
	TIM9_PWM_Inita(10000-1,336-1);
	TIM9_PWM_Initb(10000-1,336-1);
 	//TIM3_Int_Init(5000-1,8400-1);	//定时器时钟84M,分频系数8400,所以84M/8400=10Khz的计数频率,计数5000次为500ms 
  exp_point=set_point(0,0,0,750);
	MPU_Init(); 
	printf("aaa\r\n");
	while(mpu_dmp_init()){}
	//TIM3_Int_Init(100-1,8400-1);
  init_omegax.data=x;
	init_omegax.p=p;
	init_roll.data=x;
	init_roll.p=p;
	
		while(1)
	{
		LED0=!LED0;//DS0翻转
		delay_ms(200);//延时200ms
		
	};
}
Exemplo n.º 2
0
int main(void)
{
	SysTick_init();
	NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);	
	uart_init(115200);
	
	Struct_Init();
	Pid_Init();
	
	MotoPwm_Init();
	
	OLED_Init();
	Key_Init();
	
	I2cMaster_Init();
  mpu_dmp_init();	
	GPIO_Config();
	
	Filter_Init();
	
//	NRF_Usart_Pin_Init();//无线初始化
//	NRF_Read_Live_Init();//无线在线传输	
//  ReadData_Init();
	
	Scheduler_Init();
	
  while(1)
	{
		Scheduler_Loop();
	}
}
Exemplo n.º 3
0
int main(void)
{ 		
	Stm32_Clock_Init(9);
//		u16 temp;
	NVIC_Configuration();
	UART1_init(72,115200); 
	delay_init();  
	//初始化串口1;
	
	pid_Init();

	LED_Init();
	EXTIX_Init();
	Adc_Init();		


	Motor_Init(999,0);	
	
	HC05_Init();
	while(mpu_dmp_init());	 

// 	TIM5_Init(999,72);
	TIM2_Int_Init(999,72);//定时器3配置,1ms中断一次

	
	while(1)
	{
//		CtrlAttiAng();
//	PWM_test();
//	COMMPC_TEST();	
//	Get_angle();
//	u2_printf("hell");
	test_SendPC();//测试向PC发送协议数据,用于调控
	} 	
}
Exemplo n.º 4
0
int main(void)
{
	Stm32_Clock_Init(9);
	JTAG_Set(1);
	Wave.init();
  Motor.Init();
  Sensor.Init();
	BatteryCheckInit();
  Timer.Init(72);
  LED_Init();
//  Timer.Run();
//  delay_init(72);
  
//  while(1)
//  {
//     delay_ms(500);
//    LED=~LED;
//    
//  }
  // LED=0;
  if(!MPU.Init())
	{
		while(mpu_dmp_init())
		{
			delay_ms(500);
			//  LED=~LED;
		}
	}
	//mpu_dmp_get_data();
  
  LED=0;
	
	UART.Init(72,115200,OnRecvData);
	UART.SendByte(0);
	UART.SendByte(0xff);
	UART.SendByte(0x55);
	
	RC522.Init();
	RC522.SetCallBack(ReadCard);
	
	Timer.Start(0,UartProtocol.Check);
  Timer.Start(0,tick1);
  Timer.Start(10,DetectionLogic.LogicRun);
	Timer.Start(1,Sensor.LoopScan);
	PathList=pathbuff;
	DetectionLogic.Init();
	DetectionLogic.RegisterEvent(ActionType.EnterWay,inway);
	DetectionLogic.RegisterEvent(ActionType.EnterPoint,inPoint);
	DetectionLogic.RegisterEvent(ActionType.turnDone,turndone);
	DetectionLogic.Control->StopRun();
	lastAction=0xff;
	//DetectionLogic.LoadDefConfig(pathbuff );
  //Timer.Start(500,led);
	Timer.Start(0,RC522.ReadLoop);
	Timer.Start(500,UpdateBatteryValue);
	
  UartProtocol.Init(buffdata);
	UartProtocol.AutoAck(ENABLE);
	UartProtocol.RegisterCmd(Alive,AliveEvent);
  UartProtocol.RegisterCmd(GetData,GetDataEvent);
	UartProtocol.RegisterCmd(SetData,SetDataEvent);
	
	while(1)
		Timer.Run();
	
	
}