英文:
Which package to use for using GPIOs on Raspberry Pi?
问题
你好!以下是翻译好的内容:
如何使用Go语言读取树莓派上GPIO的温度传感器数值?
请问有人可以帮我解决这个问题吗?
提前感谢!
英文:
How can I read the temperature sensor values on GPIO of a Raspberry Pi using the go language?
Please, anyone help me out.
Thanks in advance.
答案1
得分: 5
请注意,我是一个语言模型,我无法直接访问互联网或打开链接。但是,我可以为您提供翻译的文本。以下是您提供的内容的翻译:
请查看Dave Cheney的包:
那里有一个经典的闪烁示例。
答案2
得分: 3
这是一个比Dave Cheney的gpio库稍微高级一点的抽象层。
除了gpio api外,还支持许多常见的传感器。
不确定你的传感器是什么,但是这里有一个示例是用于bmp180气压传感器的。
英文:
this is a slightly higher level abstraction than dave cheney's gpio library.
In addition to a gpio api, there is support for many common sensors
not sure what your sensor is, but e.g. here is an example for the bmp180 barometric sensor
答案3
得分: 3
我已经为与树莓派的GPIO引脚交互创建了一个非常简单的包:
https://github.com/nathan-osman/go-rpigpio
一个简单的程序,让引脚2闪烁十次,可能会像这样:
package main
import (
"github.com/nathan-osman/go-rpigpio"
"time"
)
func main() {
p, err := rpi.OpenPin(2, rpi.OUT)
if err != nil {
panic(err)
}
defer p.Close()
for i := 0; i < 10; i++ {
p.Write(rpi.HIGH)
time.Sleep(300 * time.Millisecond)
p.Write(rpi.LOW)
time.Sleep(100 * time.Millisecond)
}
}
更多文档可以在这里找到。
英文:
I have created an extremely simple package for interacting with the GPIO pins on a Raspberry Pi:
https://github.com/nathan-osman/go-rpigpio
A simple program that makes pin 2 flash ten times would look something like this:
package main
import (
"github.com/nathan-osman/go-rpigpio"
"time"
)
func main() {
p, err := rpi.OpenPin(2, rpi.OUT)
if err != nil {
panic(err)
}
defer p.Close()
for i := 0; i < 10; i++ {
p.Write(rpi.HIGH)
time.Sleep(300 * time.Millisecond)
p.Write(rpi.LOW)
time.Sleep(100 * time.Millisecond)
}
}
More documentation can be found here.
答案4
得分: 1
以下是2023年8月11日可用的一些Go模块,用于访问树莓派的GPIO引脚。然而,并非所有模块都得到定期维护。下表总结了这些模块,按照最后提交日期排序。
模块 | 星数 | 最后提交日期 | 许可证 | 备注 |
---|---|---|---|---|
hybridgroup/gobot | 8.4k | 2023年7月 | Apache2 | 机器人/物联网框架 |
warthog618/gpiod | 321 | 2023年7月 | MIT | |
periph/conn | 48 | 2023年4月 | Apache-2.0 | periph库的一部分 |
warthog618/gpio | 114 | 2022年12月 | MIT | 依赖已弃用的sysfs |
stianeikeland/go-rpio | 2k | 2021年12月 | MIT | |
mrmorphic/hwio | 322 | 2018年5月 | BSD-3 | |
kidoman/embd | 1.3k | 2017年5月 | MIT | |
nathan-osman/go-rpigpio | 64 | 2016年6月 | MIT | |
luismesas/goPi | 74 | 2014年4月 | MIT |
读取温度传感器不仅取决于选择的Go模块,还取决于所使用的温度传感器。例如,您可以使用Adafruit的AM2302(有线DHT22)温湿度传感器,在这种情况下,您可以使用go-dht模块,该模块使用periph驱动程序提供DHT22、AM2302和DHT11接口。
英文:
There are quite a few Go modules to access the GPIO pins on a Raspberry Pi. However, not all of them are regularly maintained. The table below summarizes some of the available Go modules as of August 11, 2023. The table is sorted by last commit date.
Module | Stars | Last Commit | License | Notes |
---|---|---|---|---|
hybridgroup/gobot | 8.4k | Jul 2023 | Apache2 | Framework for robotics/IoT |
warthog618/gpiod | 321 | Jul 2023 | MIT | |
periph/conn | 48 | Apr 2023 | Apache-2.0 | Part of periph library |
warthog618/gpio | 114 | Dec 2022 | MIT | Relies on sysfs which is deprecated |
stianeikeland/go-rpio | 2k | Dec 2021 | MIT | |
mrmorphic/hwio | 322 | May 2018 | BSD-3 | |
kidoman/embd | 1.3k | May 2017 | MIT | |
nathan-osman/go-rpigpio | 64 | Jun 2016 | MIT | |
luismesas/goPi | 74 | Apr 2014 | MIT |
Reading a temperature sensor depends not just on the chosen Go module but also on the temperature sensor being used. For instance, you could use the AM2302 (wired DHT22) temperature-humidity sensor from Adafruit in which case you could use the go-dht module, which provides DHT22, AM2302, and DHT11 interfaces using the periph driver.
答案5
得分: 0
另一个是goPi - 也支持piface
还有闪烁的示例
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论