コード例 #1
0
ファイル: timer.c プロジェクト: xieyoub/TrawlEquipment_T81
void ReadNext(void)
{
	if(Net_Sel == 2 && Tail_Net) //第二个判断已插上
	{
		Usart1buf[7] = Net_Sel;
		ReadOffSet();
		Usart1Send();
	}
	else if(Right_Net && Net_Sel == 2) //第三个插上
	{
		Net_Sel++;
		Usart1buf[7] = Net_Sel;
		ReadOffSet();
		Usart1Send();		
	}
	else if(Net_Sel == 3 && Right_Net) //第三个
	{
		Usart1buf[7] = Net_Sel;
		ReadOffSet();
		Usart1Send();		
	}
	else 
	{
		FirstReadFlag = 0;
		Net_Sel = 0;
		TIM_Cmd(TIM2,DISABLE);
	}
  TIM2->CNT = 0;
}
コード例 #2
0
void ShowConfiguration(void)
{
	char str [100];

	  Usart1Send((char *) "Configuration:\r\n");
#ifdef CONFIGURATION_IN_SST
	  LoadFilesIndex();

	  sprintf(str, "B1T: %d, B1R: %d\r\n", param_struct.b1t, param_struct.b1r);
	  Usart1Send(str);
	  Wait_ms(100);

	  sprintf(str, "B2T: %d, B2R: %d\r\n", param_struct.b2t, param_struct.b2r);
	  Usart1Send(str);
	  Wait_ms(100);

	  sprintf(str, "B3T: %d, B3R: %d\r\n", param_struct.b3t, param_struct.b3r);
	  Usart1Send(str);
	  Wait_ms(100);

	  sprintf(str, "B4T: %d, B4R: %d\r\n", param_struct.b4t, param_struct.b4r);
	  Usart1Send(str);
	  Wait_ms(100);
#endif

#ifdef CONFIGURATION_IN_FLASH
	  sprintf(str, "B1T: %d, B1R: %d\r\n", b1t, b1r);
	  Usart1Send(str);
	  Wait_ms(100);

	  sprintf(str, "B2T: %d, B2R: %d\r\n", b2t, b2r);
	  Usart1Send(str);
	  Wait_ms(100);

	  sprintf(str, "B3T: %d, B3R: %d\r\n", b3t, b3r);
	  Usart1Send(str);
	  Wait_ms(100);

	  sprintf(str, "B4T: %d, B4R: %d\r\n", b4t, b4r);
	  Usart1Send(str);
	  Wait_ms(100);
#endif
}
コード例 #3
0
ファイル: timer.c プロジェクト: xieyoub/TrawlEquipment_T81
//读取超时处理,再次读取,总次数不超过3次
void TIM2_IRQHandler(void)
{
	if(TIM_GetITStatus(TIM2,TIM_IT_Update) != RESET)
	{
		ReadTime++;
		if(ReadTime<=1) 
		{
			ReadOffSet();
			Usart1Send();
		}
		else //判断为故障
		{	
			switch(Net_Sel)
			{
				case 1:
									NetState[0] = 2;
									MMSI[0] = 0;
									break;
				case 2:
									NetState[1] = 2;
									MMSI[1] = 0;
									break;
				case 3:
									NetState[2] = 2;
									MMSI[2] = 0;
									break;	
			}
			if(FirstReadFlag==0) //不是第一次读取
			{
				TIM_Cmd(TIM2,DISABLE);
			}
			else  //第一次读取
			{
				Net_Sel++;
				if(Net_Sel<=3) //继续读取下一个
				{
					ReadNext();
				}
				else //三个网位仪都读取完
				{
					TIM_Cmd(TIM2,DISABLE);
					FirstReadFlag = 0;
				}
				ReadTime = 0;
			}
		}
		TIM_ClearITPendingBit(TIM2,TIM_IT_Update);
	}
}
コード例 #4
0
void USART1_IRQHandler(void)
{
	if (USART_GetITStatus(USART1, USART_IT_RXNE) != RESET)
	{
		//blink a led
    	GPIOB->ODR ^= GPIO_Pin_5;

    	RxBuffer[RxLenght] = USART_ReceiveData(USART1);

    	//Send response when carriage return received
		if(RxBuffer[RxLenght++] == '\r'){
			RxBuffer[RxLenght] = '\0';
			Usart1SendString("Received ");
			Usart1SendString((char*)RxBuffer);
			Usart1Send('\n');
			RxLenght = 0;
		}
		//if buffer is full, overwrite that sonOfA...
		else if(RxLenght == RXBUFFERSIZE)
			RxLenght = 0;
	}
}
コード例 #5
0
void Timer_Interrupt_Handler (unsigned short tpm1)
{
//	char str [20];
	unsigned short duration = 0;

	if (lastC0V > tpm1)
		duration = (0xffff - lastC0V) + tpm1;			//dio la vuelta
	else
		duration = tpm1 - lastC0V;	//lo normal

	lastC0V = tpm1;

//	if (on_receipt)
//	{
//		if (F5PLUS)
//			F5PLUS_OFF;
//		else
//			F5PLUS_ON;
//	}


#ifdef WITHOUT_ABSOLUTE_VALUE_CTROL_NEW
	switch (bitstate)
	{
		case WAIT_FOR_SILENT:
			no_silent++;
			break;

		case FIRST_HIGH:
			bitcount = 0;
			code0 = 0;
			code1 = 0;
			bitstate++;
			break;

		case FIRST_LOW:
			if ((duration > PILOT_MIN_NEW) && (duration < PILOT_MAX_NEW))	//tengo mi primer first high, ahora vienen los bits
			{
				bitstate++;
				ctrol_new = 1;
				Usart1Send((char *)"new ");
			}
			else
			{
				//bitstate = CODE_FINISH;
				bitstate = FIRST_HIGH;
				errorcode = ERR_FIRST_HIGH;
			}
			break;

		case NEXT:
			if ((duration > LAMBDA1_FROM0_MIN_NEW) && (duration < LAMBDA1_FROM0_MAX_NEW))
			{
				//puede ser un 0
				bitstate = CHECK0;
			}
			else if ((duration > LAMBDA2_FROM1_MIN_NEW) && (duration < LAMBDA2_FROM1_MAX_NEW))
			{
				//puede ser un 1
				bitstate = CHECK1;
			}
			else
			{
				//error en bit
				//bitstate = CODE_FINISH;
				bitstate = FIRST_HIGH;
				errorcode = ERR_BIT_NEXT;
			}
			break;

		case CHECK0:
			if ((duration > LAMBDA2_FROM0_MIN_NEW) && (duration < LAMBDA2_FROM0_MAX_NEW))
			{
				//llego el 0
				bitstate = NEXT;
				//si no es el primer bit
				if (bitcount)
				{
					if (bitcount < 16)
						code0 <<= 1;
					else
						code1 <<= 1;
				}
				bitcount++;

			}
			else
			{
				//error en bit
				//bitstate = CODE_FINISH;
				bitstate = FIRST_HIGH;
				errorcode = ERR_BIT_0;
			}
			break;

		case CHECK1:
			if ((duration > LAMBDA1_FROM1_MIN_NEW) && (duration < LAMBDA1_FROM1_MAX_NEW))
			{
				//llego el 1
				bitstate = NEXT;
				//si no es el primer bit
				if (bitcount)
				{
					if (bitcount < 16)
					{
						code0 += 1;
						code0 <<= 1;
					}
					else
					{
						code1 += 1;
						code1 <<= 1;
					}
				}
				bitcount++;
			}
			else
			{
				//error en bit
				//bitstate = CODE_FINISH;
				bitstate = FIRST_HIGH;
				errorcode = ERR_BIT_1;
			}
			break;

		case CODE_FINISH:

			break;

		default:		//ver si no tengo que ir directo a NEXT
			bitstate = WAIT_FOR_SILENT;
			break;
	}
	//me fijo si termino el paquete

	if (bitcount >= 28)
	{
		bitstate = CODE_FINISH;
		errorcode = ERR_FINISH_OK;
	}

#endif

#ifdef WITHOUT_ABSOLUTE_VALUE_CTROL_EV1527_AND_PT2264
	switch (bitstate)
	{
		case WAIT_FOR_SILENT:
			no_silent++;
			break;

		case FIRST_HIGH:
			bitcount = 0;
			code0 = 0;
			code1 = 0;
			bitstate++;
			break;

		case FIRST_LOW:
			if ((duration > ALPHA1_MIN) && (duration < ALPHA1_MAX))	//tengo mi primer first high, ahora vienen los bits
			{
				bitstate = CHECK0;
				on_receipt = 1;
				Usart1Send((char *)"ev1527_0");
			}
			else if ((duration > ALPHA3_MIN) && (duration < ALPHA3_MAX))	//tengo mi primer first high, ahora vienen los bits
			{
				bitstate = CHECK1;
				on_receipt = 1;
				Usart1Send((char *)"ev1527_1");
			}
			else
			{
				//bitstate = CODE_FINISH;
				bitstate = FIRST_HIGH;
				errorcode = ERR_FIRST_HIGH;
				on_receipt = 0;
			}
			break;

		case NEXT:
			if ((duration > ALPHA1_MIN) && (duration < ALPHA1_MAX))
			{
				//puede ser un 0
				bitstate = CHECK0;
			}
			else if ((duration > ALPHA3_MIN) && (duration < ALPHA3_MAX))
			{
				//puede ser un 1
				bitstate = CHECK1;
			}
			else
			{
				//error en bit
				//bitstate = CODE_FINISH;
				bitstate = FIRST_HIGH;
				errorcode = ERR_BIT_NEXT;
				on_receipt = 0;
			}
			break;

		case CHECK0:
			if ((duration > ALPHA3_MIN) && (duration < ALPHA3_MAX))
			{
				//llego el 0
				bitstate = NEXT;
				bitcount++;

				if (bitcount < 16)
					code0 <<= 1;
				else
					code1 <<= 1;
			}
			else
			{
				//error en bit
				//bitstate = CODE_FINISH;
				bitstate = FIRST_HIGH;
				errorcode = ERR_BIT_0;
				on_receipt = 0;
			}
			break;

		case CHECK1:
			if ((duration > ALPHA1_MIN) && (duration < ALPHA1_MAX))
			{
				//llego el 1
				bitstate = NEXT;
				bitcount++;
				if (bitcount < 16)
				{
					code0 += 1;
					code0 <<= 1;
				}
				else
				{
					code1 += 1;
					code1 <<= 1;
				}
			}
			else
			{
				//error en bit
				//bitstate = CODE_FINISH;
				bitstate = FIRST_HIGH;
				errorcode = ERR_BIT_1;
				on_receipt = 0;
			}
			break;

		case CODE_FINISH:

			break;

		default:		//ver si no tengo que ir directo a NEXT
			bitstate = WAIT_FOR_SILENT;
			break;
	}
	//me fijo si termino el paquete

	if (bitcount >= 24)
	{
		bitstate = CODE_FINISH;
		errorcode = ERR_FINISH_OK;
	}

#endif

#ifdef WITHOUT_ABSOLUTE_VALUE_CTROL_EV1527
	switch (bitstate)
	{
		case WAIT_FOR_SILENT:
			no_silent++;
			break;

		case FIRST_HIGH:
			bitcount = 0;
			code0 = 0;
			code1 = 0;
			bitstate++;
			break;

		case FIRST_LOW:
			if ((duration > PILOT_MIN0_NEW) && (duration < PILOT_MAX0_NEW))	//tengo mi primer first high, ahora vienen los bits
			{
				bitstate = CHECK0;
				ctrol_new = 1;
				Usart1Send((char *)"ev1527_0");
			}
			else if ((duration > PILOT_MIN1_NEW) && (duration < PILOT_MAX1_NEW))	//tengo mi primer first high, ahora vienen los bits
			{
				bitstate = CHECK1;
				ctrol_new = 1;
				Usart1Send((char *)"ev1527_1");
			}
			else
			{
				//bitstate = CODE_FINISH;
				bitstate = FIRST_HIGH;
				errorcode = ERR_FIRST_HIGH;
			}
			break;

		case NEXT:
			if ((duration > LAMBDA1_FROM0_MIN_NEW) && (duration < LAMBDA1_FROM0_MAX_NEW))
			{
				//puede ser un 0
				bitstate = CHECK0;
			}
			else if ((duration > LAMBDA2_FROM1_MIN_NEW) && (duration < LAMBDA2_FROM1_MAX_NEW))
			{
				//puede ser un 1
				bitstate = CHECK1;
			}
			else
			{
				//error en bit
				//bitstate = CODE_FINISH;
				bitstate = FIRST_HIGH;
				errorcode = ERR_BIT_NEXT;
			}
			break;

		case CHECK0:
			if ((duration > LAMBDA2_FROM0_MIN_NEW) && (duration < LAMBDA2_FROM0_MAX_NEW))
			{
				//llego el 0
				bitstate = NEXT;
				bitcount++;

				if (bitcount < 16)
					code0 <<= 1;
				else
					code1 <<= 1;
			}
			else
			{
				//error en bit
				//bitstate = CODE_FINISH;
				bitstate = FIRST_HIGH;
				errorcode = ERR_BIT_0;
			}
			break;

		case CHECK1:
			if ((duration > LAMBDA1_FROM1_MIN_NEW) && (duration < LAMBDA1_FROM1_MAX_NEW))
			{
				//llego el 1
				bitstate = NEXT;
				bitcount++;
				if (bitcount < 16)
				{
					code0 += 1;
					code0 <<= 1;
				}
				else
				{
					code1 += 1;
					code1 <<= 1;
				}
			}
			else
			{
				//error en bit
				//bitstate = CODE_FINISH;
				bitstate = FIRST_HIGH;
				errorcode = ERR_BIT_1;
			}
			break;

		case CODE_FINISH:

			break;

		default:		//ver si no tengo que ir directo a NEXT
			bitstate = WAIT_FOR_SILENT;
			break;
	}
	//me fijo si termino el paquete

	if (bitcount >= 24)
	{
		bitstate = CODE_FINISH;
		errorcode = ERR_FINISH_OK;
	}

#endif

#ifdef WITHOUT_ABSOLUTE_VALUE_CTROL_HT6P20B2_AND_PT2264
	switch (bitstate)
	{
		case WAIT_FOR_SILENT:
			no_silent++;
			break;

		case FIRST_HIGH:
			bitcount = 0;
			code0 = 0;
			code1 = 0;
			bitstate++;
			break;

		case FIRST_LOW:
			//veo si puedo establecer directamente que control es
			if ((duration > PILOT_HT_MIN) && (duration < ALPHA1_MIN))
			{
				//seguro es HT6P20B2
				bitstate = NEXT_HT;
				on_receipt = 1;
				ctrol_new = CTRL_HT;
				Usart1Send((char *)"ht6__");
			}
			else if ((duration >= ALPHA1_MIN) && (duration < PILOT_HT_MAX))
			{
				//puede ser HT6P20B2 o PT2264
				on_receipt = 1;
				bitstate = NEXT_ALL;
			}
			else if ((duration >= PILOT_HT_MAX) && (duration < ALPHA1_MAX))
			{
				//seguro es PT2264
				bitstate = CHECK0_PT;
				on_receipt = 1;
				ctrol_new = CTRL_PT;
				Usart1Send((char *)"pt2264__");
			}
			else
			{
				bitstate = FIRST_HIGH;
				errorcode = ERR_FIRST_HIGH;
				on_receipt = 0;
			}
			break;

		case NEXT_ALL:	//tengo todavia que definir que tipo de control es
			if ((duration > LAMBDA1_MIN) && (duration < LAMBDA1_MAX))
			{
				//puede ser un 0
				bitstate = CHECK0_HT;
				ctrol_new = CTRL_HT;
				Usart1Send((char *)"ht6_0");
			}
			else if ((duration > LAMBDA2_MIN) && (duration < LAMBDA2_MAX))
			{
				//puede ser un 1
				bitstate = CHECK1_HT;
				ctrol_new = CTRL_HT;
				Usart1Send((char *)"ht6_1");
			}
			else if ((duration > ALPHA3_MIN) && (duration < ALPHA3_MAX))
			{
				//llego el 0
				bitstate = NEXT_PT;
				ctrol_new = CTRL_PT;
				bitcount++;

				if (bitcount < 16)
					code0 <<= 1;
				else
					code1 <<= 1;
			}
			else
			{
				//error en bit
				bitstate = FIRST_HIGH;
				errorcode = ERR_BIT_NEXT;
				on_receipt = 0;
			}
			break;

		case NEXT_PT:
			if ((duration > ALPHA1_MIN) && (duration < ALPHA1_MAX))
			{
				//puede ser un 0
				bitstate = CHECK0_PT;
			}
			else if ((duration > ALPHA3_MIN) && (duration < ALPHA3_MAX))
			{
				//puede ser un 1
				bitstate = CHECK1_PT;
			}
			else
			{
				//error en bit
				bitstate = FIRST_HIGH;
				errorcode = ERR_BIT_NEXT;
				on_receipt = 0;
			}
			break;

		case CHECK0_PT:
			if ((duration > ALPHA3_MIN) && (duration < ALPHA3_MAX))
			{
				//llego el 0
				bitstate = NEXT_PT;
				bitcount++;

				if (bitcount < 16)
					code0 <<= 1;
				else
					code1 <<= 1;
			}
			else
			{
				//error en bit
				bitstate = FIRST_HIGH;
				errorcode = ERR_BIT_0;
				on_receipt = 0;
			}
			break;

		case CHECK1_PT:
			if ((duration > ALPHA1_MIN) && (duration < ALPHA1_MAX))
			{
				//llego el 1
				bitstate = NEXT_PT;
				bitcount++;
				if (bitcount < 16)
				{
					code0 += 1;
					code0 <<= 1;
				}
				else
				{
					code1 += 1;
					code1 <<= 1;
				}
			}
			else
			{
				//error en bit
				//bitstate = CODE_FINISH;
				bitstate = FIRST_HIGH;
				errorcode = ERR_BIT_1;
				on_receipt = 0;
			}
			break;

		case NEXT_HT:
			if ((duration > LAMBDA1_MIN) && (duration < LAMBDA1_MAX))
			{
				//puede ser un 0
				bitstate = CHECK0_HT;
			}
			else if ((duration > LAMBDA2_MIN) && (duration < LAMBDA2_MAX))
			{
				//puede ser un 1
				bitstate = CHECK1_HT;
			}
			else
			{
				//error en bit
				bitstate = FIRST_HIGH;
				errorcode = ERR_BIT_NEXT;
			}
			break;

		case CHECK0_HT:
			if ((duration > LAMBDA2_MIN) && (duration < LAMBDA2_MAX))
			{
				//llego el 0
				bitstate = NEXT_HT;
				//si no es el primer bit
				if (bitcount)
				{
					if (bitcount < 16)
						code0 <<= 1;
					else
						code1 <<= 1;
				}
				bitcount++;
			}
			else
			{
				//error en bit
				bitstate = FIRST_HIGH;
				errorcode = ERR_BIT_0;
				on_receipt = 0;
			}
			break;

		case CHECK1_HT:
			if ((duration > LAMBDA1_MIN) && (duration < LAMBDA1_MAX))
			{
				//llego el 1
				bitstate = NEXT_HT;
				//si no es el primer bit
				if (bitcount)
				{
					if (bitcount < 16)
					{
						code0 += 1;
						code0 <<= 1;
					}
					else
					{
						code1 += 1;
						code1 <<= 1;
					}
				}
				bitcount++;
			}
			else
			{
				//error en bit
				bitstate = FIRST_HIGH;
				errorcode = ERR_BIT_1;
				on_receipt = 0;
			}
			break;

		case CODE_FINISH:

			break;

		default:		//ver si no tengo que ir directo a NEXT
			bitstate = WAIT_FOR_SILENT;
			break;
	}
	//me fijo si termino el paquete

	if (ctrol_new == CTRL_HT)
	{
		if (bitcount >= 28)
		{
			bitstate = CODE_FINISH;
			errorcode = ERR_FINISH_OK;
			on_receipt = 0;
		}
	}
	else
	{
		//debe ser PT
		if (bitcount >= 24)
		{
			bitstate = CODE_FINISH;
			errorcode = ERR_FINISH_OK;
			on_receipt = 0;
		}
	}

#endif

#ifdef WITHOUT_ABSOLUTE_VALUE_CTROL_PT2264
	switch (bitstate)
	{
		case WAIT_FOR_SILENT:
			no_silent++;
			break;

		case FIRST_HIGH:
			bitcount = 0;
			code0 = 0;
			code1 = 0;
			bitstate++;
			break;

		case FIRST_LOW:
			if ((duration > PILOT_MIN0_NEW) && (duration < PILOT_MAX0_NEW))	//tengo mi primer first high, ahora vienen los bits
			{
				bitstate = CHECK0;
				ctrol_new = 1;
				on_receipt = 1;
				Usart1Send((char *)"pt2264_0");
			}
			else if ((duration > PILOT_MIN1_NEW) && (duration < PILOT_MAX1_NEW))	//tengo mi primer first high, ahora vienen los bits
			{
				bitstate = CHECK1;
				ctrol_new = 1;
				on_receipt = 1;
				Usart1Send((char *)"pt2264_1");
			}
			else
			{
				//bitstate = CODE_FINISH;
				bitstate = FIRST_HIGH;
				errorcode = ERR_FIRST_HIGH;
				on_receipt = 0;
			}
			break;

		case NEXT:
			if ((duration > LAMBDA1_FROM0_MIN_NEW) && (duration < LAMBDA1_FROM0_MAX_NEW))
			{
				//puede ser un 0
				bitstate = CHECK0;
			}
			else if ((duration > LAMBDA2_FROM1_MIN_NEW) && (duration < LAMBDA2_FROM1_MAX_NEW))
			{
				//puede ser un 1
				bitstate = CHECK1;
			}
			else
			{
				//error en bit
				//bitstate = CODE_FINISH;
				bitstate = FIRST_HIGH;
				errorcode = ERR_BIT_NEXT;
				on_receipt = 0;
			}
			break;

		case CHECK0:
			if ((duration > LAMBDA2_FROM0_MIN_NEW) && (duration < LAMBDA2_FROM0_MAX_NEW))
			{
				//llego el 0
				bitstate = NEXT;
				bitcount++;

				if (bitcount < 16)
					code0 <<= 1;
				else
					code1 <<= 1;
			}
			else
			{
				//error en bit
				//bitstate = CODE_FINISH;
				bitstate = FIRST_HIGH;
				errorcode = ERR_BIT_0;
				on_receipt = 0;
			}
			break;

		case CHECK1:
			if ((duration > LAMBDA1_FROM1_MIN_NEW) && (duration < LAMBDA1_FROM1_MAX_NEW))
			{
				//llego el 1
				bitstate = NEXT;
				bitcount++;
				if (bitcount < 16)
				{
					code0 += 1;
					code0 <<= 1;
				}
				else
				{
					code1 += 1;
					code1 <<= 1;
				}
			}
			else
			{
				//error en bit
				//bitstate = CODE_FINISH;
				bitstate = FIRST_HIGH;
				errorcode = ERR_BIT_1;
				on_receipt = 0;
			}
			break;

		case CODE_FINISH:

			break;

		default:		//ver si no tengo que ir directo a NEXT
			bitstate = WAIT_FOR_SILENT;
			break;
	}
	//me fijo si termino el paquete

	if (bitcount >= 24)
	{
		bitstate = CODE_FINISH;
		errorcode = ERR_FINISH_OK;
		on_receipt = 0;
	}

#endif

}
コード例 #6
0
unsigned char RxCode (void)
{
	char str[30];

	switch (code_state)
	{
		case START:
			//destrabo la interrupcion y espero silencio
			//CodeInterruptEna();
			no_silent = 0;
			bitstate = WAIT_FOR_SILENT;
			errorcode = ERR_CONTINUE;
			pilot_code = PILOT_CODE_MS;		//el timer descuenta directamente
//			F5PLUS_ON;
			code_state++;
			break;

		case SEARCHING:
			if (no_silent == 0)
			{
				if (pilot_code == 0)
				{
					//se silencio durante PILOT_CODE_MS debo estar por recibir codigo
					code_state++;
					//destrabo la interrupcion
					bitstate = FIRST_HIGH;
//					F5PLUS_OFF;
					TIM14->CNT = 0;
				}
			}
			else
				code_state = START;
				//code_state = START_B;
			break;

		case RECEIVING:
			//reviso si termino el codigo (bueno o malo)
			if (errorcode != ERR_CONTINUE)
			{
				//termino el codigo
				code_state++;
			}
			break;

		case ENDED:
			if (errorcode == ERR_FINISH_OK)
			{
//				F5PLUS_OFF;
				sprintf(str, "Ended OK: %04X %04X\r\n", code0, code1);
				Usart1Send(str);
				code_state = ENDED_OK;

				//si tengo un codigo bueno trabo la interrrupcion
				//CodeInterruptDisa();
			}
			else
			{
				code_state = START;
				 if (errorcode == ERR_FIRST_HIGH)
				 {
					 Usart1Send((char *)"Error First High\r\n");
				 }
				 else if (errorcode == ERR_BIT_NEXT)
				 {
					 sprintf(str, "Error in bit: %d\r\n", bitcount);
					 Usart1Send(str);
					 code_state = START;
				 }
				 else
				 {
					 Usart1Send((char *)"Error other??\r\n");
				 }
			}
			break;

		case ENDED_OK:
			code_state = START;
			break;

		default:
			code_state = START;
			break;
	}
	return code_state;
}
コード例 #7
0
void ShowFileSystem(void)
{
	char str [100];

	  Usart1Send((char *) "File System:\r\n");
	  Wait_ms(100);
	  //LoadFilesIndex();

	  sprintf(str, "num0: %08x %08x %d\r\n", files.posi0, files.lenght0, files.lenght0);
	  Usart1Send(str);
	  Wait_ms(100);

	  sprintf(str, "num1: %08x %08x %d\r\n", files.posi1, files.lenght1, files.lenght1);
	  Usart1Send(str);
	  Wait_ms(100);

	  sprintf(str, "num2: %08x %08x %d\r\n", files.posi2, files.lenght2, files.lenght2);
	  Usart1Send(str);
	  Wait_ms(100);

	  sprintf(str, "num3: %08x %08x %d\r\n", files.posi3, files.lenght3, files.lenght3);
	  Usart1Send(str);
	  Wait_ms(100);

	  sprintf(str, "num4: %08x %08x %d\r\n", files.posi4, files.lenght4, files.lenght4);
	  Usart1Send(str);
	  Wait_ms(100);

	  sprintf(str, "num5: %08x %08x %d\r\n", files.posi5, files.lenght5, files.lenght5);
	  Usart1Send(str);
	  Wait_ms(100);

	  sprintf(str, "num6: %08x %08x %d\r\n", files.posi6, files.lenght6, files.lenght6);
	  Usart1Send(str);
	  Wait_ms(100);

	  sprintf(str, "num7: %08x %08x %d\r\n", files.posi7, files.lenght7, files.lenght7);
	  Usart1Send(str);
	  Wait_ms(100);

	  sprintf(str, "num8: %08x %08x %d\r\n", files.posi8, files.lenght8, files.lenght8);
	  Usart1Send(str);
	  Wait_ms(100);

	  sprintf(str, "num9: %08x %08x %d\r\n", files.posi9, files.lenght9, files.lenght9);
	  Usart1Send(str);
	  Wait_ms(100);
}