Esempio n. 1
0
/***********************************************************
*   函数说明:系统硬件初始化函数                           *
*   输入:    无                                           *
*   输出:    无                                           *
*   调用函数:Port_Init()  RCC_Configuration()             *
***********************************************************/
void Device_Init(void)
{
	RCC_Configuration();
	get_sig_cfg_param(1);

	PORT_Init();/*此处需要修改  malooei  2012/11/14*/

	USART2_Configuration(); /* 用于连接pc */

	USART1_Configuration(); /* 用于向光纤传输数据 */
	DMA_USART1_Configuration( );

	adc1_dma_cfg();
	ADC1_Configuration();

	//box_tmper_ctrl_init();

#if !USE_PVD_CHECK_POWEROFF
	Exti_Init();
#else
	Exti_Pvd_Init();
#endif

	spi1_cfg4ads8329();
	delay_us(500*1000); /* 240ms, cpu最低工作电压为2.0V, ads8329最低工作电压为2.7V, David */
	init_ads8329();

	TIM3_Configuration();

	NVIC_Configuration();

	return;
}
Esempio n. 2
0
 int main(void)
 {	
		delay_init();
		NVIC_Configuration();        /*设置NVIC中断分组2:2位抢占优先级,2位响应优先级*/
		LED_Init();
		MotorPin_Init();             /*舵机初始化信号线引脚*/		     
		USART1_Config();
		Init_TotalArray();           /*计算执行数组*/
	  Exti_Init();
    TIM3_Int_Init(100,100);	 
	  TIM4_Int_Init(10000,7199);   /*定时1S*/
		//TIM_Cmd(TIM3, DISABLE);                        /*接收到指令之后,再打开TIM3*/		
	  //while(!rece_flag);
	 
		while(1)
		{                                               /*警告:外部中断ABCDEF的顺序不要颠倒*/
						
				if(rece_flag==1)
					{
						
						  if(rece_string[0]=='#')
							{
							      TIM_Cmd(TIM3, DISABLE);         /*先关闭TIM3,避免全局变量被修改*/	
										motor_speed=250;
										SolvecubeArray_ToBufferArray();
							}
					
				    change();		
						TIM_Cmd(TIM3, ENABLE);     /*接收到指令之后,再打开TIM3*/					 			
						rece_flag=0;
					
					}
					
				if(flag_vpwm==1)	  
					{
						vpwm();				             /*插补角度*/
						flag_vpwm=0;
					}	
					
		}
		
}