<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="da">
	<id>https://holstebro-htx.dk/index.php?action=history&amp;feed=atom&amp;title=WeMOS_Watchdog</id>
	<title>WeMOS Watchdog - Versionshistorie</title>
	<link rel="self" type="application/atom+xml" href="https://holstebro-htx.dk/index.php?action=history&amp;feed=atom&amp;title=WeMOS_Watchdog"/>
	<link rel="alternate" type="text/html" href="https://holstebro-htx.dk/index.php?title=WeMOS_Watchdog&amp;action=history"/>
	<updated>2026-08-10T22:05:45Z</updated>
	<subtitle>Versionshistorie for denne side i Holstebro HTX Wiki</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://holstebro-htx.dk/index.php?title=WeMOS_Watchdog&amp;diff=1320&amp;oldid=prev</id>
		<title>Bar med 12. okt. 2022, 05:46</title>
		<link rel="alternate" type="text/html" href="https://holstebro-htx.dk/index.php?title=WeMOS_Watchdog&amp;diff=1320&amp;oldid=prev"/>
		<updated>2022-10-12T05:46:13Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;da&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Ældre version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Versionen fra 12. okt. 2022, 07:46&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Linje 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linje 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{template:WeMOS-software}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{template:WeMOS-software}}  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;En Watchdog er et programmeringsprincip man kan bygge ind i et styresystem. Watchdogen er lavet til at forhindre at noget kode komme til at gå fast i et uendeligt loop.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;En Watchdog er et programmeringsprincip man kan bygge ind i et styresystem. Watchdogen er lavet til at forhindre at noget kode komme til at gå fast i et uendeligt loop.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Bar</name></author>
	</entry>
	<entry>
		<id>https://holstebro-htx.dk/index.php?title=WeMOS_Watchdog&amp;diff=1274&amp;oldid=prev</id>
		<title>Bar: 1 version importeret</title>
		<link rel="alternate" type="text/html" href="https://holstebro-htx.dk/index.php?title=WeMOS_Watchdog&amp;diff=1274&amp;oldid=prev"/>
		<updated>2022-10-11T11:42:56Z</updated>

		<summary type="html">&lt;p&gt;1 version importeret&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Ny side&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{template:WeMOS-software}}&lt;br /&gt;
En Watchdog er et programmeringsprincip man kan bygge ind i et styresystem. Watchdogen er lavet til at forhindre at noget kode komme til at gå fast i et uendeligt loop.&lt;br /&gt;
&lt;br /&gt;
Watchdogen består af en form for timer, der har muligheden for at resette softwaren, og få den til at starte forfra.&lt;br /&gt;
&lt;br /&gt;
Princippet er at den ikke skal komme dertil hvor den resetter softwaren, så der skal være en måde at forhindre det på, og det er ved at lave en watchdog reset, eller som man kalder det på dansk &amp;quot;man skal klappe hunden&amp;quot;. Det man i princippet gør i sin kode er at man gør styresystemet opmærksom på, at man stadig laver noget fornuftigt i koden.&lt;br /&gt;
&lt;br /&gt;
==Principper til at klappe hunden==&lt;br /&gt;
&lt;br /&gt;
Det bedste princip er at man laver sin kode, så man ikke har behov for at tænke på det. I Arduino-miljøet generelt, og specielt i [[WeMOS]] er det at man skriver softwaren, så man kommer hurtigt igennem loopet - at man tjekker om de forskellige ting skal serviceres, gør det der er nødvendigt, og så går videre, så koden kun laver det der er aktivt nødvendigt og aldrig venter på at noget sker. På denne måde vil man, hver gang man kommer ud af [[loop()]] få &amp;quot;klappet hunden&amp;quot;, og på den måde ikke opleve at watchdogen resetter.&lt;br /&gt;
&lt;br /&gt;
Det ovennævnte princip hedder [[polling]], og er med uddybet i denne kilde&amp;lt;ref&amp;gt;[http://www.htx-arduino.dk/index.php?title=Tid_og_Samtidighed_i_Software#Polling htx-arduino.dk] med forklaring af polling, under Tid og Samtidighed&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
En anden mulighed er - hvis man ikke syntes man kan undgå et langt vente-loop, at man tilføjer kode som klapper hunden. Her er der forskellige muligheder som vist herunder:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
delay(0);     // Laver ikke et delay, men klapper hunden - man kan også vælge at delaye en tid.&lt;br /&gt;
yield();      // Gør det samme som delay(0);&lt;br /&gt;
wdt_reset();  // Klapper bare hunden - kræver #include &amp;lt;avr/wdt.h&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Referencer==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
[[Kategori:WeMOS]]&lt;/div&gt;</summary>
		<author><name>Bar</name></author>
	</entry>
</feed>