<p>I'm looking for a GPIO library to use on a Raspberry Pi B+. The few I've found don't seem to be maintained any more and have breaking issues... </p>
<p>Does anyone have any recommendations?</p>
<p>EDIT: There seems to be a problem with all libraries importing the <code>syscall</code> package. Whenever I try to build, I get a bunch of errors saying <code>undefined: syscall.FOOBAR</code>. I'm developing on Windows 10 if that makes a difference.</p>
<hr/>**评论:**<br/><br/>gmonnerat: <pre><p>I know <a href="https://github.com/kidoman/embd">embd</a> and <a href="http://gobot.io/">gobot.io</a></p></pre>danhardman: <pre><p>Embd looks promising. I hadn't properly considered it as it seems quite large for what I want to do. Something like <a href="https://github.com/stianeikeland/go-rpio" rel="nofollow">stianeikeland/go-rpio</a> would be great, but I can't get it to build. </p>
<p>EDIT: Same problem with Embd. There's an issue using the <code>syscall</code> package. I'm developing on Windows 10</p></pre>stillalone: <pre><p>You're running windows 10 on a raspberry pi and you want to control gpios? Out of curiosity, why are you running windows 10?</p></pre>robvdl: <pre><p>I was afraid of this as soon as they added support for Windows 10 for the Pi 2, a whole lot of young new developers starting to use it because they "know" Windows and think it would be easier to use. Really, they are shooting themselves in the foot. I would say start using Linux now, stop the Windows 10 madness while you still can.</p></pre>danhardman: <pre><p>Replied above. I'm not that silly! :)</p></pre>danhardman: <pre><p>Noooo, I'm developing on Windows 10. It'll be running on raspbian once I put it on the raspberry pi. </p></pre>stillalone: <pre><p>wtf. what gpios are there to access on a typical Windows PC? You can't just access gpios on any system willy nilly. Even if they were accessible you wouldn't know what they are for and you could damage the system.</p></pre>1Gijs: <pre><p>And there is <a href="https://github.com/mrmorphic/hwio" rel="nofollow">https://github.com/mrmorphic/hwio</a></p>
<p>Maybe you can also list the onces you tried and did not work (well) ?</p></pre>danhardman: <pre><p>I've updated the post. The errors I get are to do with importing the <code>syscall</code> package.</p></pre>qrv3w: <pre><p><a href="https://github.com/stianeikeland/go-rpio" rel="nofollow">stianeikeland/go-rpio</a> is a great one. Btw, I wrote a comparison of using Go vs C (and Python in one case) for read/writing on GPIO pins <a href="http://rpiai.com/benchmarking-gpio-pins-of-raspberry-pi-model-b-plus/index.html" rel="nofollow">here</a>.</p></pre>danhardman: <pre><p>This library is the one I first encountered the error with. It's due to the use of the <code>syscall</code> package. For some reason though, I've just noticed the errors only appear on atom using the <code>go-plus</code> package... </p></pre>dgryski: <pre><p>Hardware packages are generally listed at <a href="https://github.com/rakyll/go-hardware" rel="nofollow">https://github.com/rakyll/go-hardware</a></p></pre>binaryblade: <pre><p>Lol one of those is probably mine.</p></pre>danhardman: <pre><p>Any idea how to fix the issue I'm getting? Is it the OS I'm using or is it up to the library to update?</p></pre>binaryblade: <pre><p>yeah, syscall is no good on win10 it takes a different form. you can look up what the developers have to say about syscall but it's not good. One way to do it without syscall is just file io in proc.</p></pre>danhardman: <pre><p>I only want to develop on Windows. It'll be running on raspbian</p></pre>binaryblade: <pre><p>That becomes nearly impossible.</p></pre>bwooce: <pre><p>Go supports architecture dependent code, so compiling on win10 won't include that code (if you don't cross compile) and so you'll get errors. </p>
<p>I use Dave Cheneys gpio package and have a similar issue when compiling on Linux/intel, it's not that I expected the gpio code to work but it won't compile...</p>
<p>If you cross compile then you can't test on the win10 host, so you might need to comment out the gpio bits if you're serious about persisting with that approach.</p></pre>awaitsV: <pre><p>I believe <a href="https://github.com/kidoman/embd" rel="nofollow">https://github.com/kidoman/embd</a> has the goal of being cross compilable. They gave a <a href="https://www.youtube.com/watch?v=0bh07LTq-oA" rel="nofollow">talk at the last GopherCon India.</a></p></pre>
这是一个分享于 的资源,其中的信息可能已经有所发展或是发生改变。
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
- 请尽量让自己的回复能够对别人有帮助
- 支持 Markdown 格式, **粗体**、~~删除线~~、
`单行代码`
- 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
- 图片支持拖拽、截图粘贴等方式上传