Example #1
0
int32_t main(void){
	gain g = { 0.0, 0.0, 0.0};
	
	uint32_t index = 0;
	
	int32_t size;
	uint8_t data_rx[64];
	uint8_t data_tx = 0x00;
	uint32_t start, end;
	
	//初期化開始
	conio_init(57600UL);
	
	Init_timer();
	InitLED();
	rcin_enable(0);
	
	Init_i2c();
	Init_fram();
	Init_DT();
	
	printf("Initialize OK.\r\n");
	//初期化終了
	
	i2c->Cfg.SlaveAddr = 0x42;
	i2c->Cfg.BaudRate = 400000;
	
	g.p_gain = read_float(0);
	g.i_gain = read_float(4);
	g.d_gain = read_float(8);
	
	printf("%f, %f, %f\r\n", g.p_gain, g.i_gain, g.d_gain);
	
	while(1){
	} 
}
Example #2
0
// Modify from bcmDbgGetLine() of bcmdbg.c
bool bcmDbgGetLine_WithTimeOut(char *pcBuf, long lBufSize, U32 timeout_us)
{
	char *s_ptr;
	volatile char input_char;
	long ii;
	TimeStruct IR_RxTimer;
	bool success;

	input_char = 0;
	//input_char = -1;
	s_ptr = pcBuf;
	ii = 0;
	Init_timer(&IR_RxTimer,timeout_us);

	while ((input_char != '\n') && (ii < lBufSize) && (Check_timer(&IR_RxTimer) != 1) )
	{

		while ((input_char = det_in_char()) < 0  && (Check_timer(&IR_RxTimer) != 1))
		{
			//	  	  HalServiceWatchDogManager();
		}

		if ((input_char == '\r') || (input_char == '\n') || ((U8)input_char == 0xFF))	// 0xFF = EOF
		{
			uart_out('\r');
			uart_out('\n');
			break;
		}
		else if (input_char == 0x08) // backspace
		{
			ii--;
			if( ii < 0 )
			{
				ii = 0;
			}
			else
			{           
				s_ptr--;
				uart_out(0x08); // deleting backspace
				uart_out(0x20); // deleting backspace
				uart_out(0x08); // deleting backspace
			}
		} 
		else 
		{
			ii++;            
			*s_ptr++ = input_char;
			uart_out(input_char); // putchar(input_char);
		}

	}
	*s_ptr = '\0';
	
	if (Check_timer(&IR_RxTimer) == 1) {
		success = false;
	}
	else {
		success = true;
	}
	return success;

} // bcmDbgGetLine_WithTimeOut