347|2

72

帖子

0

TA的资源

一粒金砂(中级)

【得捷电子Follow me第1期】任务2:驱动led和蜂鸣器 [复制链接]

本任务主要包括三块,驱动led灯,蜂鸣器和oled显示屏,但是oled驱动有点问题,所以暂时放下,后续再整理。

1.驱动LED

PICO W板子上载有一颗LED灯,具体可以参考下面电路图,其位于usb接口左边。

image.png

LED是通过GPIO口控制,我们需要用machine模块中的Pin包来进行控制。使用Pin创建一个lED对象,然后通过管脚的电平高低来进行控制。

管脚电平有两种控制方式,一种是on和off函数,另外一种是value函数。

具体如下:

#点亮led
led.on()
#熄灭led
led.off()
#点亮led
led.value(1)
#熄灭led
led.value(0)

这里加了time模块循环控制灯。

Led.py文件如下:

from machine import Pin
import time

#Led = Pin(25,Pin.OUT)
#Led = Pin("WL_GPIO0",Pin.OUT)
Led = Pin("LED",Pin.OUT)
#Led = Pin("GP7",Pin.OUT)

while True:
    #Led.on()
    Led.value(1)
    print("LED灯亮")
    time.sleep(0.3)
    #Led.off()
    Led.value(0)
    print("LED灯灭")
    time.sleep(0.3)

效果如下:

led点亮

2.蜂鸣器驱动

蜂鸣器驱动需要用到PWM进行驱动,PWM引脚由管脚16控制,具体代码如下。

# Example using PWM to fade an BEEP.
import time
from machine import Pin, PWM

# Construct PWM object, with BEEP on Pin(16).
pwm = PWM(Pin(16))
# Set the PWM frequency.
pwm.freq(1000)
# Fade the BEEP in and out a few times.

duty = 0
direction = 1
for _ in range(4 * 256):
    duty += direction
    if duty > 255:
        duty = 255
        direction = -1
    elif duty < 0:
        duty = 0
        direction = 1
    pwm.duty_u16(duty * duty)
    time.sleep(0.001)

效果如下:

驱动breez

 

最新回复

[attach]701533[/attach] 没有弄个响声出来吗    详情 回复 发表于 2023-5-30 21:06

回复

5202

帖子

0

TA的资源

五彩晶圆(中级)

image.png

没有弄个响声出来吗 

点评

有声音哦,好像不大    详情 回复 发表于 2023-5-30 21:41

回复

72

帖子

0

TA的资源

一粒金砂(中级)

Jacktang 发表于 2023-5-30 21:06 没有弄个响声出来吗 

有声音哦,好像不大

 


回复
您需要登录后才可以回帖 登录 | 注册

相关帖子
猜你喜欢
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2023 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表