int main(int argc, char* agrv[]) { //initialize DDR and MMIO ps7_init(); //Switch pin 7 to output GPIO->DIRECTION_0 = GPIO->DIRECTION_0 | (1 << 7); //Set pin 7 to on GPIO->MASK_DATA_LSW_0 = ((~(1<<7)) << 16) | (1 << 7); //disable stdout buffering setvbuf(stdout, 0, _IONBF, 0); UartInitialize(UART1, 115200); printf("Initialized\n"); unsigned int id = CPUGetCoreNumber(); printf("Running on CPU %X\n", id); GICInit(); printf("GIC Initialized\n"); GICUnmaskInterrupt(29); GICConnectInterrupt(29, TimerHandler); PrivateTimerStop(PRIVATE_TIMER); PrivateTimerSetPrescaler(PRIVATE_TIMER, 255); PrivateTimerLoad(PRIVATE_TIMER, 1302083); PrivateTimerEnableAutoReload(PRIVATE_TIMER, 1302083); PrivateTimerEnableInterrupt(PRIVATE_TIMER); PrivateTimerClearExpiration(PRIVATE_TIMER); PrivateTimerStart(PRIVATE_TIMER); //enable interrupts CPUEnableInterrupts(); //CPUEnableFastInterrupts(); //uint32_t foo = 0; while(1) { /*if(PrivateTimerIsExpired(PRIVATE_TIMER)) { foo++; PrivateTimerClearExpiration(PRIVATE_TIMER); } if(foo % 10000 == 0) printf("A");*/ //uint8_t foo = UartReceiveByte(UART1); //UartSendByte(UART1, foo); } //int* foo = malloc(0x20); return 0; }
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() */