void main (void) { TTaskHandle xdata A2DTaskHandle, HeaterStatusTaskHandle, HeaterControlTaskHandle; TTaskHandle xdata EdenProtocolTaskHandle, OHDBMessageDecodeTaskHandle; WDTCN = 0xde; // disable watchdog timer WDTCN = 0xad; XBR_Init(); // Initialize cross bars SysClkInit(); Uart0Init(); Timer_0_Init(); SchedulerInit(); InitCoolingFans(); // Material and UV XilinxWatchdogInit(); SpiA2D_Init(); A2D_Init(); SpiInit(); E2PROMInit(); XilinxInit(); OHDBPotenmtrInit(); Roller_Init(); Bumper_Init(); CommunicationLossTaskInit(); EdenProtocolInit(); MessageDecodeInitOHDB(); HeadData_Init(); EA |= ENABLE; HeaterControlInit(); PrintDrv_Init(); SendWakeUpNotification(); HeadData_ReadDataFromAllE2PROMs(); A2DTaskHandle = SchedulerInstallTask(SpiA2D_Task); EdenProtocolTaskHandle = SchedulerInstallTask(EdenProtocolDecodeTask); OHDBMessageDecodeTaskHandle = SchedulerInstallTask(OHDBMessageDecodeTask); HeaterStatusTaskHandle = SchedulerInstallTask(HeaterStatusTask); HeaterControlTaskHandle = SchedulerInstallTask(HeaterControlTask); HeaterSetTasksHandles(HeaterStatusTaskHandle, HeaterControlTaskHandle); SchedulerResumeTask(GetXilinxWatchdogTaskHandle(),0); SchedulerResumeTask(A2DTaskHandle,0); SchedulerResumeTask(HeaterStatusTaskHandle,0); SchedulerResumeTask(EdenProtocolTaskHandle,0); SchedulerResumeTask(OHDBMessageDecodeTaskHandle,0); while(1) { SchedulerRun(); } }
/******************************************************************************* * Function RTC_Example_init() * ------------------------------------------------------------------------------ * Overview: Function initializes RTC example (sets default possitions and values) * Input: Nothing * Output: Nothing *******************************************************************************/ void RTC_Example_init(){ Roller_Init(); Ethernet_Message(" "); RTCC_Read(&MyTime); Roll_Set_Level(&Hour1Roll, MyTime.hours / 10); Roll_Set_Level(&Hour2Roll, MyTime.hours % 10); Roll_Set_Level(&Minute1Roll, MyTime.minutes / 10); Roll_Set_Level(&Minute2Roll, MyTime.minutes % 10); Roll_Set_Level(&AmPm, MyTime.ampm); Roller_Deactivate(&Hour1Roll, 111, 96); Roller_Deactivate(&Hour2Roll, 149, 96); Roller_Deactivate(&Minute1Roll, 215, 96); Roller_Deactivate(&Minute2Roll, 253, 96); Roller_Deactivate(&AmPM, 307, 96); }