Beispiel #1
0
int main (void) {

    int32_t cycles = 3;

    pllstart_seventytwomhz() ;
    //   pllstart_sixtymhz() ;
    //pllstart_fourtyeightmhz() ;

    uart0_init_115200() ;

    vic_enableIRQ();
    vic_enableFIQ();

    uart0_putstring("\n***Starting i2c two device test (olimex2378)***\n\n");

    i2c_init(I2C0);
    // strange duty cycle just for fun.
    i2c_freq(I2C0, (uint16_t) 90, (uint16_t) 180);

    stat_led_flash_fast(cycles); // initial visual check

    eeprom_task() ;

    blinkm_task_i2c0() ;

//    stat_led_flash_fast(4);

    uart0_putstring("\n\n***Done***\n\n");

    return(0);

}
Beispiel #2
0
/*
 * main
 */
int main(void) {

    FIO_ENABLE;
    pllstart_seventytwomhz() ;
    mam_enable();
    uart0_init_115200() ;

    DBG(UART0,"Initialising USB stack\n");

    // initialise stack
    USBInit();

    // register descriptors
    USBRegisterDescriptors(abDescriptors);

    // register class request handler
    USBRegisterRequestHandler(REQTYPE_TYPE_CLASS, HandleClassRequest, abClassReqData);

    // register endpoint handlers
    USBHwRegisterEPIntHandler(INT_IN_EP, NULL);

    // register frame handler
    USBHwRegisterFrameHandler(USBFrameHandler);

    // register device event handler
    USBHwRegisterDevIntHandler(USBDevIntHandler);

    inputIsocDataBuffer[0] = 0;

    DBG(UART0,"Starting USB isoc datatpath test\n");

    VICVectPriority22 = 0x01;
    VICVectAddr22     = (int) USBIntHandler;

    // set up USB interrupt
    VICIntSelect      &= ~(1<<22);     // select IRQ for USB
    VICIntEnable      |= (1<<22);

    vic_enableIRQ();

    // connect to bus
    USBHwConnect(TRUE);

    stream_task();

    return 0;
}
Beispiel #3
0
/*************************************************************************
	main
	====
**************************************************************************/
int main(void)
{
    int x = 0;

    const int interval = 200000;

    FIO_ENABLE;

    vic_disableIRQ();

    pllstart_seventytwomhz() ;
    // pllstart_sixtymhz() ;
    //   pllstart_fourtyeightmhz() ;

    mam_enable();

    info_init();

    uart0_init_115200() ;

    uart0_putstring("\n***Starting gfe color led test***\n\n");
    uart0_putstring("\n***Board is defined as: ");

    uart0_putstring( infoquery_gfe_boardtag() );

    uart0_putstring(" ***\n");

    init_color_led();

    RED_LED_OFF;
    BLUE_LED_OFF;
    GREEN_LED_OFF;

    printf_lpc(UART0,"5 FAST flashes...red, blue then green\n");
    color_led_flash(5, RED_LED, FLASH_FAST ) ;
    RED_LED_OFF;
    color_led_flash(5, BLUE_LED,  FLASH_FAST ) ;
    BLUE_LED_OFF;
    color_led_flash(5, GREEN_LED, FLASH_FAST ) ;
    GREEN_LED_OFF;
    uart0_putstring(" ** END OF TEST ""\n");

    printf_lpc(UART0, "Initialising USB stack\n");

    // initialize stack
    USBInit();

    // register descriptors
    USBRegisterDescriptors(abDescriptors);

    // register class request handler
    USBRegisterRequestHandler(REQTYPE_TYPE_CLASS, HandleClassRequest, abClassReqData);

    // register endpoint handlers
    USBHwRegisterEPIntHandler(INT_IN_EP, NULL);

    // register frame handler
    USBHwRegisterFrameHandler(USBFrameHandler);

    // register device event handler
    USBHwRegisterDevIntHandler(USBDevIntHandler);

    inputIsocDataBuffer[0] = 0;

    printf_lpc(UART0, "Starting USB communication\n");

    VICVectPriority22  = 0x01;         // 0x0 is highest priority, 0xF is lowest
    VICVectAddr22      = (unsigned int)USBIntHandler;
    VICAddress         = 0x0;

    printf_lpc(UART0, "addresses entered\n");

    ENABLE_USB_IRQ;

    printf_lpc(UART0, "USB IRQ Enabled\n");

    vic_enableIRQ();

    printf_lpc(UART0, "vic_enable\n");

    ENABLE_USB_INT;

    printf_lpc(UART0, "USB INT Enabled\n");



    //printf_lpc(UART0, "connect to bus\n");
//
//	// connect to bus
    USBHwConnect(TRUE);
//

    for(;;) {
        x++;

        if (x == interval) {
            RED_LED_ON;
        } else if (x >= (interval*2)) {
            x = 0;
            RED_LED_OFF;
        }
    }

    return 0;
}
Beispiel #4
0
/*! \brief turn interrupts on at the CPU status register
 *
 */
void vic_cpu_enable_interrupts() {
    vic_enableIRQ();
    vic_enableFIQ();
}