<div dir="ltr"><div><div class="gmail_extra"><div class="gmail_quote">Am 25. Juli 2013 07:30 schrieb simon notz <span dir="ltr"><<a href="mailto:vorderberg@googlemail.com" target="_blank">vorderberg@googlemail.com</a>></span>:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><p>In s0vz.c schreibst du mit <br>
snprintf ( buffer, BUF_LEN, "/sys/class/gpio/gpio%d/value", gpio_pin_id[i] );<br>
Ne eins in value wenn ein Puls kommt oder? <br></p></blockquote><div>Jain, das 'baut' nur den Pfad zusammen ''/sys/class/gpio/gpio27/value" als Filedescriptor für den poll().<br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<p>
Aber wo wird denn das eigentliche Signal erfasst, also die steigende und fallende Flanke? Dann könnte ich nachschauen was da überhaupt ankommt</p></blockquote><div><br> Hier -><br><br><pre><div class="" id="LC305">                   <span class="">for</span> <span class="">(</span> <span class="">;;</span> <span class="">)</span> <span class="">{</span></div>
<div class="" id="LC306"><br></div><div class="" id="LC311">                            <span class="">int</span> <span class="">ret</span> <span class="">=</span> <span class="">poll</span><span class="">(</span><span class="">fds</span><span class="">,</span> <span class="">inputs</span><span class="">,</span> <span class="">1000</span><span class="">);</span></div>
<div class="" id="LC312"><br></div><div class="" id="LC313">                            <span class="">if</span><span class="">(</span><span class="">ret</span><span class="">></span><span class="">0</span><span class="">)</span> <span class="">{</span></div>
<div class="" id="LC314"><br></div><div class="" id="LC315">                                    <span class="">for</span> <span class="">(</span><span class="">i</span><span class="">=</span><span class="">0</span><span class="">;</span> <span class="">i</span><span class=""><</span><span class="">inputs</span><span class="">;</span> <span class="">i</span><span class="">++</span><span class="">)</span> <span class="">{</span></div>
<div class="" id="LC316">                                             <span class="">if</span> <span class="">(</span><span class="">fds</span><span class="">[</span><span class="">i</span><span class="">].</span><span class="">revents</span> <span class="">&</span> <span class="">POLLPRI</span><span class="">)</span> <span class="">{</span></div>
<div class="" id="LC317">                                             <span class="">len</span> <span class="">=</span> <span class="">read</span><span class="">(</span><span class="">fds</span><span class="">[</span><span class="">i</span><span class="">].</span><span class="">fd</span><span class="">,</span> <span class="">buffer</span><span class="">,</span> <span class="">BUF_LEN</span><span class="">);</span></div>
<div class="" id="LC318">                                             <span class="">update_curl_handle</span><span class="">(</span><span class="">vzuuid</span><span class="">[</span><span class="">i</span><span class="">]);</span></div><div class="" id="LC319">
                                                <span class="">}</span></div><div class="" id="LC320">                                    <span class="">}</span></div><div class="" id="LC321">                            <span class="">}</span></div><div class="" id="LC322">                    <span class="">}</span></div></pre><br>Via poll() wird auf einen Interruppt gewartet (<span class="">if</span> <span class="">(</span><span class="">fds</span><span class="">[</span><span class="">i</span><span class="">].</span><span class="">revents</span> <span class="">&</span> <span class="">POLLPRI</span><span class="">)</span> und dann der HTTP_POST ausgelöst.<br>
<br></div><div>Den FD ansich lese ich garnicht aus ...<br></div></div></div></div></div>