Beispiel #1
0
int main()
{
    WDTCTL = WDTPW | WDTHOLD;

    P1DIR |= BIT0|BIT6;
    P1OUT |= BIT0;

    // The button is input by default:
    //P1DIR &= ~BIT3;
    P1REN |= BIT3;
    P1OUT |= BIT3;

    motor_setup();

    /*
    	for (int i=0; i<2048; ++i) {
    		// wait to button press
    //		while (P1IN & BIT3) {
    			P1OUT ^= BIT0;
    //		}

    		motor_fwd();
    	}

    	delay_ms(1000);

    	for (int i=0; i<2048; ++i) {
    		// wait to button press
    //		while (P1IN & BIT3) {
    			P1OUT ^= BIT0;
    //		}

    		motor_bwd();
    	}
    */

    delay_ms(2000);

    P1OUT |= BIT0;
    for (int i=0; i<15; ++i) {
        motor_fwd(1);
        delay_ms(800);
    }
    P1OUT &= ~BIT0;

    delay_ms(2000);

    P1OUT |= BIT6;
    for (int i=0; i<15; ++i) {
        motor_bwd(1);
        delay_ms(800);
    }
    P1OUT &= ~BIT6;

}
Beispiel #2
0
int main()
{
	LPC_GPIO1->FIODIR = 1 << 18 | 1 << 27;
	LPC_GPIO0->FIODIR = 1 << 4 | 1 << 5 | 1 << 6;
	rgb_setup();
	rgb_set(0x00,0xFF,00);

	motor_setup();
	receiver_setup();
	servo_setup();	 //Initialize servo
	servo_steer(0);

	rgb_set(0xFF,0,0);
	
	int throttle = 0;
	int steering = 0;
	int rudder = 0;
	int elevator = 0;

	int speed = 0;
	int servo_position = .5;
	int stop = 0;

	while(1){

		throttle = radio_data[0];
		steering = radio_data[1];
		rudder = radio_data[2];
		elevator = radio_data[3];
		
		
		if(throttle > 48000){
			throttle = 48000;
		}
		if(throttle < 24000){
			stop = 1;
			throttle = 24000;
		} else {
			stop = 0;
		}
		
		steering = clip(steering);
		rudder = clip(rudder);
		elevator = clip(elevator);
		
		speed = (throttle-24000) / 2400;
		servo_position = (steering-24000) / 2400;
		
		printf("1:[");
		int i = 0;
		while(i < 11){
			if(i == speed){
				printf("|");
			} else {
				printf(" ");
			}
			i++;
		}
		printf("] 2:[");
		i = 0;
		while(i < 11){
			if(i == servo_position){
				printf("o");
			} else {
				printf(" ");
			}
			i++;
		}
		printf("] 3:[");
		i = 0;
		while(i < 11){
			if(i == (rudder-24000) / 2400){
				printf("|");
			} else {
				printf(" ");
			}
			i++;
		}
		printf("] 4:[");
		i = 0;
		while(i < 11){
			if(i == (elevator-24000) / 2400){
				printf("|");
			} else {
				printf(" ");
			}
			i++;
		}
		if(radio_data[4] < 32000){
			printf("][v]");
		} else if(radio_data[4] < 40000){
			printf("][-]");
		} else {
			printf("][^]");
		}
		if(radio_data[5] < 32000){
			printf("[v]");
		} else if(radio_data[5] < 40000){
			printf("[-]");
		} else {
			printf("[^]");
		}
		if(radio_data[6] < 32000){
			printf("[v]");
		} else if(radio_data[6] < 40000){
			printf("[-]");
		} else {
			printf("[^]");
		}
		if(radio_data[7] < 32000){
			printf("[v]");
		} else if(radio_data[7] < 40000){
			printf("[-]");
		} else {
			printf("[^]");
		}
		printf("\r\n");
		
		delay_ms(5);
	}
	
	return 0;
}
Beispiel #3
0
int main()
{
	
    TRACE_CONFIGURE(DBGU_STANDARD, 115200, BOARD_MCK);
    printf("-- USB Device CDC Serial Project %s --\n\r", SOFTPACK_VERSION);
    printf("-- %s\n\r", BOARD_NAME);
    printf("-- Compiled: %s %s --\n\r", __DATE__, __TIME__);

    // If they are present, configure Vbus & Wake-up pins
    //PIO_InitializeInterrupts(0);
	
	//-------- Init parameters --------------
	printf("INIT Parameters\n\r");
	init_parameters();
	
	//-------- Load parameters from Flash --------------
	printf("Load parameters from Flash\n\r");
	FLASH_LoadSettings();
	
    //-------- Init UART --------------
	printf("USB Seriel INIT\n\r");
	samserial_init();
	
	//-------- Init ADC without Autostart --------------
	printf("Init ADC\n\r");
    initadc(0);
	
	//-------- On USB recived byte call this function --------------
	printf("Init Callback for USB\n\r");
    samserial_setcallback(&usb_characterhandler);
	
	//-------- Init Motor driver --------------
	printf("Init Motors\n\r");
    motor_setup();
	
	//-------- Init Heater I/O  --------------
	printf("Init Heaters\n\r");
    heaters_setup();
	
    //-------- Start SYSTICK (1ms) --------------
	printf("Configuring systick.\n\r");
	SysTick_Configure(1, BOARD_MCK/1000, SysTick_Handler);
	
	//-------- Timer 0 for Stepper --------------
	printf("Init Stepper IO\n\r");
    stepper_setup();	//Timer for Stepper


	//-------- Timer 0 for Stepper --------------
	printf("Configuring Timer 0 Stepper\n\r");
    ConfigureTc0_Stepper();	//Timer for Stepper
	
	//-------- Timer 1 for heater PWM --------------
	printf("Configuring Timer 1 PWM.\n\r");
	ConfigureTc_1();

	//-------- Init Planner Values --------------
	printf("Plan Init\n\r");
	plan_init();
	
	//-------- Check for SD card presence -------
//	sdcard_handle_state();
	
	//motor_enaxis(0,1);
    //motor_enaxis(1,1);
	while (1)
	{
  		//uncomment to use//sprinter_mainloop();
    	//main loop events go here

		do_periodic();
    	
		if(buflen < (BUFSIZE-1))
			get_command();

    	if(buflen > 0)
		{
			
			//-------- Check and execute G-CODE --------------
			process_commands();

			//-------- Increment G-Code FIFO  --------------
			buflen = (buflen-1);
			bufindr++;
			if(bufindr == BUFSIZE) bufindr = 0;
			
		}
		  
    }
}