Пример #1
0
/**
 * Blink test main function
 *
 * @return Nothing really...
 */
int main(void)
{
	int i, j, dp_id;

	mcu_init();
	led_init();
	debug_pins_init();

	dp_id = 0;

	while (true) {
		for (j = 0; j < 20; j++) {
			for (i = 0; i < 125; i++) {
				dp_on(dp_id);
				my_delay((unsigned long)(50 * j));
				dp_off(dp_id);
				my_delay((unsigned long)(1200 - 50 * j));
			}
		}
		for (j = 0; j < 20; j++) {
			for (i = 0; i < 125; i++) {
				dp_off(dp_id);
				my_delay((unsigned long)(200 + 50 * j));
				dp_on(dp_id);
				my_delay((unsigned long)(1000 - 50 * j));
			}
		}
		dp_off(dp_id);
		dp_id++;
		dp_id %= 4;
	}
}
Пример #2
0
/**
 * Main function of the motor controller.
 */
int main(void)
{
	int demo_counter;
	int demo_dir;

	system_init();
	led_init();
	debug_pins_init();
	gprot_init();
	usart_init();
	sys_tick_init();
	cpu_load_process_init();
	comm_process_init();
	sensor_process_init();
	//adc_init();
	pwm_init();
	comm_tim_init();
	control_process_init();
	bemf_hd_init();

	demo_counter = 500;
	demo_dir = 1;
	demo = false;

	while (true) {
		run_cpu_load_process();

/*
		if (adc_new_data_trigger) {
			adc_new_data_trigger = false;
			run_sensor_process();
		}
*/

		if (*comm_process_trigger) {
			*comm_process_trigger = false;
			run_comm_process();
		}

		run_control_process();

		if (demo) {
			if (demo_counter == 0) {
				demo_counter = 300;
				pwm_val += demo_dir;
				if (pwm_val > 2000) {
					demo_dir = -1;
				}

				if (pwm_val < 500) {
					demo_dir = 1;
				}
			} else {
				demo_counter--;
			}
		}
	}
}
Пример #3
0
/**
 * Main function of the motor controller.
 */
int main(void)
{
	int demo_counter;
	int demo_dir;

	system_init();
	led_init();
	debug_pins_init();
	gprot_init();
	usart_init();
	sys_tick_init();
	cpu_load_process_init();
	comm_process_init();
	sensor_process_init();
	adc_init();
	pwm_init();
	comm_tim_init();
	control_process_init();
	bemf_hd_init();

	demo_counter = 500;
	demo_dir = 1;
	demo = false;
	int flag = 0;

	while (true) {
		run_cpu_load_process();

		if(flag%1000000 == 0)
		{
			//gpc_send_string("Hello World, I am ALIVE\n", strlen("Hello World, I am ALIVE\n"));
			DEBUG("HELLO WORLD\n");
			flag++;
		}
		else
		{
			flag++;
		}
		if (*comm_process_trigger) {
			*comm_process_trigger = false;
			run_comm_process();
		}

		run_control_process();
		
		if (*sensor_process_trigger) {
			*sensor_process_trigger = false;
			run_sensor_process();
		}

		//TOGGLE(LED_BLUE);

		if (demo) {
			if (demo_counter == 0) {
				demo_counter = 300;
				pwm_val += demo_dir;
				if (pwm_val > 300) {
					demo_dir = -1;
				}

				if (pwm_val < 100) {
					demo_dir = 1;
				}
			} else {
				demo_counter--;
			}
		}
	}
}