const_hoisted_1=/* @__PURE__ */createStaticVNode('<h1id="encoders"tabindex="-1">Encoders<aclass="header-anchor"href="#encoders"aria-label="Permalink to "Encoders""></a></h1><p>Basic(EC11compatible)encodersaresupportedbyaddingthistoyour<code>rules.mk</code>:</p><divclass="language-makevp-adaptive-theme"><buttontitle="CopyCode"class="copy"></button><spanclass="lang">make</span><preclass="shikishiki-themesgithub-lightgithub-darkvp-code"><code><spanclass="line"><spanstyle="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ENCODER_ENABLE=yes</span></span></code></pre></div><p>andthistoyour<code>config.h</code>:</p><divclass="language-cvp-adaptive-theme"><buttontitle="CopyCode"class="copy"></button><spanclass="lang">c</span><preclass="shikishiki-themesgithub-lightgithub-darkvp-code"><code><spanclass="line"><spanstyle="--shiki-light:#D73A49;--shiki-dark:#F97583;">#define</span><spanstyle="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">ENCODERS_PAD_A</span><spanstyle="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">{B12}</span></span>\n<spanclass="line"><spanstyle="--shiki-light:#D73A49;--shiki-dark:#F97583;">#define</span><spanstyle="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">ENCODERS_PAD_B</span><spanstyle="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">{B13}</span></span></code></pre></div><p>EachPAD_A/Bvariabledefinesanarraysomultipleencoderscanbedefined,e.g.:</p><divclass="language-cvp-adaptive-theme"><buttontitle="CopyCode"class="copy"></button><spanclass="lang">c</span><preclass="shikishiki-themesgithub-lightgithub-darkvp-code"><code><spanclass="line"><spanstyle="--shiki-light:#D73A49;--shiki-dark:#F97583;">#define</span><spanstyle="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">ENCODERS_PAD_A</span><spanstyle="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">{encoder1a,encoder2a}</span></span>\n<spanclass="line"><spanstyle="--shiki-light:#D73A49;--shiki-dark:#F97583;">#define</span><spanstyle="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">ENCODERS_PAD_B</span><spanstyle="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">{encoder1b,encoder2b}</span></span></code></pre></div><p>Ifyourencoder'sclockwisedirectionsareincorrect,youcanswaptheA&Bpaddefinitions.Theycanalsobeflippedwithadefine:</p><divclass="language-cvp-adaptive-theme"><buttontitle="CopyCode"class="copy"></button><spanclass="lang">c</span><preclass="shikishiki-themesgithub-lightgithub-darkvp-code"><code><spanclass="line"><spanstyle="--shiki-light:#D73A49;--shiki-dark:#F97583;">#define</span><spanstyle="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">ENCODER_DIRECTION_FLIP</span></span></code></pre></div><p>Additionally,theresolution,whichdefineshowmanypulsestheencoderregistersbetweeneachdetent,canbedefinedwith:</p><divclass="language-cvp-adaptive-theme"><buttontitle="CopyCode"class="copy"></button><spanclass="lang">c</span><preclass="shikishiki-themesgithub-lightgithub-darkvp-code"><code><spanclass="line"><spanstyle="--shiki-light:#D73A49;--shiki-dark:#F97583;">#define</span><spanstyle="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">ENCODER_RESOLUTION</span><spanstyle="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span></span></code></pre></div><p>Itcanalsobedefinedper-encoder,byinsteaddefining:</p><divclass="language-cvp-adaptive-theme"><buttontitle="CopyCode"class="copy"></button><spanclass="lang">c</span><preclass="shikishiki-themesgithub-lightgithub-darkvp-code"><code><spanclass="line"><spanstyle="--shiki-light:#D73A49;--shiki-dark:#F97583;">#define</span><spanstyle="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">ENCODER_RESOLUTIONS</span><spanstyle="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">{</span><spanstyle="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><spanstyle="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span><spanstyle="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><spanstyle="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}</spa