Difference between revisions of "BPI-Bit-S2 STEAM 教育开发板"
(→MicroPython) |
(→MicroPython) |
||
Line 321: | Line 321: | ||
MicroPython 是一种基于 Python 编程语言的开源编程语言,设计用于在微控制器上运行。 | MicroPython 是一种基于 Python 编程语言的开源编程语言,设计用于在微控制器上运行。 | ||
− | + | 它与使用C程序开发微控制器最明显的差异性,就是验证代码时无需漫长的编译,将“main.py”脚本文件传输给微控制器即可,或者直接通过REPL输入命令控制它,和Python一样。 | |
它实现了Python 3 的基础特性和语法,包括支持多线程的 _thread 库,编写并发代码的 asyncio 库。 | 它实现了Python 3 的基础特性和语法,包括支持多线程的 _thread 库,编写并发代码的 asyncio 库。 | ||
Line 328: | Line 328: | ||
同时它还具备一些特定用于微控制器的库,以便充分利用微控制器芯片内的硬件功能,例如定时器,硬件中断,WiFi等,这取决于具体的硬件。 | 同时它还具备一些特定用于微控制器的库,以便充分利用微控制器芯片内的硬件功能,例如定时器,硬件中断,WiFi等,这取决于具体的硬件。 | ||
+ | |||
+ | 在具备上述特性的同时,它的硬件开销很少,最低只需 256k 的代码空间和 16k 的 RAM 即可运行。 | ||
+ | |||
+ | 如果你了解Python,很大程度上你就已经了解MicroPython了。 | ||
+ | |||
+ | 在另一方面,你深入地学习MicroPython,也能提升你对Python的理解。 | ||
== Arduino == | == Arduino == |
Revision as of 23:10, 6 December 2022
Contents
介绍
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-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扩展板配件。
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
MicroPython
MicroPython 是一种基于 Python 编程语言的开源编程语言,设计用于在微控制器上运行。
它与使用C程序开发微控制器最明显的差异性,就是验证代码时无需漫长的编译,将“main.py”脚本文件传输给微控制器即可,或者直接通过REPL输入命令控制它,和Python一样。
它实现了Python 3 的基础特性和语法,包括支持多线程的 _thread 库,编写并发代码的 asyncio 库。
它尽可能与普通Python兼容,允许您轻松地将代码从桌面端移植到微控制器。
同时它还具备一些特定用于微控制器的库,以便充分利用微控制器芯片内的硬件功能,例如定时器,硬件中断,WiFi等,这取决于具体的硬件。
在具备上述特性的同时,它的硬件开销很少,最低只需 256k 的代码空间和 16k 的 RAM 即可运行。
如果你了解Python,很大程度上你就已经了解MicroPython了。
在另一方面,你深入地学习MicroPython,也能提升你对Python的理解。
Arduino
Arduino 是一个开源嵌入式软硬件开发平台,用来供用户制作可交互式的嵌入式项目。
Preparing...