Difference between revisions of "BPI-Bit-S2 STEAM 教育开发板"

From Banana Pi Wiki
Jump to: navigation, search
(MicroPython)
(软件)
Line 321: Line 321:
 
MicroPython是Python 3编程语言的精益高效实现,包括 Python 标准库的一小部分,并且经过优化,可在微控制器和有限的硬件资源中运行。
 
MicroPython是Python 3编程语言的精益高效实现,包括 Python 标准库的一小部分,并且经过优化,可在微控制器和有限的硬件资源中运行。
  
它与使用C程序开发微控制器最明显的差异性,就是验证代码时无需漫长的编译,将“main.py”脚本文件传输给微控制器即可,或者直接通过REPL输入命令控制它,和Python一样。
+
由 Damien P. George 于 2013年 众筹开源。
 +
 
 +
它与使用C程序开发微控制器最明显的差异性,就是验证代码时无需漫长的编译。
 +
 
 +
使用串口通信软件,通过REPL(read-eval-print-loop)输入命令来控制微控制器,和Python的REPL一样。
 +
 
 +
也可使用一些工具将 python 脚本文件上传到微控制器内运行。
  
 
它对Python 3 的实现,包括了支持多线程的 _thread 库,编写并发代码的 asyncio 库。
 
它对Python 3 的实现,包括了支持多线程的 _thread 库,编写并发代码的 asyncio 库。
Line 334: Line 340:
  
 
在另一方面,你深入地学习MicroPython,也能提升你对Python的理解。
 
在另一方面,你深入地学习MicroPython,也能提升你对Python的理解。
 +
 +
== CircuitPython ==
 +
 +
[[File:CircuitPython_Repo_header_logo.jpg | 800px]]
 +
 +
CircuitPython是MicroPython的一个教育友好型的开源衍生产品,由Adafruit Industries支持与开发。
 +
 +
在易用性上,它在MicroPython的基础上更进一步。
 +
 +
使用CircuitPython固件的开发板连接PC时,PC将会立即得到一个USB存储磁盘,将python脚本文件复制进此磁盘即可让程序在此开发板上运行。
 +
 +
这就做到了让用户开箱即用,因为绝大多数现代个人操作系统和家用PC都是支持USB存储磁盘的。
 +
 +
当然为了能使用REPL,至少还是需要安装一个串口通信软件,或是支持这个功能的IDE,例如Mu编辑器。
 +
 +
CircuitPython 社区提供极其丰富的外设驱动库,API文档,教程,
  
 
== Arduino ==
 
== Arduino ==

Revision as of 02:54, 7 December 2022


介绍

BPI-Bit with ESP32
BPI-Leaf-S3 with ESP32-S3
BPI-AI Kendryte K210 RISC-V
BPI-UNO32 with ESP32 design

BPI-Bit-S2 banner.jpg

BPI-Bit-S2 开发板 是 BPI-Bit 的后继型号,继承了大部分硬件功能。

IO与micro:bit兼容,可以使用大部分micro:bit的周边配件。

支持 Webduino, Arduino, MicroPython & CircuitPython 编程环境 ,适合应用于STEAM教育领域。

关键特性

  • ESP32-S2
  • 25颗全彩LED灯
  • 1个温度传感器
  • 1个蜂鸣器
  • 2个光敏传感器
  • 正面两个背面一个可编程按键
  • Type-C USB接口
  • 外形尺寸 5x5cm
  • 金手指IO定义与micro:bit完全兼容

功能对比

micro:bit 与 BPI-Bit-S2
型号 micro:bit V2.2X BPI-Bit-S2
MCU主控芯片 Nordic nRF52833 Espressif ESP32-S2
核心频率 64MHz 240MHz
RAM 128KB 320 KB
FlASH ROM 512KB 4096 KB
PSRAM 2048 KB
无线功能 Bluetooth,microbit-radio WIFI, IEEE 802.11 b/g/n, 2.4Ghz
LED 25颗 红色灯珠 25颗 WS2812-3535 彩色灯珠
按键 2个可编程按键,1个RST按键 2个可编程按键,1个BOOT按键,1个RST按键
蜂鸣器
麦克风
USB插座 Micro USB Type-C USB
USB转TTL nRF52833-QDAA or nRF52820-QDAA MCU芯片内置
电池插座
IO 19 pins金手指IO,鳄鱼夹卡口,支持触摸感应 19 pins金手指IO(兼容micro:bit),鳄鱼夹卡口,支持触摸感应
运动传感器
光敏传感器 2个
温度传感器 1个芯片温度传感器 1个板载温度传感器

硬件

Bpi bit v2 interface.jpg

