Example #1
0
void task3(void)
{
	OS_ERR      err;
	BoardGPIOConfig();//IO口
	UsartConfig();//串口设置配置
	Nvic_Config();
	SW_12V(1);//电源
	SW_5V(1);//正负电源,用于检测回波Z
	FreqModuleInit();//测频率模块初始化
	GetFreq(1);

	while(1)
	{			
		
//		OSTimeDlyHMSM(0,0,500,0,OS_OPT_TIME_DLY,&err);
//		printf("SCT200T15002-Channel: 1  FREQUENCY:%f\r\n",GetFreq(1));
//		printf("SCT200T15002-Channel: 2  FREQUENCY:%f\r\n",GetFreq(2));
//		printf("SCT200T15002-Channel: 3  FREQUENCY:%f\r\n",GetFreq(3));
//		printf("SCT200T15002-Channel: 4  FREQUENCY:%f\r\n",GetFreq(4));
		OSTimeDlyHMSM(0,0,0,10,OS_OPT_TIME_DLY,&err);
		if(UploadFlag == 1)//确认需要上传数据了
		{
			
			FreqModuleInit();//测频率模块初始化
			GetFreq(1);
			printf("%s",aaa);
			printf("SCT200T15003-2015/7/8/Wednesday-15-36-9\r\n");
			printf("SCT200T15003-ID=0x87031923 53578748 66eff48\r\n");
			printf("SCT200T15003-Mode = 10 minutes Internal\r\n");
			printf("SCT200T15003-Current voltage = 10.90V\r\n");
			printf("SCT200T15003-Channel: 1  Temperature :34.47\r\n");
			printf("SCT200T15003-Channel: 2  Temperature :34.43\r\n");
			printf("SCT200T15003-Channel: 3  Temperature :30.40\r\n");
			printf("SCT200T15003-Channel: 4  Temperature :25.90\r\n");
			printf("SCT200T15003-Channel: 1  FREQUENCY:%f\r\n",GetFreq(1));
			printf("SCT200T15003-Channel: 2  FREQUENCY:%f\r\n",GetFreq(2));
			printf("SCT200T15003-Channel: 3  FREQUENCY:%f\r\n",GetFreq(3));
			printf("SCT200T15003-Channel: 4  FREQUENCY:%f\r\n",GetFreq(4));
			printf("%s",bbb);

			UploadFlag = 0;
			SW_12V(0);//电源
			SW_5V(0);//正负电源,用于检测回波
			OSTimeDlyHMSM(0,0,0,500,OS_OPT_TIME_DLY,&err);
			ConfigPINToListen();
			PWR_EnterSTOPMode(PWR_Regulator_ON,PWR_STOPEntry_WFI);
			SetClock();//配置各级CPU时钟
			BoardGPIOConfig();//IO口
			SW_12V(1);//电源
			SW_5V(1);//正负电源,用于检测回波
			OSTimeDlyHMSM(0,0,0,500,OS_OPT_TIME_DLY,&err);
			UsartConfig();//串口设置配置
			Nvic_Config();
		}
	}
}
Example #2
0
///////////////////////////////////////////////////////////////////////////////////////////////////////////
//用户任务2
void task2(void)
{
	OS_ERR      err;
	unsigned int add=0;
	Time1_Config();//定时器1输出测试频率
	Time2_Config();//计时单元,用于测量频率
	Time3_Config();	//用于激发振弦	
	Time4_Config();//tim4 外部引脚做为外部时钟出发计数
	Nvic_Config();//优先级
	while(1)
	{
//			//TranPulse(15000,3);//发射10个500hz的脉冲 
//			if(IsPulseOn() == 1)//传感器是否起振
//				{TranPulse(Measure(),7);}//测量频率,并且输出到pwm

//		TranPulse(8000+add,10);
//		OSTimeDlyHMSM(0,0,0,10,OS_OPT_TIME_DLY,&err);
//		TranPulse(6000+add,10);
//		OSTimeDlyHMSM(0,0,0,10,OS_OPT_TIME_DLY,&err);
//		TranPulse(4000+add,10);
//		OSTimeDlyHMSM(0,0,0,10,OS_OPT_TIME_DLY,&err);
//		TranPulse(2400+add,10);
		GetFreq();
		//OSTimeDlyHMSM(0,0,1,0,OS_OPT_TIME_DLY,&err);
//		add += 200;
//		if(add == 2000)
//		{add = 0;}
	
		
	}
}
Example #3
0
/**
  * @file   main
  * @brief  Main program.
  * @param  None
  * @retval None
  */
int main(void)
{
  Exti_Config();//初始化中断配置	
  Nvic_Config();//初始化中断向量
  KEY_GPIO_Config();//按键引脚配置
  LED_GPIO_Config();//初始化LED端口
	Relay_GPIO_Config();
  while(1)
  {
  }		
}
Example #4
0
///////////////////////////////////////////////////////////////////////////////////////////////////////////
//用户任务1
void task1(void)
{
	OS_ERR      err;
	while(1)
	{
		OSTimeDlyHMSM(0,0,5,0,OS_OPT_TIME_DLY,&err);
		if(UploadFlag == 0)
		{
			SW_12V(0);//电源
			SW_5V(0);//正负电源,用于检测回波
			OSTimeDlyHMSM(0,0,0,200,OS_OPT_TIME_DLY,&err);
			ConfigPINToListen();
			PWR_EnterSTOPMode(PWR_Regulator_ON,PWR_STOPEntry_WFI);
			SetClock();//配置各级CPU时钟
			BoardGPIOConfig();//IO口
			SW_12V(1);//电源
			SW_5V(1);//正负电源,用于检测回波
			OSTimeDlyHMSM(0,0,0,200,OS_OPT_TIME_DLY,&err);
			UsartConfig();//串口设置配置
			Nvic_Config();
		}
	}
}