Nerräkningstimer kontra system-timer, tankar

C, C++, Pascal, Assembly, Raspberry, Java, Matlab, Python, BASIC, SQL, PHP, etc.
Användarvisningsbild
Jan Almqvist
Inlägg: 1580
Blev medlem: 1 oktober 2013, 20:48:26
Ort: Orust

Re: Nerräkningstimer kontra system-timer, tankar

Inlägg av Jan Almqvist »

lillahuset: Timern i timeout() startar om varje gång den löpt ut och nästa gång returnerar den 0?
Ett vanligt fall är ju annars, åtminstone för mej, är att när timern väl har löpt ut ska den förbli "true", även hur lång tid som sedan går, typ mer än 49 dagar.
Vad händer om getTicks() slår runt?
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 45173
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Nerräkningstimer kontra system-timer, tankar

Inlägg av TomasL »

Förväntas man få fördröjningar som är längre än ett par timmar, så är det nog bättre att välja andra alternativ, till exempel en RTC.
Använder själv systimer för kortare tidräkning och RTC för längre.
thebolt
Inlägg: 248
Blev medlem: 10 februari 2008, 17:41:40
Ort: Taipei Taiwan

Re: Nerräkningstimer kontra system-timer, tankar

Inlägg av thebolt »

Jan: lillahusets kod implementerar i princip den algoritm jag föreslog, och ja, hans är auto-restart.

Det krav du har att den ska vara "expired" hur lång tid som helst efter gör att denna algoritm inte funkar, men i de flesta (alla jag sett iaf:P) fall är det ett krav man inte behöver, eller om man verkligen behöver det går det hantera utanför timern t.ex. genom att sätta en separat flagga första gången den går ut och bara kolla timeout om flaggan är falskt.
Programmering är ju alltid en fråga om avvägningar och att inte göra en lösning som löser nått man inte behöver. Om det man vill ha, vilket oftast är fallet, är en signal när en timer gått ut _för första gången_, med automatisk restart eller inte, så är modulo 2^n-aritmetik (dvs unsigned) det absolut enklaste att få rätt och det blir också mest effektiv genererad kod.
Användarvisningsbild
lillahuset
Gått bort
Inlägg: 13969
Blev medlem: 3 juli 2008, 08:13:14
Ort: Norrköping

Re: Nerräkningstimer kontra system-timer, tankar

Inlägg av lillahuset »

thebolt: Vi är helt överens. Vad det nu är värt?
kodar-holger skrev:Ingår det i det gamla sättet att programmera att man inte skriver en enda kommentarsrad förutom några kryptiska taggar till doxygen så är jag mer emot det sättet än att använda delay()
Vad är det för kryptiskt med taggarna? Kan du föreslå en kommentarsrad som skulle tillföra något av värde? :humm:
Mr Andersson
Inlägg: 1394
Blev medlem: 29 januari 2011, 21:06:30
Ort: Lapplandet

Re: Nerräkningstimer kontra system-timer, tankar

Inlägg av Mr Andersson »

Jag tycker inte heller det behövs några extra kommentarer. Headern förklarar ju det man behöver veta. Men det kanske är naivt av mig att tro att de som har skäl att läsa koden kan grundläggande syntax?

Och visst, en delay behöver ju inte vara en loop. T.ex. en delay(timeout, funktion_eller_lambda) som köar argumentet tills tiden gått ut skulle fungera bättre. Men hur många av dem ser man i arudino-API:t?
Skriv svar