RaspberryPi是完美的学习计算机。基于Linux的RaspbianOS内置了Python,这使其成为初学者编码器的首选系统。其通用输入/输出(GPIO)引脚使新手制造商可以轻松地尝试DIY电子项目。
当您使用控制这些引脚的代码库时,这一点特别容易,而流行的RPi.GPIOPython库就是这种库的一个很好的例子。但它是初学者的最佳途径吗?
什么是GPIOZero?
GPIOZero库是一个用于处理GPIO引脚的Python库。它由RaspberryPi社区经理BenNuttall撰写。旨在直观和“友好”,它简化了大多数常规RaspberryPi用例的Python代码。
结合简单的命名实践和描述性功能,GPIOZero更易于初学者理解。即使RPi.GPIO库的经验丰富的用户可能更喜欢它-并且为了理解原因,让我们来看看RPi.GPIO与GPIOZero的比较。
RPi.GPIO有什么不对?
没有。什么都没有。RPi.GPIO于年初由开发者BenCroston发布。它是一个强大的库,允许用户从代码中控制GPIO引脚。它几乎涵盖了我们所涵盖的每个初学者项目。
尽管RPi.GPIO广泛使用,但它从未为最终用户设计。RPi.GPIO的优秀设计证明了这么多初学者仍然使用它。
关于GPIOZero有什么好处?
在学习Python代码时,您会了解到它应该易于阅读并且尽可能短。GPIOZero旨在涵盖这两点。它构建在RPi.GPIO之上,作为前端语言包装器,简化了GPIO的设置和使用。
请考虑以下示例,设置和打开LED:
对于使用Pi来控制LED的人来说,上面的代码应该非常熟悉。
导入RPi.GPIO库,并声明LED的引脚。引脚布局类型已设置,引脚设置为输出。然后,引脚打开。
这种方法很有意义,但GPIO零方式更简单:
GPIOZero有一个LED模块,在开始时导入。这意味着您可以声明引脚号,并调用led.on()方法。
为什么GPIOZero的方法更好?
这种工作方法是对RPi.GPIO的改进有一些原因。
首先,它符合“易读,尽可能短”的要求。虽然RPi.GPIO设置语句很容易理解,但它们并不是必需的。LED始终是输出,因此GPIOZero会在幕后设置引脚。结果只需要设置三行代码,然后点亮一个LED。
您可能会注意到GPIOZero示例中没有设置板模式。该库仅对引脚使用Broad