示例#1
0
文件: test.c 项目: theepot/esc64
int sum(int n, ...)
{
	int i, s, v;
	
	va_list va;
	va_start(va, n);
		
	s = 0;
	for(i = 0; i < n; ++i)
	{
		v = va_arg(va, int);
		
		print_str("sum(): arg[");
		print_hex16(i);
		print_str("] = ");
		print_hex16(v);
		print_char('\n');
		
		s += v;
	}
	
	va_end(va);
	
	return s;
}
示例#2
0
文件: test.c 项目: theepot/esc64
int main(int argc, char** argv)
{
	int s;
	
	s = sum(5, 0xA, 0xB, 0xC, 0xD, 0xE);
	print_str("s = ");
	print_hex16(s);
	print_char('\n');

	return 0;
}
示例#3
0
文件: test.c 项目: theepot/esc64
int main(int argc, char** argv)
{
	A_int8_t_amax2b1 = INT8_MAX;
	B_int8_t_amax2b1 = A_int8_t_amax2b1;
	A_int8_t_amin2b1 = INT8_MIN;
	B_int8_t_amin2b1 = A_int8_t_amin2b1;
	A_int8_t_azero2b1 = 0;
	B_int8_t_azero2b1 = A_int8_t_azero2b1;
	A_int8_t_aone2b1 = 1;
	B_int8_t_aone2b1 = A_int8_t_aone2b1;
	A_int8_t_aMinusOne2b1 = -1;
	B_int8_t_aMinusOne2b1 = A_int8_t_aMinusOne2b1;

	A_int8_t_amax2b2 = INT8_MAX;
	B_uint8_t_amax2b2 = A_int8_t_amax2b2;
	A_int8_t_amin2b2 = INT8_MIN;
	B_uint8_t_amin2b2 = A_int8_t_amin2b2;
	A_int8_t_azero2b2 = 0;
	B_uint8_t_azero2b2 = A_int8_t_azero2b2;
	A_int8_t_aone2b2 = 1;
	B_uint8_t_aone2b2 = A_int8_t_aone2b2;
	A_int8_t_aMinusOne2b2 = -1;
	B_uint8_t_aMinusOne2b2 = A_int8_t_aMinusOne2b2;

	A_int8_t_amax2b3 = INT8_MAX;
	B_int16_t_amax2b3 = A_int8_t_amax2b3;
	A_int8_t_amin2b3 = INT8_MIN;
	B_int16_t_amin2b3 = A_int8_t_amin2b3;
	A_int8_t_azero2b3 = 0;
	B_int16_t_azero2b3 = A_int8_t_azero2b3;
	A_int8_t_aone2b3 = 1;
	B_int16_t_aone2b3 = A_int8_t_aone2b3;
	A_int8_t_aMinusOne2b3 = -1;
	B_int16_t_aMinusOne2b3 = A_int8_t_aMinusOne2b3;

	A_int8_t_amax2b4 = INT8_MAX;
	B_uint16_t_amax2b4 = A_int8_t_amax2b4;
	A_int8_t_amin2b4 = INT8_MIN;
	B_uint16_t_amin2b4 = A_int8_t_amin2b4;
	A_int8_t_azero2b4 = 0;
	B_uint16_t_azero2b4 = A_int8_t_azero2b4;
	A_int8_t_aone2b4 = 1;
	B_uint16_t_aone2b4 = A_int8_t_aone2b4;
	A_int8_t_aMinusOne2b4 = -1;
	B_uint16_t_aMinusOne2b4 = A_int8_t_aMinusOne2b4;

	A_uint8_t_amax2b5 = UINT8_MAX;
	B_int8_t_amax2b5 = A_uint8_t_amax2b5;
	A_uint8_t_amin2b5 = 0;
	B_int8_t_amin2b5 = A_uint8_t_amin2b5;
	A_uint8_t_azero2b5 = 0;
	B_int8_t_azero2b5 = A_uint8_t_azero2b5;
	A_uint8_t_aone2b5 = 1;
	B_int8_t_aone2b5 = A_uint8_t_aone2b5;

	A_uint8_t_amax2b6 = UINT8_MAX;
	B_uint8_t_amax2b6 = A_uint8_t_amax2b6;
	A_uint8_t_amin2b6 = 0;
	B_uint8_t_amin2b6 = A_uint8_t_amin2b6;
	A_uint8_t_azero2b6 = 0;
	B_uint8_t_azero2b6 = A_uint8_t_azero2b6;
	A_uint8_t_aone2b6 = 1;
	B_uint8_t_aone2b6 = A_uint8_t_aone2b6;

	A_uint8_t_amax2b7 = UINT8_MAX;
	B_int16_t_amax2b7 = A_uint8_t_amax2b7;
	A_uint8_t_amin2b7 = 0;
	B_int16_t_amin2b7 = A_uint8_t_amin2b7;
	A_uint8_t_azero2b7 = 0;
	B_int16_t_azero2b7 = A_uint8_t_azero2b7;
	A_uint8_t_aone2b7 = 1;
	B_int16_t_aone2b7 = A_uint8_t_aone2b7;

	A_uint8_t_amax2b8 = UINT8_MAX;
	B_uint16_t_amax2b8 = A_uint8_t_amax2b8;
	A_uint8_t_amin2b8 = 0;
	B_uint16_t_amin2b8 = A_uint8_t_amin2b8;
	A_uint8_t_azero2b8 = 0;
	B_uint16_t_azero2b8 = A_uint8_t_azero2b8;
	A_uint8_t_aone2b8 = 1;
	B_uint16_t_aone2b8 = A_uint8_t_aone2b8;

	A_int16_t_amax2b9 = INT16_MAX;
	B_int8_t_amax2b9 = A_int16_t_amax2b9;
	A_int16_t_amin2b9 = INT16_MIN;
	B_int8_t_amin2b9 = A_int16_t_amin2b9;
	A_int16_t_azero2b9 = 0;
	B_int8_t_azero2b9 = A_int16_t_azero2b9;
	A_int16_t_aone2b9 = 1;
	B_int8_t_aone2b9 = A_int16_t_aone2b9;
	A_int16_t_aMinusOne2b9 = -1;
	B_int8_t_aMinusOne2b9 = A_int16_t_aMinusOne2b9;

	A_int16_t_amax2b10 = INT16_MAX;
	B_uint8_t_amax2b10 = A_int16_t_amax2b10;
	A_int16_t_amin2b10 = INT16_MIN;
	B_uint8_t_amin2b10 = A_int16_t_amin2b10;
	A_int16_t_azero2b10 = 0;
	B_uint8_t_azero2b10 = A_int16_t_azero2b10;
	A_int16_t_aone2b10 = 1;
	B_uint8_t_aone2b10 = A_int16_t_aone2b10;
	A_int16_t_aMinusOne2b10 = -1;
	B_uint8_t_aMinusOne2b10 = A_int16_t_aMinusOne2b10;

	A_int16_t_amax2b11 = INT16_MAX;
	B_int16_t_amax2b11 = A_int16_t_amax2b11;
	A_int16_t_amin2b11 = INT16_MIN;
	B_int16_t_amin2b11 = A_int16_t_amin2b11;
	A_int16_t_azero2b11 = 0;
	B_int16_t_azero2b11 = A_int16_t_azero2b11;
	A_int16_t_aone2b11 = 1;
	B_int16_t_aone2b11 = A_int16_t_aone2b11;
	A_int16_t_aMinusOne2b11 = -1;
	B_int16_t_aMinusOne2b11 = A_int16_t_aMinusOne2b11;

	A_int16_t_amax2b12 = INT16_MAX;
	B_uint16_t_amax2b12 = A_int16_t_amax2b12;
	A_int16_t_amin2b12 = INT16_MIN;
	B_uint16_t_amin2b12 = A_int16_t_amin2b12;
	A_int16_t_azero2b12 = 0;
	B_uint16_t_azero2b12 = A_int16_t_azero2b12;
	A_int16_t_aone2b12 = 1;
	B_uint16_t_aone2b12 = A_int16_t_aone2b12;
	A_int16_t_aMinusOne2b12 = -1;
	B_uint16_t_aMinusOne2b12 = A_int16_t_aMinusOne2b12;

	A_uint16_t_amax2b13 = UINT16_MAX;
	B_int8_t_amax2b13 = A_uint16_t_amax2b13;
	A_uint16_t_amin2b13 = 0;
	B_int8_t_amin2b13 = A_uint16_t_amin2b13;
	A_uint16_t_azero2b13 = 0;
	B_int8_t_azero2b13 = A_uint16_t_azero2b13;
	A_uint16_t_aone2b13 = 1;
	B_int8_t_aone2b13 = A_uint16_t_aone2b13;

	A_uint16_t_amax2b14 = UINT16_MAX;
	B_uint8_t_amax2b14 = A_uint16_t_amax2b14;
	A_uint16_t_amin2b14 = 0;
	B_uint8_t_amin2b14 = A_uint16_t_amin2b14;
	A_uint16_t_azero2b14 = 0;
	B_uint8_t_azero2b14 = A_uint16_t_azero2b14;
	A_uint16_t_aone2b14 = 1;
	B_uint8_t_aone2b14 = A_uint16_t_aone2b14;

	A_uint16_t_amax2b15 = UINT16_MAX;
	B_int16_t_amax2b15 = A_uint16_t_amax2b15;
	A_uint16_t_amin2b15 = 0;
	B_int16_t_amin2b15 = A_uint16_t_amin2b15;
	A_uint16_t_azero2b15 = 0;
	B_int16_t_azero2b15 = A_uint16_t_azero2b15;
	A_uint16_t_aone2b15 = 1;
	B_int16_t_aone2b15 = A_uint16_t_aone2b15;

	A_uint16_t_amax2b16 = UINT16_MAX;
	B_uint16_t_amax2b16 = A_uint16_t_amax2b16;
	A_uint16_t_amin2b16 = 0;
	B_uint16_t_amin2b16 = A_uint16_t_amin2b16;
	A_uint16_t_azero2b16 = 0;
	B_uint16_t_azero2b16 = A_uint16_t_azero2b16;
	A_uint16_t_aone2b16 = 1;
	B_uint16_t_aone2b16 = A_uint16_t_aone2b16;

	//print
	print_str("A_int8_t_amax2b1=");
	print_hex16(A_int8_t_amax2b1);
	print_char('\n');
	print_str("B_int8_t_amax2b1=");
	print_hex16(B_int8_t_amax2b1);
	print_char('\n');
	print_str("A_int8_t_amin2b1=");
	print_hex16(A_int8_t_amin2b1);
	print_char('\n');
	print_str("B_int8_t_amin2b1=");
	print_hex16(B_int8_t_amin2b1);
	print_char('\n');
	print_str("A_int8_t_azero2b1=");
	print_hex16(A_int8_t_azero2b1);
	print_char('\n');
	print_str("B_int8_t_azero2b1=");
	print_hex16(B_int8_t_azero2b1);
	print_char('\n');
	print_str("A_int8_t_aone2b1=");
	print_hex16(A_int8_t_aone2b1);
	print_char('\n');
	print_str("B_int8_t_aone2b1=");
	print_hex16(B_int8_t_aone2b1);
	print_char('\n');
	print_str("A_int8_t_aMinusOne2b1=");
	print_hex16(A_int8_t_aMinusOne2b1);
	print_char('\n');
	print_str("B_int8_t_aMinusOne2b1=");
	print_hex16(B_int8_t_aMinusOne2b1);
	print_char('\n');
	print_str("A_int8_t_amax2b2=");
	print_hex16(A_int8_t_amax2b2);
	print_char('\n');
	print_str("B_uint8_t_amax2b2=");
	print_hex16(B_uint8_t_amax2b2);
	print_char('\n');
	print_str("A_int8_t_amin2b2=");
	print_hex16(A_int8_t_amin2b2);
	print_char('\n');
	print_str("B_uint8_t_amin2b2=");
	print_hex16(B_uint8_t_amin2b2);
	print_char('\n');
	print_str("A_int8_t_azero2b2=");
	print_hex16(A_int8_t_azero2b2);
	print_char('\n');
	print_str("B_uint8_t_azero2b2=");
	print_hex16(B_uint8_t_azero2b2);
	print_char('\n');
	print_str("A_int8_t_aone2b2=");
	print_hex16(A_int8_t_aone2b2);
	print_char('\n');
	print_str("B_uint8_t_aone2b2=");
	print_hex16(B_uint8_t_aone2b2);
	print_char('\n');
	print_str("A_int8_t_aMinusOne2b2=");
	print_hex16(A_int8_t_aMinusOne2b2);
	print_char('\n');
	print_str("B_uint8_t_aMinusOne2b2=");
	print_hex16(B_uint8_t_aMinusOne2b2);
	print_char('\n');
	print_str("A_int8_t_amax2b3=");
	print_hex16(A_int8_t_amax2b3);
	print_char('\n');
	print_str("B_int16_t_amax2b3=");
	print_hex16(B_int16_t_amax2b3);
	print_char('\n');
	print_str("A_int8_t_amin2b3=");
	print_hex16(A_int8_t_amin2b3);
	print_char('\n');
	print_str("B_int16_t_amin2b3=");
	print_hex16(B_int16_t_amin2b3);
	print_char('\n');
	print_str("A_int8_t_azero2b3=");
	print_hex16(A_int8_t_azero2b3);
	print_char('\n');
	print_str("B_int16_t_azero2b3=");
	print_hex16(B_int16_t_azero2b3);
	print_char('\n');
	print_str("A_int8_t_aone2b3=");
	print_hex16(A_int8_t_aone2b3);
	print_char('\n');
	print_str("B_int16_t_aone2b3=");
	print_hex16(B_int16_t_aone2b3);
	print_char('\n');
	print_str("A_int8_t_aMinusOne2b3=");
	print_hex16(A_int8_t_aMinusOne2b3);
	print_char('\n');
	print_str("B_int16_t_aMinusOne2b3=");
	print_hex16(B_int16_t_aMinusOne2b3);
	print_char('\n');
	print_str("A_int8_t_amax2b4=");
	print_hex16(A_int8_t_amax2b4);
	print_char('\n');
	print_str("B_uint16_t_amax2b4=");
	print_hex16(B_uint16_t_amax2b4);
	print_char('\n');
	print_str("A_int8_t_amin2b4=");
	print_hex16(A_int8_t_amin2b4);
	print_char('\n');
	print_str("B_uint16_t_amin2b4=");
	print_hex16(B_uint16_t_amin2b4);
	print_char('\n');
	print_str("A_int8_t_azero2b4=");
	print_hex16(A_int8_t_azero2b4);
	print_char('\n');
	print_str("B_uint16_t_azero2b4=");
	print_hex16(B_uint16_t_azero2b4);
	print_char('\n');
	print_str("A_int8_t_aone2b4=");
	print_hex16(A_int8_t_aone2b4);
	print_char('\n');
	print_str("B_uint16_t_aone2b4=");
	print_hex16(B_uint16_t_aone2b4);
	print_char('\n');
	print_str("A_int8_t_aMinusOne2b4=");
	print_hex16(A_int8_t_aMinusOne2b4);
	print_char('\n');
	print_str("B_uint16_t_aMinusOne2b4=");
	print_hex16(B_uint16_t_aMinusOne2b4);
	print_char('\n');
	print_str("A_uint8_t_amax2b5=");
	print_hex16(A_uint8_t_amax2b5);
	print_char('\n');
	print_str("B_int8_t_amax2b5=");
	print_hex16(B_int8_t_amax2b5);
	print_char('\n');
	print_str("A_uint8_t_amin2b5=");
	print_hex16(A_uint8_t_amin2b5);
	print_char('\n');
	print_str("B_int8_t_amin2b5=");
	print_hex16(B_int8_t_amin2b5);
	print_char('\n');
	print_str("A_uint8_t_azero2b5=");
	print_hex16(A_uint8_t_azero2b5);
	print_char('\n');
	print_str("B_int8_t_azero2b5=");
	print_hex16(B_int8_t_azero2b5);
	print_char('\n');
	print_str("A_uint8_t_aone2b5=");
	print_hex16(A_uint8_t_aone2b5);
	print_char('\n');
	print_str("B_int8_t_aone2b5=");
	print_hex16(B_int8_t_aone2b5);
	print_char('\n');
	print_str("A_uint8_t_amax2b6=");
	print_hex16(A_uint8_t_amax2b6);
	print_char('\n');
	print_str("B_uint8_t_amax2b6=");
	print_hex16(B_uint8_t_amax2b6);
	print_char('\n');
	print_str("A_uint8_t_amin2b6=");
	print_hex16(A_uint8_t_amin2b6);
	print_char('\n');
	print_str("B_uint8_t_amin2b6=");
	print_hex16(B_uint8_t_amin2b6);
	print_char('\n');
	print_str("A_uint8_t_azero2b6=");
	print_hex16(A_uint8_t_azero2b6);
	print_char('\n');
	print_str("B_uint8_t_azero2b6=");
	print_hex16(B_uint8_t_azero2b6);
	print_char('\n');
	print_str("A_uint8_t_aone2b6=");
	print_hex16(A_uint8_t_aone2b6);
	print_char('\n');
	print_str("B_uint8_t_aone2b6=");
	print_hex16(B_uint8_t_aone2b6);
	print_char('\n');
	print_str("A_uint8_t_amax2b7=");
	print_hex16(A_uint8_t_amax2b7);
	print_char('\n');
	print_str("B_int16_t_amax2b7=");
	print_hex16(B_int16_t_amax2b7);
	print_char('\n');
	print_str("A_uint8_t_amin2b7=");
	print_hex16(A_uint8_t_amin2b7);
	print_char('\n');
	print_str("B_int16_t_amin2b7=");
	print_hex16(B_int16_t_amin2b7);
	print_char('\n');
	print_str("A_uint8_t_azero2b7=");
	print_hex16(A_uint8_t_azero2b7);
	print_char('\n');
	print_str("B_int16_t_azero2b7=");
	print_hex16(B_int16_t_azero2b7);
	print_char('\n');
	print_str("A_uint8_t_aone2b7=");
	print_hex16(A_uint8_t_aone2b7);
	print_char('\n');
	print_str("B_int16_t_aone2b7=");
	print_hex16(B_int16_t_aone2b7);
	print_char('\n');
	print_str("A_uint8_t_amax2b8=");
	print_hex16(A_uint8_t_amax2b8);
	print_char('\n');
	print_str("B_uint16_t_amax2b8=");
	print_hex16(B_uint16_t_amax2b8);
	print_char('\n');
	print_str("A_uint8_t_amin2b8=");
	print_hex16(A_uint8_t_amin2b8);
	print_char('\n');
	print_str("B_uint16_t_amin2b8=");
	print_hex16(B_uint16_t_amin2b8);
	print_char('\n');
	print_str("A_uint8_t_azero2b8=");
	print_hex16(A_uint8_t_azero2b8);
	print_char('\n');
	print_str("B_uint16_t_azero2b8=");
	print_hex16(B_uint16_t_azero2b8);
	print_char('\n');
	print_str("A_uint8_t_aone2b8=");
	print_hex16(A_uint8_t_aone2b8);
	print_char('\n');
	print_str("B_uint16_t_aone2b8=");
	print_hex16(B_uint16_t_aone2b8);
	print_char('\n');
	print_str("A_int16_t_amax2b9=");
	print_hex16(A_int16_t_amax2b9);
	print_char('\n');
	print_str("B_int8_t_amax2b9=");
	print_hex16(B_int8_t_amax2b9);
	print_char('\n');
	print_str("A_int16_t_amin2b9=");
	print_hex16(A_int16_t_amin2b9);
	print_char('\n');
	print_str("B_int8_t_amin2b9=");
	print_hex16(B_int8_t_amin2b9);
	print_char('\n');
	print_str("A_int16_t_azero2b9=");
	print_hex16(A_int16_t_azero2b9);
	print_char('\n');
	print_str("B_int8_t_azero2b9=");
	print_hex16(B_int8_t_azero2b9);
	print_char('\n');
	print_str("A_int16_t_aone2b9=");
	print_hex16(A_int16_t_aone2b9);
	print_char('\n');
	print_str("B_int8_t_aone2b9=");
	print_hex16(B_int8_t_aone2b9);
	print_char('\n');
	print_str("A_int16_t_aMinusOne2b9=");
	print_hex16(A_int16_t_aMinusOne2b9);
	print_char('\n');
	print_str("B_int8_t_aMinusOne2b9=");
	print_hex16(B_int8_t_aMinusOne2b9);
	print_char('\n');
	print_str("A_int16_t_amax2b10=");
	print_hex16(A_int16_t_amax2b10);
	print_char('\n');
	print_str("B_uint8_t_amax2b10=");
	print_hex16(B_uint8_t_amax2b10);
	print_char('\n');
	print_str("A_int16_t_amin2b10=");
	print_hex16(A_int16_t_amin2b10);
	print_char('\n');
	print_str("B_uint8_t_amin2b10=");
	print_hex16(B_uint8_t_amin2b10);
	print_char('\n');
	print_str("A_int16_t_azero2b10=");
	print_hex16(A_int16_t_azero2b10);
	print_char('\n');
	print_str("B_uint8_t_azero2b10=");
	print_hex16(B_uint8_t_azero2b10);
	print_char('\n');
	print_str("A_int16_t_aone2b10=");
	print_hex16(A_int16_t_aone2b10);
	print_char('\n');
	print_str("B_uint8_t_aone2b10=");
	print_hex16(B_uint8_t_aone2b10);
	print_char('\n');
	print_str("A_int16_t_aMinusOne2b10=");
	print_hex16(A_int16_t_aMinusOne2b10);
	print_char('\n');
	print_str("B_uint8_t_aMinusOne2b10=");
	print_hex16(B_uint8_t_aMinusOne2b10);
	print_char('\n');
	print_str("A_int16_t_amax2b11=");
	print_hex16(A_int16_t_amax2b11);
	print_char('\n');
	print_str("B_int16_t_amax2b11=");
	print_hex16(B_int16_t_amax2b11);
	print_char('\n');
	print_str("A_int16_t_amin2b11=");
	print_hex16(A_int16_t_amin2b11);
	print_char('\n');
	print_str("B_int16_t_amin2b11=");
	print_hex16(B_int16_t_amin2b11);
	print_char('\n');
	print_str("A_int16_t_azero2b11=");
	print_hex16(A_int16_t_azero2b11);
	print_char('\n');
	print_str("B_int16_t_azero2b11=");
	print_hex16(B_int16_t_azero2b11);
	print_char('\n');
	print_str("A_int16_t_aone2b11=");
	print_hex16(A_int16_t_aone2b11);
	print_char('\n');
	print_str("B_int16_t_aone2b11=");
	print_hex16(B_int16_t_aone2b11);
	print_char('\n');
	print_str("A_int16_t_aMinusOne2b11=");
	print_hex16(A_int16_t_aMinusOne2b11);
	print_char('\n');
	print_str("B_int16_t_aMinusOne2b11=");
	print_hex16(B_int16_t_aMinusOne2b11);
	print_char('\n');
	print_str("A_int16_t_amax2b12=");
	print_hex16(A_int16_t_amax2b12);
	print_char('\n');
	print_str("B_uint16_t_amax2b12=");
	print_hex16(B_uint16_t_amax2b12);
	print_char('\n');
	print_str("A_int16_t_amin2b12=");
	print_hex16(A_int16_t_amin2b12);
	print_char('\n');
	print_str("B_uint16_t_amin2b12=");
	print_hex16(B_uint16_t_amin2b12);
	print_char('\n');
	print_str("A_int16_t_azero2b12=");
	print_hex16(A_int16_t_azero2b12);
	print_char('\n');
	print_str("B_uint16_t_azero2b12=");
	print_hex16(B_uint16_t_azero2b12);
	print_char('\n');
	print_str("A_int16_t_aone2b12=");
	print_hex16(A_int16_t_aone2b12);
	print_char('\n');
	print_str("B_uint16_t_aone2b12=");
	print_hex16(B_uint16_t_aone2b12);
	print_char('\n');
	print_str("A_int16_t_aMinusOne2b12=");
	print_hex16(A_int16_t_aMinusOne2b12);
	print_char('\n');
	print_str("B_uint16_t_aMinusOne2b12=");
	print_hex16(B_uint16_t_aMinusOne2b12);
	print_char('\n');
	print_str("A_uint16_t_amax2b13=");
	print_hex16(A_uint16_t_amax2b13);
	print_char('\n');
	print_str("B_int8_t_amax2b13=");
	print_hex16(B_int8_t_amax2b13);
	print_char('\n');
	print_str("A_uint16_t_amin2b13=");
	print_hex16(A_uint16_t_amin2b13);
	print_char('\n');
	print_str("B_int8_t_amin2b13=");
	print_hex16(B_int8_t_amin2b13);
	print_char('\n');
	print_str("A_uint16_t_azero2b13=");
	print_hex16(A_uint16_t_azero2b13);
	print_char('\n');
	print_str("B_int8_t_azero2b13=");
	print_hex16(B_int8_t_azero2b13);
	print_char('\n');
	print_str("A_uint16_t_aone2b13=");
	print_hex16(A_uint16_t_aone2b13);
	print_char('\n');
	print_str("B_int8_t_aone2b13=");
	print_hex16(B_int8_t_aone2b13);
	print_char('\n');
	print_str("A_uint16_t_amax2b14=");
	print_hex16(A_uint16_t_amax2b14);
	print_char('\n');
	print_str("B_uint8_t_amax2b14=");
	print_hex16(B_uint8_t_amax2b14);
	print_char('\n');
	print_str("A_uint16_t_amin2b14=");
	print_hex16(A_uint16_t_amin2b14);
	print_char('\n');
	print_str("B_uint8_t_amin2b14=");
	print_hex16(B_uint8_t_amin2b14);
	print_char('\n');
	print_str("A_uint16_t_azero2b14=");
	print_hex16(A_uint16_t_azero2b14);
	print_char('\n');
	print_str("B_uint8_t_azero2b14=");
	print_hex16(B_uint8_t_azero2b14);
	print_char('\n');
	print_str("A_uint16_t_aone2b14=");
	print_hex16(A_uint16_t_aone2b14);
	print_char('\n');
	print_str("B_uint8_t_aone2b14=");
	print_hex16(B_uint8_t_aone2b14);
	print_char('\n');
	print_str("A_uint16_t_amax2b15=");
	print_hex16(A_uint16_t_amax2b15);
	print_char('\n');
	print_str("B_int16_t_amax2b15=");
	print_hex16(B_int16_t_amax2b15);
	print_char('\n');
	print_str("A_uint16_t_amin2b15=");
	print_hex16(A_uint16_t_amin2b15);
	print_char('\n');
	print_str("B_int16_t_amin2b15=");
	print_hex16(B_int16_t_amin2b15);
	print_char('\n');
	print_str("A_uint16_t_azero2b15=");
	print_hex16(A_uint16_t_azero2b15);
	print_char('\n');
	print_str("B_int16_t_azero2b15=");
	print_hex16(B_int16_t_azero2b15);
	print_char('\n');
	print_str("A_uint16_t_aone2b15=");
	print_hex16(A_uint16_t_aone2b15);
	print_char('\n');
	print_str("B_int16_t_aone2b15=");
	print_hex16(B_int16_t_aone2b15);
	print_char('\n');
	print_str("A_uint16_t_amax2b16=");
	print_hex16(A_uint16_t_amax2b16);
	print_char('\n');
	print_str("B_uint16_t_amax2b16=");
	print_hex16(B_uint16_t_amax2b16);
	print_char('\n');
	print_str("A_uint16_t_amin2b16=");
	print_hex16(A_uint16_t_amin2b16);
	print_char('\n');
	print_str("B_uint16_t_amin2b16=");
	print_hex16(B_uint16_t_amin2b16);
	print_char('\n');
	print_str("A_uint16_t_azero2b16=");
	print_hex16(A_uint16_t_azero2b16);
	print_char('\n');
	print_str("B_uint16_t_azero2b16=");
	print_hex16(B_uint16_t_azero2b16);
	print_char('\n');
	print_str("A_uint16_t_aone2b16=");
	print_hex16(A_uint16_t_aone2b16);
	print_char('\n');
	print_str("B_uint16_t_aone2b16=");
	print_hex16(B_uint16_t_aone2b16);
	print_char('\n');

	return 0;
}
示例#4
0
int main(void) {
  sei(); // enable interrupts
  leds_init();
  pwm_init();
  bot_init();
  spi_init();
  acquisition_setup();
  xbee_set_baudrate(9600);
  xbee_enable();

  if (display_init()!=0) {
    leds_set_displaylight(1024);
    if (display_type==2) {
      gfx_init();
    }
  }
  
  eeprom_read_block (acquisition_calibration, persistant.calibration, sizeof(acquisition_calibration));
  
  gfx_fill(0x00);
  print_prop_text(15, 0, "nibo");
  gfx_set_proportional(0);

  //copro_ir_startMeasure();
  delay(10);
  //motco_setSpeedParameters(5, 4, 6); // ki, kp, kd
  copro_setSpeedParameters(15, 20, 10); // ki, kp, kd

  stress = 0;

  //Setup Jumper...
  deactivate_output_bit(IO_INPUT_2);
  activate_output_bit(IO_INPUT_3);
  set_output_bit(IO_INPUT_2);
  clear_output_bit(IO_INPUT_3);


  if (!get_input_bit(IO_INPUT_1)) {
    behaviour = BEHAVIOUR_CALIB;
    
    acquisition_calibration[0]=0x20;
    acquisition_calibration[1]=0x20;
    acquisition_calibration[2]=0x20;
    acquisition_calibration[3]=0x20;
    
    print_prop_text(21, 30, "CALIBRATION");
    
    delay(100);
    // Floor

    uint16_t values[4];
    values[0]=0;
    values[1]=0;
    values[2]=0;
    values[3]=0;

    for (uint8_t i = 0; i<5; i++) {
      for (uint8_t j = 0; j<10; j++) {
        if (j>2) {
          values[0] += acquisition_getValue(0);
          values[1] += acquisition_getValue(1);
          values[2] += acquisition_getValue(2);
          values[3] += acquisition_getValue(3);
        }
        gfx_set_proportional(0);
        gfx_draw_mode(GFX_DM_JAM2);
        gfx_move(31, 41);
        print_hex(acquisition_getValue(AN_FLOOR_R));
        gfx_print_char(' ');
        print_hex(acquisition_getValue(AN_LINE_R));
        gfx_print_char(' ');
        print_hex(acquisition_getValue(AN_LINE_L));
        gfx_print_char(' ');
        print_hex(acquisition_getValue(AN_FLOOR_L));
        delay(100);
      }
      gfx_move(81+4*i, 30);
      gfx_print_char('.');
    }

    acquisition_calibration[0] = values[0]/71;
    acquisition_calibration[1] = values[1]/71;
    acquisition_calibration[2] = values[2]/71;
    acquisition_calibration[3] = values[3]/71;
    
    eeprom_write_block (acquisition_calibration, persistant.calibration, sizeof(acquisition_calibration));
    
    
    delay(100);
    gfx_print_text(" OK");
    IO_LEDS_GREEN_PORT = 0xff;
    while (1) {
      // Floor
      gfx_set_proportional(0);
      gfx_draw_mode(GFX_DM_JAM2);
      gfx_move(31, 49);
      print_hex(acquisition_getValue(AN_FLOOR_R));
      gfx_print_char(' ');
      print_hex(acquisition_getValue(AN_LINE_R));
      gfx_print_char(' ');
      print_hex(acquisition_getValue(AN_LINE_L));
      gfx_print_char(' ');
      print_hex(acquisition_getValue(AN_FLOOR_L));
      delay(10);
    }
  }
  
  while (1) {

    //while (!uart0_rxempty() && !uart0_txfull()) {
    //  uart0_putchar(uart0_getchar());
    //}

    gfx_draw_mode(GFX_DM_JAM2);

    //*
    if (xbee_tx_idle()) {
      transmit_update1();
    }
    //delay(50);
    //*/
    delay(10);

    // Spannung
    //bot_update();
    char text[20];
    float volt = 0.0160 * acquisition_getValue(AN_VBAT);
    sprintf(text, "%2.1fV ", (double)volt);
    gfx_move(45, 0);
    gfx_print_text(text);

    volt_flt = 0.9*volt_flt+0.1*volt;

    if (volt_flt<8.0) {
      show_recharge_screen();
    }

    // Ori
    gfx_move(0, 25);
    sprintf(text, "or:%3i ", (int)ori_deg);
    gfx_print_text(text);
    sprintf(text, "op:%2i/%2i ", (int)ori_opt, (int)ori);
    gfx_print_text(text);
    sprintf(text, "m:%1i", (int)mode);
    gfx_print_text(text);
    
    // Floor
    gfx_move(31, 49);
    print_hex(acquisition_getDiff(AN_FLOOR_R));
    gfx_print_char(' ');
    print_hex(acquisition_getDiff(AN_LINE_R));
    gfx_print_char(' ');
    print_hex(acquisition_getDiff(AN_LINE_L));
    gfx_print_char(' ');
    print_hex(acquisition_getDiff(AN_FLOOR_L));

    // Distance
    gfx_move(4, 57);
    gfx_print_text("R  ");
    print_hex(dist_r);
    gfx_print_char(' ');
    print_hex(dist_fr);
    gfx_print_char(' ');
    print_hex(dist_f);
    gfx_print_char(' ');
    print_hex(dist_fl);
    gfx_print_char(' ');
    print_hex(dist_l);
    gfx_print_text("  L");

////////////////////////////

    print_hex16(0, 33, copro_ticks_r);
    print_hex16(105, 33, copro_ticks_l);

    print_hex16(0, 41, copro_speed_r);
    print_hex16(105, 41, copro_speed_l);

    print_hex16(0, 49, copro_current_r);
    print_hex16(105, 49, copro_current_l);

  }
}