var Hwi = xdc.useModule('ti.sysbios.family.arm.m3.Hwi'); var Clock = xdc.useModule('ti.sysbios.knl.Clock'); var Seconds = xdc.useModule('ti.sysbios.hal.Seconds'); var BIOS = xdc.useModule('ti.sysbios.BIOS'); BIOS.libType = BIOS.LibType_Debug; var SysMin = xdc.useModule('xdc.runtime.SysMin'); var System = xdc.useModule('xdc.runtime.System'); var Error = xdc.useModule('xdc.runtime.Error'); var ti_sysbios_hal_Hwi = xdc.useModule('ti.sysbios.hal.Hwi'); var Timestamp = xdc.useModule('xdc.runtime.Timestamp'); var TimestampProvider = xdc.useModule('ti.sysbios.family.arm.lm4.TimestampProvider'); var SyncGeneric = xdc.useModule('xdc.runtime.knl.SyncGeneric'); var Mailbox = xdc.useModule('ti.sysbios.knl.Mailbox'); //var HeapStd = xdc.useModule('xdc.runtime.HeapStd'); var GIO = xdc.useModule('ti.sysbios.io.GIO'); var Semaphore = xdc.useModule('ti.sysbios.knl.Semaphore'); var Task = xdc.useModule('ti.sysbios.knl.Task'); //var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem'); var HeapTrack = xdc.useModule('ti.sysbios.heaps.HeapTrack'); //var Memory = xdc.useModule('xdc.runtime.Memory'); BIOS.heapSize = 68000; // bios heapmem //Memory.defaultHeapSize = 20000; //Program.heap = 40000; //Program.stack = 4096; Task.numPriorities = 25; Clock.timerId = 7; //var hwi0Params = new Hwi.Params(); //hwi0Params.instance.name = "adcHwi"; //Program.global.adcHwi = Hwi.create(30, "&ADC0SS0Handler", hwi0Params); var hwi1Params = new Hwi.Params(); hwi1Params.instance.name = "sysTick"; Program.global.sysTick = Hwi.create(15, "&SysTickHandler", hwi1Params); var hwi13Params = new Hwi.Params(); hwi13Params.instance.name = "timer0"; hwi13Params.priority = 128; Program.global.timer0 = Hwi.create(35, "&OneMilliSecondControlInterrupt", hwi13Params); var hwi20Params = new Hwi.Params(); hwi20Params.instance.name = "watchdog"; Program.global.watchdog = Hwi.create(34, "&WatchdogIntHandler", hwi20Params); var hwi15Params = new Hwi.Params(); hwi15Params.instance.name = "timer2"; hwi15Params.arg = 2; hwi15Params.priority = 160; Program.global.timer2 = Hwi.create(39, "&EightMilliSecondHeatersInterrupt", hwi15Params); var hwi6Params = new Hwi.Params(); hwi6Params.instance.name = "timer1"; hwi6Params.priority = 128; Program.global.timer1 = Hwi.create(37, "&MillisecInterrupt", hwi6Params); var hwi17Params = new Hwi.Params(); hwi17Params.instance.name = "timer3"; hwi17Params.arg = 3; hwi17Params.priority = 96; Program.global.timer3 = Hwi.create(51, "&ScrewTimerInterrupt", hwi17Params); var semaphore0Params = new Semaphore.Params(); semaphore0Params.instance.name = "adcResultSem"; semaphore0Params.mode = Semaphore.Mode_BINARY; Program.global.adcResultSem = Semaphore.create(null, semaphore0Params); var semaphore3Params = new Semaphore.Params(); semaphore3Params.instance.name = "updateSem"; semaphore3Params.mode = Semaphore.Mode_BINARY; Program.global.updateSem = Semaphore.create(null, semaphore3Params); var semaphore4Params = new Semaphore.Params(); semaphore4Params.instance.name = "initConnectionSem"; semaphore4Params.mode = Semaphore.Mode_BINARY; Program.global.initConnectionSem = Semaphore.create(null, semaphore4Params); var semaphore5Params = new Semaphore.Params(); semaphore5Params.instance.name = "I2C_Sem"; semaphore5Params.mode = Semaphore.Mode_BINARY; Program.global.I2C_Sem = Semaphore.create(null, semaphore5Params); var semaphore6Params = new Semaphore.Params(); semaphore6Params.instance.name = "FFS_Sem"; semaphore6Params.mode = Semaphore.Mode_BINARY; Program.global.FFS_Sem = Semaphore.create(null, semaphore6Params); var semaphore8Params = new Semaphore.Params(); semaphore8Params.instance.name = "FileUpload_sem_param"; semaphore8Params.mode = Semaphore.Mode_BINARY; Program.global.FileUpload_sem_param = Semaphore.create(null, semaphore8Params); var semaphore9Params = new Semaphore.Params(); semaphore9Params.instance.name = "shinkoSem"; semaphore9Params.mode = Semaphore.Mode_BINARY; Program.global.shinkoSem = Semaphore.create(null, semaphore9Params); var semaphore7Params = new Semaphore.Params(); semaphore7Params.instance.name = "ReconnectSem"; semaphore7Params.mode = Semaphore.Mode_BINARY; Program.global.ReconnectSem = Semaphore.create(null, semaphore7Params); Task.addHookSet({ // registerFxn: '&myRegisterFxn', // createFxn: '&myCreateFxn', // deleteFxn: '&myDeleteFxn', switchFxn: '&MyswitchFxn' }); var MillisecTaskParams = new Task.Params(); MillisecTaskParams.instance.name = "MilliSecond"; MillisecTaskParams.stackSize = 4096; MillisecTaskParams.priority = 23; Program.global.millisec = Task.create("&MillisecTask", MillisecTaskParams); var ControlTaskParams = new Task.Params(); ControlTaskParams.instance.name = "control"; ControlTaskParams.stackSize = 4096; ControlTaskParams.priority = 22; Program.global.control = Task.create("&controlTask", ControlTaskParams); var CommTxTaskParams = new Task.Params(); CommTxTaskParams.instance.name = "communicationTx"; CommTxTaskParams.priority = 21; CommTxTaskParams.stackSize = 4096; Program.global.communicationTx = Task.create("&communicationTxTask", CommTxTaskParams); var CommRxTaskParams = new Task.Params(); CommRxTaskParams.instance.name = "communicationRx"; CommRxTaskParams.priority = 20; CommRxTaskParams.stackSize = 8192; Program.global.communication = Task.create("&communicationTask", CommRxTaskParams); var AlarmHandlingTaskParams = new Task.Params(); AlarmHandlingTaskParams.instance.name = "AlarmHandling"; AlarmHandlingTaskParams.stackSize = 4096; AlarmHandlingTaskParams.priority = 19; Program.global.AlarmHandling = Task.create("&AlarmHandlingTask", AlarmHandlingTaskParams); var ProcessTaskParams = new Task.Params(); ProcessTaskParams.instance.name = "process"; ProcessTaskParams.stackSize = 4096; ProcessTaskParams.priority = 18; Program.global.process = Task.create("&jobTask", ProcessTaskParams); /*var I2C_Reading = new Task.Params(); I2C_Reading.instance.name = "I2C_Reading"; I2C_Reading.stackSize = 2048; I2C_Reading.priority = 17; Program.global.I2C_Reading = Task.create("&I2C_ReadingTask", I2C_Reading); */ var HeaterControlTaskParams = new Task.Params(); HeaterControlTaskParams.instance.name = "HeatersControl"; HeaterControlTaskParams.priority = 16; Program.global.HeatersControl = Task.create("&HeatersControlTask", HeaterControlTaskParams); var ReportTaskParams = new Task.Params(); ReportTaskParams.instance.name = "report"; ReportTaskParams.stackSize = 4096; ReportTaskParams.priority = 15; Program.global.report = Task.create("&reportService", ReportTaskParams); var ControlLowTaskParams = new Task.Params(); ControlLowTaskParams.instance.name = "controlLow"; ControlLowTaskParams.stackSize = 4096; ControlLowTaskParams.priority = 14; Program.global.controlLow = Task.create("&controlLowTask", ControlLowTaskParams); var DiagnosticsTaskParams = new Task.Params(); DiagnosticsTaskParams.instance.name = "Diagnostics"; DiagnosticsTaskParams.priority = 13; DiagnosticsTaskParams.stackSize = 8192; Program.global.Diagnostics = Task.create("&DiagnosticsTask", DiagnosticsTaskParams); var MillisecLowTaskParams = new Task.Params(); MillisecLowTaskParams.instance.name = "MilliSecondLow"; MillisecLowTaskParams.stackSize = 4096; MillisecLowTaskParams.priority = 12; Program.global.millisecLow = Task.create("&MillisecLowTask", MillisecLowTaskParams); /* var RFID_TaskParams = new Task.Params(); --- moved to I2C_RFID_Disp_Task.c RFID_TaskParams.instance.name = "RFID"; RFID_TaskParams.stackSize = 4096; RFID_TaskParams.priority = 10; Program.global.millisecLow = Task.create("&RFID_Task", RFID_TaskParams); */ var ADCProcessTaskParams = new Task.Params(); ADCProcessTaskParams.instance.name = "adcProcess"; ADCProcessTaskParams.stackSize = 512; ADCProcessTaskParams.priority = 9; Program.global.adcProcess = Task.create("&ADCProcessTask", ADCProcessTaskParams); var FPGALoad = new Task.Params(); FPGALoad.instance.name = "FPGALoad"; FPGALoad.stackSize = 4096; FPGALoad.priority = 5; Program.global.FPGALoad = Task.create("&FPGALoadTask", FPGALoad); var updateTaskParams = new Task.Params(); updateTaskParams.instance.name = "update"; updateTaskParams.priority = 4; Program.global.update = Task.create("&updateTask", updateTaskParams); var shinkoTaskParams = new Task.Params(); shinkoTaskParams.instance.name = "shinko"; shinkoTaskParams.stackSize = 1024; shinkoTaskParams.priority = 3; Program.global.shinko = Task.create("&shinkoTask", shinkoTaskParams); /* ================ Text configuration ================ */ var Text = xdc.useModule('xdc.runtime.Text'); /* * These strings are placed in the .const section. Setting this parameter to * false will save space in the .const section. Error, Assert and Log messages * will print raw ids and args instead of a formatted message. * * Pick one: * - true (default) * This option loads test string into the .const for easier debugging. * - false * This option reduces the .const footprint. */ Text.isLoaded = true; //Text.isLoaded = false; /* ================ Error configuration ================ */ /* set errHook (defined in main.c) as the error * hook function. Strings begining with '&' * can be assigned to function pointers to * reference unspecified external functions */ Error.raiseHook = "&errHook"; BIOS.customCCOpts += " -Dxdc_FILE=__FILE__ "; /* set user-defined code for E_generic errors */ Error.E_generic.code = 28; /* ================ Types configuration ================ */ var Types = xdc.useModule('xdc.runtime.Types'); /* * This module defines basic constants and types used throughout the * xdc.runtime package. */ /* ================ TI-RTOS middleware configuration ================ */ var mwConfig = xdc.useModule('ti.mw.Config'); /* * Include TI-RTOS middleware libraries */ /* ================ TI-RTOS drivers' configuration ================ */ var driversConfig = xdc.useModule('ti.drivers.Config'); /* * Include TI-RTOS drivers * * Pick one: * - driversConfig.LibType_NonInstrumented (default) * Use TI-RTOS drivers library optimized for footprint and performance * without asserts or logs. * - driversConfig.LibType_Instrumented * Use TI-RTOS drivers library for debugging with asserts and logs enabled. */ driversConfig.libType = driversConfig.LibType_NonInstrumented; //driversConfig.libType = driversConfig.LibType_Instrumented; /* ================ Application Specific Instances ================ */ var FatFS = xdc.useModule('ti.mw.fatfs.FatFS'); System.maxAtexitHandlers = 2; TimestampProvider.timerId = 3; TimestampProvider.useClockTimer = true; Program.gen.debuggerFiles = false; Task.defaultStackSize = 1024; Task.idleTaskVitalTaskFlag = false; Task.enableIdleTask = false;