local appName="RendererLoopTest" local r, g, b local lFormat = string.format local lastTime = 0 local avgTime = 0 -- Crete a polyline local ren1=lcd.renderer() local ren2=lcd.renderer() local ren3=lcd.renderer() local ren4=lcd.renderer() ren1:addPoint(10, 140) ren1:addPoint(310 * 1000000, 40 * 1000000) ren2:addPoint(20, 140) ren2:addPoint(310 * 1000000, 40 * 1000000) ren3:addPoint(30, 140) ren2:addPoint(310 * 1000000, 40 * 1000000) ren4:addPoint(40, 140) ren4:addPoint(310 * 1000000, 40 * 1000000) -------------------------------------------------------------------- -- Print function -------------------------------------------------------------------- local function tprint() lcd.setColor(0, 0, 255) ren1:renderPolyline(10) ren1:renderPolyline(10) ren3:renderPolyline(10) ren4:renderPolyline(10) lcd.setColor(255, 0, 0) lcd.drawText (10, 20, lFormat("Loop Time %03u", avgTime), FONT_BIG) lcd.drawText (10, 40, lFormat("Cpu %03u", system.getCPU()), FONT_BIG) lcd.setColor(r, g, b) end local function loop() local newTime = system.getTimeCounter() local delta = newTime - lastTime lastTime = newTime if (avgTime == 0) then avgTime = delta else avgTime = avgTime * 0.95 + delta * 0.05 end end -------------------------------------------------------------------- -- Init function -------------------------------------------------------------------- local function init() r, g, b = lcd.getFgColor () lastTime = system.getTimeCounter() system.registerTelemetry(1, appName, 4 , tprint) end return { init=init, loop=loop, author="JETI model", version="1.00",name=appName}