BPI-Bit-S2 规格表
MCU主控芯片 ESP32-S2FN4R2,Xtensa® 32 位 LX7 单核处理器
主频 240MHz MAX
工作温度 -40℃~+85℃
ROM 128 KB
SRAM 320 KB
FLASH ROM 4 MB
PSRAM 2 MB
WIFI IEEE 802.11 b/g/n ,2.4Ghz 频段
GPIO 已引出19个可用GPIO引脚
可用外设功能 ADC,TOUCH,PWM,SPI,I2C,I2S,Pulse counter, RMT,TWAI® Controller,SD/MMC,LCD_CAMERA
外部晶振 40Mhz
蜂鸣器 1个板载蜂鸣器
LED 灯 25颗串联全彩led灯,单线GPIO控制;1颗单色LED灯,GPIO0控制
光敏传感器 2个独立光敏传感器
温度传感器 1个独立温度传感器
IO 19pins 金手指IO(兼容micro:bit配件),背部 19 pin 触点
按键 2个可编程按键,1个BOOT按键,1个RST按键
USB USB Type-C接口,全速 USB OTG,USB-ACM
工作电压 3.3V
电源 USB Type-C输入5V供电,或金手指IO输入3.3V供电
尺寸 5 * 5 cm

板载外设

外设GPIO分配及信号类型
光敏传感器(L) GPIO 12 Analog Input
光敏传感器(R) GPIO 13 Analog Input
按键 A GPIO 38 Digital Input
按键 B GPIO 33 Digital Input
按键 BOOT GPIO 0 Digital Input
温度传感器 GPIO 14 Analog Input
蜂鸣器 GPIO 17 PWM(Digital Output)
RGB_LED GPIO 18 Digital Output

5*5 全彩LED灯

BPI-Bit-S2 有25颗全彩LED灯, 单GPIO控制. 每颗LED的三原色像素都可以实现 8bit 256级亮度显示,及实现16777216色全彩显示,扫描频率不低于400Hz/s。

5*5 LEDs list of BPI-Bit-S2
20 15 10 5 0
21 16 11 6 1
22 17 12 7 2
23 18 13 8 3
24 19 14 9 4

金手指引脚定义

BPI-Bit-S2 金手指 GPIO 定义与 micro:bit 兼容. 可以使用 micro:bit 的GPIO扩展板配件。

Bpi bit v2 goldfinger.jpg

SPI,I2C
Function Pin Name GPIO Num
SPI_SCK P13 GPIO36
SPI_MISO P14 GPIO37
SPI_MOSI P15 GPIO35
SPI_CS P16 GPIO34
I2C_SCL P19 GPIO16
I2C_SDA P20 GPIO15

供电

BPI-Bit-S2支持两种供电方式:

1. Type-C USB:使用USB线供电,连接电脑USB接口或其他5V USB充电器即可为开发板供电。

2. 金手指:开发板底部金手指包含电源接口,同时具有输入和输出功能,使用3.3V供电,正极接3V3,负极接GND。

软件

Webduino

Webduino logo 1200x350.jpg

webduino在线积木编程平台

webduino积木编程平台 Windows安装版

webduino在线教学手册

MicroPython

Mircopython.png

MicroPython是Python 3编程语言的精益高效实现,包括 Python 标准库的一小部分,并且经过优化,可在微控制器和有限的硬件资源中运行。

由 Damien P. George 于 2013年 众筹开源。

它与使用C程序开发微控制器最明显的差异性,就是验证代码时无需漫长的编译。

使用串口通信软件,通过REPL(read-eval-print-loop)输入命令来控制微控制器,和Python的REPL一样。

也可使用一些工具将 python 脚本文件上传到微控制器内运行。

它对Python 3 的实现,包括了支持多线程的 _thread 库,编写并发代码的 asyncio 库。

它尽可能与普通Python兼容,允许您轻松地将代码从桌面端移植到微控制器。

同时它还具备一些特定用于微控制器的库,以便充分利用微控制器芯片内的硬件功能,例如定时器,硬件中断,WiFi等,这取决于具体的硬件。

在具备上述特性的同时,它的硬件开销很少,最低只需 256k 的代码空间和 16k 的 RAM 即可运行。

如果你了解Python,很大程度上你就已经了解MicroPython了。

在另一方面,你深入地学习MicroPython,也能提升你对Python的理解。

CircuitPython

CircuitPython Repo header logo.jpg

CircuitPython是MicroPython的一个教育友好型的开源衍生产品,由Adafruit Industries支持与开发。

在易用性上,它在MicroPython的基础上更进一步。

使用CircuitPython固件的开发板连接PC时,PC将会立即得到一个USB存储磁盘,将python脚本文件复制进此磁盘即可让程序在此开发板上运行。

这就做到了让用户开箱即用,因为绝大多数现代个人操作系统和家用PC都是支持USB存储磁盘的。

当然为了能使用REPL,至少还是需要安装一个串口通信软件,或是支持这个功能的IDE,例如Mu编辑器。

CircuitPython 社区提供极其丰富的外设驱动库,API文档,教程,

Arduino

Arduino logo 1200x350.png

Arduino 是一个开源嵌入式软硬件开发平台,用来供用户制作可交互式的嵌入式项目。

Preparing...

资料与资源

BPI-Bit-S2原理图