Buzzer Unit

支持以下产品:

Buzzer

MicroPython 应用示例

 1# SPDX-FileCopyrightText: 2024 M5Stack Technology CO LTD
 2#
 3# SPDX-License-Identifier: MIT
 4
 5import os, sys, io
 6import M5
 7from M5 import *
 8from unit import BuzzerUnit
 9
10
11buzzer_0 = None
12
13
14def setup():
15    global buzzer_0
16
17    M5.begin()
18    Widgets.fillScreen(0x222222)
19
20    buzzer_0 = BuzzerUnit((8, 9))
21
22
23def loop():
24    global buzzer_0
25    M5.update()
26    if M5.Touch.getCount():
27        buzzer_0.once(freq=4000, duty=50, duration=50)
28
29
30if __name__ == "__main__":
31    try:
32        setup()
33        while True:
34            loop()
35    except (Exception, KeyboardInterrupt) as e:
36        try:
37            from utility import print_error_msg
38
39            print_error_msg(e)
40        except ImportError:
41            print("please update to latest firmware")

UiFlow2 应用示例:

example.png

cores3_buzzer_example.m5f2

class BuzzerUnit

Constructors

class BuzzerUnit(port)

创建一个 BuzzerUnit 对象。

参数如下:
  • port 是端口的引脚编号

UiFlow2

init.png

Methods

BuzzerUnit.once(freq=10, duty=50, duration=50)

蜂鸣器响一次。

参数:
  • freq (int) – 振动频率,范围为 100 - 10000 Hz。

  • duty (int) – 振动的占空比,范围为 0 - 100。

  • duration (int) – 振动持续时间,范围为 0 - 10000 ms。

UiFlow2

once.png

BuzzerUnit.set_freq(freq: int)

设置蜂鸣器的频率。

参数:

freq (int) – 振动频率,范围为 100 - 10000 Hz。

UiFlow2

set_freq.png

BuzzerUnit.set_duty(duty: int)

设置蜂鸣器的占空比。

参数:

duty (int) – 振动的占空比,范围为 0 - 100。

UiFlow2

set_duty.png

BuzzerUnit.turn_off()

关闭蜂鸣器。

UiFlow2

turn_off.png

BuzzerUnit.deint()

反初始化蜂鸣器。

UiFlow2

deinit.png