void setup() { // set up the encoder interrupt to detect falling edge on digital pin 2 attachInterrupt(0, encoder_interrupt, FALLING); Serial.begin(115200); Serial.write("<h>time\tspeed\tcurrent\tcurrent_sense\tvoltage\tvoltage_sense</h>\n"); Serial.write("<u>ms\trpm\tmA\tcounts\tvolts\tcts</u>\n"); pinMode(LED_PWM_PIN, OUTPUT); pinMode(VOLT_PIN, INPUT); pinMode(INTERRUPTER_PIN, INPUT); pinMode(LED_PIN, OUTPUT); pinMode(BTN_PIN, INPUT); LcdInitialize(); gotoXY(0,0); LcdClear(); LcdString((char*)"Current:"); gotoXY(0,2); LcdString((char*)"Speed:"); gotoXY(0,4); LcdString((char*)"Voltage:"); blink_clock = millis(); tach_enc.min_hertz = 5; tach_enc.max_period = 5000; tach_enc.pin_num = INTERRUPTER_PIN; tach_enc.debounce_min = 5; tach_enc.alpha = 800; tach_enc.cts_per_rev = 1; tach_enc.hertz = 0; button.button_pin = BTN_PIN; button.button_state = btnDown; // pulser.carrier_clock = 0; // pulser.carrier_period = 5000; // pulser.step_clock = 0; // pulser.pulse_up_period = 1000; // pulser.pulse_down_period = 3500; // pulser.step_period_up = pulser.pulse_up_period / impulse_num_samples; // pulser.step_period_down = pulser.pulse_down_period / impulse_num_samples; // pulser.index = 0; // pulser.offset_time = 0; // start pulse at beginning of each carrier period volt_sensor.max_volts = 68000; // mV at sensor saturation (depends on pot adj) // init_impulse(impulse_array, impulse_num_samples, 255); }
void main(void) { G_u32SystemFlags |= _SYSTEM_INITIALIZING; /* Low level initialization */ WatchDogSetup(); /* During development, set to not reset processor if timeout */ ClockSetup(); GpioSetup(); InterruptSetup(); SysTickSetup(); /* Driver initialization */ MessagingInitialize(); UartInitialize(); DebugInitialize(); /* Debug messages through DebugPrintf() are available from here */ SspInitialize(); TWIInitialize(); LcdInitialize(); LedInitialize(); ButtonInitialize(); CapTouchInitialize(); AntInitialize(); /* Application initialization */ UserAppInitialize(); /* Exit initialization */ SystemStatusReport(); G_u32SystemFlags &= ~_SYSTEM_INITIALIZING; /* Super loop */ while(1) { WATCHDOG_BONE(); /* Drivers */ LedUpdate(); ButtonRunActiveState(); UartRunActiveState(); SspRunActiveState(); TWIRunActiveState(); CapTouchRunActiveState(); /* This function violates 1ms loop timing every 25ms */ MessagingRunActiveState(); DebugRunActiveState(); LcdRunActiveState(); AntRunActiveState(); /* Applications */ UserAppRunActiveState(); /* System sleep*/ HEARTBEAT_OFF(); SystemSleep(); HEARTBEAT_ON(); } /* end while(1) main super loop */ } /* end main() */