Difference between revisions of "BPI-Bit STEAM 教育开发板"
(→Arduino 开发) |
|||
(26 intermediate revisions by one other user not shown) | |||
Line 11: | Line 11: | ||
[[File:BPIbit_breadboard_GPIO_expansion_board_3.jpg|thumb|[[BPI:bit gpio expansion board]]]] | [[File:BPIbit_breadboard_GPIO_expansion_board_3.jpg|thumb|[[BPI:bit gpio expansion board]]]] | ||
[[File:BPI-bit_robort_board_3.JPG|thumb|[[BPI:bit robot 机器人扩展板]]]] | [[File:BPI-bit_robort_board_3.JPG|thumb|[[BPI:bit robot 机器人扩展板]]]] | ||
+ | [[File:Original.jpg|thumb|[[BPI:bit MoonCar 登月小车]]]] | ||
'''BPI bit''' (又可以叫'''BPI-bit'''和'''bpi:bit'''). 支持Webduino, Arduino, MicroPython ,和Scratch X 编程环境 ,专注在STEAM教育领域 | '''BPI bit''' (又可以叫'''BPI-bit'''和'''bpi:bit'''). 支持Webduino, Arduino, MicroPython ,和Scratch X 编程环境 ,专注在STEAM教育领域 | ||
Line 33: | Line 34: | ||
| style="background: PaleTurquoise; color: black" colspan="4"| '''GPIO control of BPI:bit''' | | style="background: PaleTurquoise; color: black" colspan="4"| '''GPIO control of BPI:bit''' | ||
|- | |- | ||
− | | | + | |光敏传感器(L) || GPIO 36|| Analog Input |
|- | |- | ||
− | | | + | |光敏传感器(R)|| GPIO 39|| Analog Input |
|- | |- | ||
− | | | + | |按键 A|| GPIO 35 ||Digital Input |
|- | |- | ||
− | | | + | |按键 B|| GPIO 27|| Digital Input |
|- | |- | ||
− | | | + | |温度传感器|| GPIO 34 ||Analog Input |
|- | |- | ||
− | | | + | |蜂鸣器|| GPIO 25 ||PWM(Digital Output) / Analog Output |
|- | |- | ||
|RGB_LED|| GPIO 4 ||Digital Output | |RGB_LED|| GPIO 4 ||Digital Output | ||
|- | |- | ||
− | | | + | |九轴传感器MPU9250_SCL|| GPIO 22 ||Digital Output |
|- | |- | ||
− | | | + | |九轴传感器MPU9250_SDA|| GPIO 21|| Digital Output |
|- | |- | ||
− | | | + | |九轴传感器MPU9250_INT|| GPIO 16 ||Digital Input |
|- | |- | ||
|R_LED(SPI_SCK)|| GPIO 18 ||Digital Output | |R_LED(SPI_SCK)|| GPIO 18 ||Digital Output | ||
Line 73: | Line 74: | ||
BPI:bit金手指GPIO定义与micro:bit兼容. 可以使用micro:bit的GPIO扩展板配件。 | BPI:bit金手指GPIO定义与micro:bit兼容. 可以使用micro:bit的GPIO扩展板配件。 | ||
− | [[File: | + | [[File:Bpi_bit_gpio_detail-05.jpg]] |
{| class="wikitable" | {| class="wikitable" | ||
Line 134: | Line 135: | ||
== 5*5 25全彩LED灯== | == 5*5 25全彩LED灯== | ||
− | BPI:bit 有25颗全彩LEDs灯, 并且能用单GPIO控制. | + | BPI:bit 有25颗全彩LEDs灯, 并且能用单GPIO控制.三种原色的每个像素都可以实现256亮度显示,完成16777216彩色全彩色显示,扫描频率不低于400Hz/s |
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
Line 167: | Line 168: | ||
*3.金手指GPIO供电:在板子底部的金手指则包含电源接口。同时,它具有输入和输出功能,具有较高的兼容性。 | *3.金手指GPIO供电:在板子底部的金手指则包含电源接口。同时,它具有输入和输出功能,具有较高的兼容性。 | ||
− | ==BPI: | + | ==BPI:bit,掌控板与 micro:bit 比较表== |
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
− | | style="background: PaleTurquoise; color: black" colspan="8"| ''' bpi:bit | + | | style="background: PaleTurquoise; color: black" colspan="8"| ''' bpi:bit ,掌控板与micro:bit比较''' |
|- | |- | ||
− | |型号名||bpi:bit||micro:bit | + | |型号名||bpi:bit||掌控板||micro:bit |
|- | |- | ||
− | |主控||Dual-core 32bit Xtensa LX6, up to 240MHz||NXP KL26Z 32bit ARM Cortex M0, up to 16MHz | + | |主控||ESP32 Dual-core 32bit Xtensa LX6, up to 240MHz||ESP32 Dual-core 32bit Xtensa LX6, up to 240MHz||NXP KL26Z 32bit ARM Cortex M0, up to 16MHz |
|- | |- | ||
− | |RAM||520 KB||16 KB | + | |RAM||520 KB||520KB||16 KB |
|- | |- | ||
− | |ROM||448 KB||Unkown | + | |ROM||448 KB||448||Unkown |
|- | |- | ||
− | |Flash||4096 KB||256 KB | + | |Flash||4096 KB||4096 KB||256 KB |
|- | |- | ||
− | |蓝牙||BT4.2 BR/EDR and BLE|| BLE only | + | |蓝牙||BT4.2 BR/EDR and BLE|| BT4.2 BR/EDR and BLE||BLE only |
|- | |- | ||
− | |WIFI无线||802.11 b/g/n/e/i||| N/A | + | |WIFI无线||802.11 b/g/n/e/i|||802.11 b/g/n/e/i|| N/A |
|- | |- | ||
− | |蜂鸣器||1x | + | |蜂鸣器||1x 板载蜂鸣器||1x 板载蜂鸣器||N/A |
|- | |- | ||
− | |5*5 LED 灯||25 | + | |5*5 LED 灯||25 智能控制全彩(16777216色)led灯,单GPIO控制||1.3英寸OLED显示屏||25 个单色灯(红色) |
|- | |- | ||
− | |光敏传感器|| 2 | + | |光敏传感器|| 2 个独立光敏传感器||光线传感器||LED灯支持的基本亮度检测 |
|- | |- | ||
− | |温度传感器|| | + | |温度传感器|| 1个独立的温度传感器|| 无||仅仅有CPU运行温度指示 |
|- | |- | ||
− | |运动传感器|| MPU-9250 | + | |运动传感器|| MPU-9250 九轴运动跟踪:三轴加速度计,三轴磁强计,三轴陀螺仪||三轴加速度计MSA300,测量范围:±2G ||3-轴加速计;使用硬件磁强计;没有陀螺仪,没有运动处理器 |
|- | |- | ||
− | |IO 控制介面 || | + | |IO 控制介面 ||金手指介面(兼容micro:bit配件)||金手指介面|| 金手指介面 |
|- | |- | ||
− | |按键||2 | + | |按键||2 个可编程按键||2个物理按键(A/B)||2 个可编程按键 |
|- | |- | ||
− | |micro USB||1x micro USB(UART)||1 x micro USB(Mass Storage Device) | + | |micro USB||1x micro USB(UART)||Micro USB||1 x micro USB(Mass Storage Device) |
|- | |- | ||
− | |软件支持||[http://www.webduino.com.cn Webduino], Arduino, MicroPython, Scratch X|| Microsoft MakeCode, MicroPython, Scratch X | + | |软件支持||[http://www.webduino.com.cn Webduino], Arduino, MicroPython, Scratch X|| Arduino, MicroPython, Scratch X || Microsoft MakeCode, MicroPython, Scratch X |
|- | |- | ||
− | |尺寸||5*5 厘米||5*4 厘米 | + | |尺寸||5*5 厘米||5*4 厘米||5*4 厘米 |
|- | |- | ||
|} | |} | ||
Line 279: | Line 280: | ||
=资料与资源= | =资料与资源= | ||
+ | *[https://github.com/BPI-STEAM/BPI-BIT/blob/master/doc/BPI-bit%E7%94%A8%E6%88%B7%E6%89%8B%E5%86%8C.pdf BPI:bit 用户手册l] | ||
+ | *[https://github.com/BPI-STEAM/BPI-BIT/blob/master/doc/BPI-WEBDUINO-BIT-V1_4.pdf BPI:bit V1.4 schematic diagram] | ||
+ | *[https://github.com/BPI-STEAM/BPI-BIT/blob/master/doc/BPI-WEBDUINO-BIT-V1_2.pdf BPI:bit V1.2 schematic diagram] | ||
+ | *[http://forum.banana-pi.org/uploads/default/original/2X/0/0b86ccaeb565cdeef093164fd1ff837727ca2887.rar BPI:bit dxf 结构文件] | ||
+ | *[https://drive.google.com/file/d/1JoQqcHd12TBzTResew5SkeNFxlJ3BGL8/view?usp=sharing BPI:bit 3D 设计文件] | ||
*BPI:bit Webduino Easy How-To's Episode 1: Initial Setup : https://www.youtube.com/watch?v=23_a27N3_7k | *BPI:bit Webduino Easy How-To's Episode 1: Initial Setup : https://www.youtube.com/watch?v=23_a27N3_7k | ||
*How to Program Esp32 with Arduino IDE with C++ : https://technicalustad.com/program-esp32-with-arduino-ide-with-c/ | *How to Program Esp32 with Arduino IDE with C++ : https://technicalustad.com/program-esp32-with-arduino-ide-with-c/ | ||
+ | *BPI:bit CE FCC RoHS 产品认证:http://forum.banana-pi.org/t/banana-pi-bpi-bit-ce-fcc-rohs-certification/7363 | ||
+ | *BPI:bit platformio official support :https://docs.platformio.org/en/latest/boards/espressif32/bpi-bit.html | ||
+ | *BPI:bit for webduino 黄文玉老师教程(TaiWan): https://sites.google.com/site/wenyuwebbit/ | ||
+ | *BPI:bit for webduino 陈致中老师教程(TaiWan):https://sites.google.com/a/tssh.ntpc.edu.tw/chenlung/webduino-bit | ||
==Github 源代码== | ==Github 源代码== | ||
Line 289: | Line 299: | ||
==参考链接== | ==参考链接== | ||
− | + | ||
− | *[https://github.com | + | |
− | + | *[https://github.com/BPI-STEAM/BPI-BIT/blob/master/doc/ESP32-datesheet_english.pdf ESP32 规格书] | |
− | |||
*[https://www.dfrobot.com/blog-964.html ESP32 Arduino 参考文档] | *[https://www.dfrobot.com/blog-964.html ESP32 Arduino 参考文档] | ||
*[https://www.espressif.com/products/hardware/esp32/resources Espressif ESP32 资源列表] | *[https://www.espressif.com/products/hardware/esp32/resources Espressif ESP32 资源列表] | ||
*[https://esp-idf.readthedocs.io/en/latest/ Espressif ESP-IDF 开发用户手册] | *[https://esp-idf.readthedocs.io/en/latest/ Espressif ESP-IDF 开发用户手册] | ||
*[http://www.invensense.com/wp-content/uploads/2015/02/PS-MPU-9250A-01-v1.1.pdf MPU9250 九轴传感器规格书] | *[http://www.invensense.com/wp-content/uploads/2015/02/PS-MPU-9250A-01-v1.1.pdf MPU9250 九轴传感器规格书] | ||
− | *[https://github.com/ | + | *[https://github.com/BPI-STEAM/BPI-BIT/tree/master/doc 更多其他文档] |
− | *[http:// | + | *[http://webduino.io Webduino STEAM教育平台台湾官方网站] |
*[http://www.webduino.com.cn/site/en/ Webduino STEAM教育平台大陆官方网站] | *[http://www.webduino.com.cn/site/en/ Webduino STEAM教育平台大陆官方网站] | ||
*[https://pt.aliexpress.com/store/product/O-BPI-bit-Webduino-e-placa-arduino-com-educa-o-EPS32-para-VAPOR/302756_32861694375.html?spm=a2g03.12010611.0.0.203230d9sYXj5K Easy to buy bpi:bit sample form aliexpress ] | *[https://pt.aliexpress.com/store/product/O-BPI-bit-Webduino-e-placa-arduino-com-educa-o-EPS32-para-VAPOR/302756_32861694375.html?spm=a2g03.12010611.0.0.203230d9sYXj5K Easy to buy bpi:bit sample form aliexpress ] |
Latest revision as of 00:47, 3 June 2020
Contents
BPI:bit 开发板介绍
BPI bit (又可以叫BPI-bit和bpi:bit). 支持Webduino, Arduino, MicroPython ,和Scratch X 编程环境 ,专注在STEAM教育领域
BPI:bit 主要功能介绍
bpi:bit 开发板仅有5厘米X5厘米大小,重12克左右。并有20个金手指定义与Micro:bit完全兼容。集成了25颗全彩LED灯,两上光敏传感器,两个可编程按键,温度传感器,蜂鸣器,MPU-9250 九轴传感器(三轴加速度三轴陀螺仪和三轴磁盘)。GPIO控制定义如下
- 25 LED全彩灯: GPIO4
- 光敏传感器: GPIO36 (Analog A0, upper left), GPIO39 (Analog A3, upper right)
- 按键控制 : GPIO35 (Botton A), GPIO27 (Botton B)
- 温度传感器: GPIO34 (Analog A6)
- 蜂鸣器: GPIO25
- MPU-9250 九轴传感器: GPIO0, GPIO21(SDA), GPIO22(SCL)
GPIO control of BPI:bit | |||
光敏传感器(L) | GPIO 36 | Analog Input | |
光敏传感器(R) | GPIO 39 | Analog Input | |
按键 A | GPIO 35 | Digital Input | |
按键 B | GPIO 27 | Digital Input | |
温度传感器 | GPIO 34 | Analog Input | |
蜂鸣器 | GPIO 25 | PWM(Digital Output) / Analog Output | |
RGB_LED | GPIO 4 | Digital Output | |
九轴传感器MPU9250_SCL | GPIO 22 | Digital Output | |
九轴传感器MPU9250_SDA | GPIO 21 | Digital Output | |
九轴传感器MPU9250_INT | GPIO 16 | Digital Input | |
R_LED(SPI_SCK) | GPIO 18 | Digital Output |
硬件
硬件简介
BPI:bit采用ESP32作为主控模块,ESP32是集成2.4G WiFi和蓝牙双模的单芯片方案,采用超低功耗的40纳米工艺,拥有最佳的功耗性能、射频性能、稳定性、通用性和可靠性,适用于各种应用和不同功耗需求。ESP32采用 Xtensa 32bit LX6单/双核处理器,运算能力高达600DMIPS,内置448KB ROM和520 KB SRAM。
BPI:bit提供丰富的板载资源,支持光敏传感器,数字三轴传感器,数字罗盘,温度传感器接口,金手指接口与micro:bit完全兼容。特别是5X5智能控制LED光源,控制电路和RGB芯片集成在5050个组件的包中。级联端口传输信号单线。三种原色的每个像素都可以实现256亮度显示,完成16777216彩色全彩色显示,扫描频率不低于400Hz/s。配合webduino平台,可以实现炫酷的展示效果。
硬件接口
GPIO PIN针定义
BPI:bit金手指GPIO定义与micro:bit兼容. 可以使用micro:bit的GPIO扩展板配件。
BPI:bit 金手指接口定义 | |||||
Pin Name | Analog Function1 | Analog Function2 | Function1 | Function2 | Power |
P3 | ADC2_CH4 | GPIO13 | |||
P0 | ADC2_CH8 | DAC_1 | GPIO25 | ||
P4 | ADC2_CH3 | GPIO16 | |||
P5 | ADC1_CH7 | GPIO35 | |||
P6 | ADC2_CH5 | GPIO12 | |||
P7 | ADC2_CH6 | GPIO14 | |||
P1 | ADC1_CH4 | GPIO32 | |||
P8 | GPIO16 | ||||
P9 | GPIO17 | ||||
P10 | ADC2_CH9 | DAC_2 | GPIO26 | ||
P11 | ADC2_CH7 | GPIO27 | |||
P12 | ADC2_CH2 | GPIO02 | |||
P2 | ADC1_CH5 | GPIO33 | |||
P13 | GPIO18 | SPI_SS | |||
P14 | GPIO19 | SPI_SCK | |||
P15 | GPIO23 | SPI_MISO | |||
P16 | GPIO05 | SPI_MOSI | |||
3V3 | POWER:3V3 | ||||
3V3 | POWER:3V3 | ||||
3V3 | POWER:3V3 | ||||
P19 | GPIO22 | I2C_SCL | |||
P20 | GPIO21 | I2C_SDA | |||
GND | GROUND | ||||
GND | GROUND | ||||
GND | GROUND |
5*5 25全彩LED灯
BPI:bit 有25颗全彩LEDs灯, 并且能用单GPIO控制.三种原色的每个像素都可以实现256亮度显示,完成16777216彩色全彩色显示,扫描频率不低于400Hz/s
25 5*5 LED list of BPI:bit | ||||
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 |
MPU9250 9轴传感器
BPI:bit集成了九轴传感器:MPU-9250, 使用I2C 接口控制,控制地址为:0x69 .
MPU-9250 9轴是3个独立的三轴传感器的组合。有关此芯片的更详细信息请下载规格书MPU 9250 规格书
BPI-BIT MPU9250 代码及使用方法请参考 : https://github.com/BPI-STEAM/MPU9250
BPI:bit 供电
当您使用BPI:bit时,必须先给BPI:bit供电,BPI:bit支持三种供电方式:
- 1.micro USB :使用micro USB线供电,BPI:bit 设计有micro USB 供电口,在日常生活中很常见,使用起来也很方便
- 2.电池供电:通过2针电池电源插座,可以通过锂电池,电池,电源板,接口防误操作的设计,不用担心电源通过2针电池电源插座,可以通过锂电池,电池,电源板,接口防误操作的设计,不必担心电力供应满足问题。
- 3.金手指GPIO供电:在板子底部的金手指则包含电源接口。同时,它具有输入和输出功能,具有较高的兼容性。
BPI:bit,掌控板与 micro:bit 比较表
bpi:bit ,掌控板与micro:bit比较 | |||||||
型号名 | bpi:bit | 掌控板 | micro:bit | ||||
主控 | ESP32 Dual-core 32bit Xtensa LX6, up to 240MHz | ESP32 Dual-core 32bit Xtensa LX6, up to 240MHz | NXP KL26Z 32bit ARM Cortex M0, up to 16MHz | ||||
RAM | 520 KB | 520KB | 16 KB | ||||
ROM | 448 KB | 448 | Unkown | ||||
Flash | 4096 KB | 4096 KB | 256 KB | ||||
蓝牙 | BT4.2 BR/EDR and BLE | BT4.2 BR/EDR and BLE | BLE only | ||||
WIFI无线 | 802.11 b/g/n/e/i | 802.11 b/g/n/e/i | N/A | ||||
蜂鸣器 | 1x 板载蜂鸣器 | 1x 板载蜂鸣器 | N/A | ||||
5*5 LED 灯 | 25 智能控制全彩(16777216色)led灯,单GPIO控制 | 1.3英寸OLED显示屏 | 25 个单色灯(红色) | ||||
光敏传感器 | 2 个独立光敏传感器 | 光线传感器 | LED灯支持的基本亮度检测 | ||||
温度传感器 | 1个独立的温度传感器 | 无 | 仅仅有CPU运行温度指示 | ||||
运动传感器 | MPU-9250 九轴运动跟踪:三轴加速度计,三轴磁强计,三轴陀螺仪 | 三轴加速度计MSA300,测量范围:±2G | 3-轴加速计;使用硬件磁强计;没有陀螺仪,没有运动处理器 | ||||
IO 控制介面 | 金手指介面(兼容micro:bit配件) | 金手指介面 | 金手指介面 | ||||
按键 | 2 个可编程按键 | 2个物理按键(A/B) | 2 个可编程按键 | ||||
micro USB | 1x micro USB(UART) | Micro USB | 1 x micro USB(Mass Storage Device) | ||||
软件支持 | Webduino, Arduino, MicroPython, Scratch X | Arduino, MicroPython, Scratch X | Microsoft MakeCode, MicroPython, Scratch X | ||||
尺寸 | 5*5 厘米 | 5*4 厘米 | 5*4 厘米 |
软件
BPI:bit 软件开发规划表与支持应用:
Webduino 软件支持
Webduino STEAM 教育项目
Webduino = WebComponents + Arduino
BPI:bit Webduino 开发
如何使用 :Use BPI:bit with webduino
webduino 参考教程
- BPI:bit 通过在左右两边嵌入Webduino位的光敏电阻,很容易判断手势来自哪一边
- 使用Webduino位九轴传感器+全彩色点阵,简单实现~ ^ _ ^有趣的效果
Arduino 开发
- Arduino IDE & PlatformIO
- BPI:bit arduino IDE 开发github代码:https://github.com/BPI-STEAM/BPI-BIT-Arduino-IDE
- BPI:bit arduino IDE 开发在线文档:https://github.com/BPI-STEAM/BPI-BIT-Arduino-IDE/wiki
- BPI:bit Arduino 入门与开发,国全老师整理的教材与视频教学:https://forum.banana-pi.org.cn/t/topic/3035
测试例程
MicroPyhton 开发
BPI:bit 已经完整支持microPyton。固件、开发环境、代码与 wiki 文档已经整理到:
https://github.com/BPI-STEAM/BPI-BIT-MicroPython/wiki
功能提供
- 1. 提供 终端命令行操作工具
- 2. 提供 有线或无线操作板子
- 3. 提供 Pycharm IDE 开发
- 4. 提供 Microbit 函数库
我们现在在测试所有micro:bit 在线文档的例子,我们已经可以让BPI:bit 兼容micro:bit库,这样,microPyton对micro:bit的支持,可以直接在BPI:bit上运行。
下面就是BPI;bit运行:运行:https://microbit-micropython.readthedocs.io/en/latest/tutorials/hello.html 代码的 代码的效果。直接可以用。
更多板子示例可以参考以下网址
microbit 在线文档:https://microbit-micropython.readthedocs.io/en/latest/tutorials/introduction.html
microbit 在线仿真器 :http://www.micropython.org.cn/pye/editor-en.html
Scratch 支持与开发
资料与资源
- BPI:bit 用户手册l
- BPI:bit V1.4 schematic diagram
- BPI:bit V1.2 schematic diagram
- BPI:bit dxf 结构文件
- BPI:bit 3D 设计文件
- BPI:bit Webduino Easy How-To's Episode 1: Initial Setup : https://www.youtube.com/watch?v=23_a27N3_7k
- How to Program Esp32 with Arduino IDE with C++ : https://technicalustad.com/program-esp32-with-arduino-ide-with-c/
- BPI:bit CE FCC RoHS 产品认证:http://forum.banana-pi.org/t/banana-pi-bpi-bit-ce-fcc-rohs-certification/7363
- BPI:bit platformio official support :https://docs.platformio.org/en/latest/boards/espressif32/bpi-bit.html
- BPI:bit for webduino 黄文玉老师教程(TaiWan): https://sites.google.com/site/wenyuwebbit/
- BPI:bit for webduino 陈致中老师教程(TaiWan):https://sites.google.com/a/tssh.ntpc.edu.tw/chenlung/webduino-bit