main
Default mainpagebasic-microcanopen-projectmain
Description Source Call Graph
Start Line: 108
int main(void)
{
    PIO_InitializeInterrupts(0);
    TRACE_CONFIGURE(DBGU_STANDARD, 115200, BOARD_MCK);
    printf("-- Basic Microcanopen Project %s --\n\r", SOFTPACK_VERSION);
    printf("-- %s\n\r", BOARD_NAME);
    printf("-- Compiled: %s %s --\n\r", __DATE__, __TIME__);

    // Reset/Initialize CANopen communication
    MCOUSER_ResetCommunication();

    // foreground loop
    for(;;) {
        // Update process data
        // First digital inputs are real I/O
        gProcImg[IN_digi_1] = read_dip_switches();

        // output first digital outputs to LEDs
        switch_leds(gProcImg[OUT_digi_1]);

        // echo all other I/O values from input to output
        // digital
        gProcImg[IN_digi_2] = gProcImg[OUT_digi_2];
        gProcImg[IN_digi_3] = gProcImg[OUT_digi_3];
        gProcImg[IN_digi_4] = gProcImg[OUT_digi_4];

        // analog
        gProcImg[IN_ana_1]   = gProcImg[OUT_ana_1];
        gProcImg[IN_ana_1+1] = gProcImg[OUT_ana_1+1];
        gProcImg[IN_ana_2]   = gProcImg[OUT_ana_2];
        gProcImg[IN_ana_2+1] = gProcImg[OUT_ana_2+1];

        // Operate on CANopen protocol stack
        MCO_ProcessStack();
    } // end of for

    return 0;
} // end of main