Micro:bit MicroPython 教程 5.2 PWM及相关API

数字和模拟

  • 在介绍API之前,先了解一下什么叫数字接口,什么叫模拟接口。

数字接口Digital

  • 数字接口的参数及返回值只有计算机值 0 和 1 ,1 代表高电平(3.3v),0 代表低电平(0v)。

  • 在micro:bit主板上大多数为数字接口。

模拟接口Analog

  • 模拟接口可以在0-3.3v之间选择一个电压,参数及返回值为0(0v)-1023(3.3v).

  • micro:bit板载的P0、P1、P2、P3、P4、P10为模拟口,其他均为数字接口。

PWM脉冲宽度调制

  • Micro:bit引脚只能设置为3.3V输出,或者将其下拉至0V。如果想要设置一个1.65v的输出,可以通过非常快速地接通和断开该电压来控制,控制它的开启时间和关闭时间,调节电压值,这种技术称为脉冲宽度调制(PWM),这就是write_analog方法。

可以在上面看到四种不同PWM信号的图表。它们都具有相同的周期(因此具有频率),但它们具有不同的占空比。

第一个产生的信号是3V。

第二个产生的信号是write_analog(511),它恰好具有50%的占空比,在一半的时间内为3.3v,而在一半的时间内为0v。结果是该信号的输出1.65V而不是3.3V。

第三个信号具有25%的占空比,生成信号用write_analog(255)。同上所述,该引脚上输出0.825V。

第四个信号具有75%的占空比,生成信号用write_analog(767)。它的能量是第三个信号的三倍,相当于输出2.475V。

I/O口相关API

API 描述 适用端口
read_digital() 向I/O口写入一个数字值,0 或者 1 数字接口
write_digital() 从I/O口读取一个数字返回值,0 或者 1 数字接口
read_analog() 从I/O口读取一个模拟返回值,0到1023之间 模拟接口
write_analog(val) 向I/O口写入一个模拟值(val)(PWM信号) 模拟接口
set_analog_period(val) 将输出的PWM信号的周期设置为val以毫秒为单位。最小有效值为1ms。 模拟接口
set_analog_period_microseconds(val) 将输出的PWM信号的周期设置为val以纳秒为单位。最小有效值为256µs。 模拟接口
is_touched() 端口是否被触摸,因为人接触大地,所以会把I/O口电压拉低。 模拟接口

提示:Micro:bit仅在P0、P1、P2上安装了上拉电阻,以便触摸感应起作用。

- 本文内容来自网络,如有侵权,请联系本站处理。

2022-04   阅读(12)   评论(0)
 标签: 编程 MicroBit MicroPython

涨知识
摩尔斯电码

摩尔斯电码(Morse code)也被称作摩斯密码,是一种时通时断的信号代码,通过不同的排列顺序来表达不同的英文字母、数字和标点符号。

评论:
相关文章
ESP32 MicroPython存储数据到闪存

在MicroPython的ESP32库中,NVS类用于管理非易失性存储,支持 32 位有符号整数和 二进制blob。


MicroPython umqtt库的使用

umqtt 是 MicroPython 的一个轻量级 MQTT 客户端库,使得在微控制器上使用 MQTT 协议变得简单易行。本文将介绍 umqtt 的实用方法,帮助您更好地在项目中应用这一技术。


小鹏物联网 MicroPython 图像采集方案

本方案是一个基于ESP32-CAM + 物联网的图像采集方案。


esp32cam开发板烧录micropython固件

‌ESP32-CAM与MicroPython结合可实现摄像头图像采集、视频流传输等功能,不过Micropython官方没有支持ESP32-CAM的固件,需要烧录第三方的专有固件。


小鹏物联网 MicroPython 智能浇花方案

相信很多人都有把绿植给养死的经历,可能是浇水过多、忘记浇水、较长时间不在家不能浇水等,本文介绍一种可以灵活定制的智能浇花方案。


MicroPython 开发ESP32应用之线程介绍及实例分析

MicroPython 在 ESP32 上支持线程(Thread)功能,通过_thread模块实现。线程允许程序并发执行多个任务,适合处理需要同时运行的场景,例如传感器数据采集和网络通信。


ESP32 MicroPython采集模拟传感器数值

使用了 MicroPython 库,通过 定时器(Timer) 和 ADC(模数转换器) 功能来实时读取传感器数据。使用定时器可以实现高精度、非阻塞、低资源消耗的周期性任务,保证实时性和可靠性,特别适用于嵌入式系统中的多任务处理和低功耗场景。


Raspberry Pi Pico TFT LCD 触摸屏使用教程

本教程将向您展示如何使用micropython脚本设置Pico和TFT触摸显示屏。您将学习如何使用触摸屏控制Pico以及如何在屏幕上显示信息。


ESP32 MicroPython外部引脚中断处理

本文旨在介绍如何在运行MicroPython的ESP32上使用外部引脚中断功能。


ESP32 MicroPython功耗控制

本节内容为大家讲解ESP32使用MicroPython的功耗控制方法。

搜索
最新课件
小鹏STEM教研服务

专属教研服务系统,助您构建STEM课程体系,打造一站式教学环境。