我的Github:   Github

树莓派之蜂鸣器小记

在这里我一直遇到一个错误点,在下面的代码中来介绍

这里我买的蜂鸣器的介绍,其中VCC要接在电源端口,GND接GND,IO就是GPIO

这里是运行的python代码

 

import RPi.GPIO as GPIO
import time

address_gpio = 7          #这里代表的是GPIO引针的地址

GPIO.setmode(GPIO.BOARD)    #之前是在这里出错,这里是一个重点,下面贴一张图

#根据我的理解setmod()的意思应该是GPIO引针的编码模式,GPIO.setmode(GPIO.BOARD)这里的GPIO.BOARD代表的是上图中BOARD编码,如果蜂鸣器不响的话且代码没有问题的话应该就是引针地址的错误,本程序中引用的7地址也就是BOARD编码中的数字7所在的地方


GPIO.setup(address_gpio, GPIO.OUT)            #这里是设置为输出

def start(seconds):
     GPIO.output(address_gpio, GPIO.HIGH)          #这里我理解为是高电平的意思,输入到7,高电平,HIGH代表高的意思
     time.sleep(seconds)
     GPIO.output(address_gpio, GPIO.LOW)          #这里我理解为是低电平的意思,输入到7,高电平,LOW代表低的意思

if __name__=="__main__":
        try:
        fro i in range(0,100):                  #循环执行程序
              start(100)  
        except KeyboardInterrupt:                #如果有错误的话执行cleanup(),这里我理解的是清除的意思
                print "error"
         GPIO.cleanup()

 

#如果第二次运行返回错误的话,这个错误并不影响运行,原因在于程序结束传感器没有初始化,变为低电平,只要在代码最后添加变为低电平就可以了

#应为本人并没有系统的学习,只是看了下其他人的代码,直接实验测试得出的这些结论,在这里和大家分享一下

 

posted @   寂夜云  阅读(4065)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示