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; }
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; }
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; } } }