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

From Banana Pi Wiki
Jump to: navigation, search
(资料与资源)
(Blanked the page)
Line 1: Line 1:
[[en:BPI-Bit]]
 
  
= BPI:bit 开发板介绍=
 
 
[[File:Webduino_gif.gif|thumb|Overview: BPI:bit]]
 
[[File:ESP32_6.JPG|thumb|[[BPI-UNO32]] with ESP32 design]]
 
[[File:Webduino_bit_1.JPG|thumb|Overview: BPI:bit]]
 
[[File:BPi_bit_webduino_3.jpg|thumb|Overview: BPI:bit for Webduino]]
 
[[File:BPI_bit_acrylic_shell_1_.JPG|thumb|[[BPI-bit acrylic shell compatible LEGO bricks]]]]
 
[[File:Bpi_bit_gpio_expansion_board_2.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:Original.jpg|thumb|[[BPI:bit MoonCar 登月小车]]]]
 
 
'''BPI bit''' (又可以叫'''BPI-bit'''和'''bpi:bit'''). 支持Webduino, Arduino, MicroPython ,和Scratch X 编程环境 ,专注在STEAM教育领域
 
 
[[File:A_BPI-Bit.jpg]]
 
 
BPI:bit 主要功能介绍
 
 
[[File:Webduino_web_ch_1.png]]
 
 
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)
 
 
{| class="wikitable"
 
|-
 
| 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
 
|-
 
|九轴传感器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平台,可以实现炫酷的展示效果。
 
 
==硬件接口==
 
 
[[File:Bpi_bit_接口图.JPG]]
 
 
==GPIO PIN针定义==
 
 
BPI:bit金手指GPIO定义与micro:bit兼容. 可以使用micro:bit的GPIO扩展板配件。
 
 
[[File:Bpi_bit_gpio_detail-05.jpg]]
 
 
{| class="wikitable"
 
|-
 
| style="background: PaleTurquoise; color: black" colspan="4"| '''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
 
{| class="wikitable"
 
|-
 
| style="background: PaleTurquoise; color: black" colspan="4"| ''' 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个独立的三轴传感器的组合。有关此芯片的更详细信息请下载规格书[https://github.com/yelvlab/BPI-BIT/blob/master/doc/MPU-9250A-01-v1.1.pdf 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 比较表==
 
 
{| class="wikitable"
 
|-
 
| style="background: PaleTurquoise; color: black" colspan="8"| ''' 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)
 
|-
 
|软件支持||[http://www.webduino.com.cn Webduino], Arduino, MicroPython, Scratch X|| Arduino, MicroPython, Scratch X || Microsoft MakeCode, MicroPython, Scratch X
 
|-
 
|尺寸||5*5 厘米||5*4 厘米||5*4 厘米
 
|-
 
|}
 
 
= 软件 =
 
BPI:bit 软件开发规划表与支持应用:
 
 
[[File:BPI_bit_map_wiki.png]]
 
 
== Webduino 软件支持 ==
 
===Webduino STEAM 教育项目===
 
[http://www.webduino.com.cn/site/en/index.html Webduino ]= [http://webcomponents.org WebComponents] + [http://arduino.cc Arduino]
 
 
[[File:Webduino.png]]
 
 
*[https://drive.google.com/file/d/1V3k5p9DCj_jcsmSk4ffbPlO3MNpBGvnB/view?usp=sharing Webduino introduce (Public)-en.pdf]
 
*[https://drive.google.com/file/d/1-BH_AYh7fbwwMwVeYzMEeA_GOmTxn_KD/view?usp=sharing Webduino 介绍(公开)-中文.pdf]
 
 
===BPI:bit Webduino 开发===
 
 
如何使用 :[[Use BPI:bit with webduino]]
 
 
===webduino 参考教程===
 
 
*BPI:bit 通过在左右两边嵌入Webduino位的光敏电阻,很容易判断手势来自哪一边
 
::code link:https://bit.ly/2lFNeYL
 
::demo : https://www.facebook.com/oxxo.studio/videos/10216710024566280/?t=9
 
 
*使用Webduino位九轴传感器+全彩色点阵,简单实现~ ^ _ ^有趣的效果
 
::code link: https://bit.ly/2MAhHTF
 
::demo : https://www.facebook.com/oxxo.studio/videos/10216709482752735/?t=20
 
 
==Arduino 开发==
 
 
*[[How to use 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
 
 
===测试例程===
 
 
*[[MPU9250 sample code]]
 
 
==MicroPyhton 开发==
 
 
[[File:Mircopython.png]]
 
 
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
 
 
*[https://github.com/BPI-STEAM/BPI-BIT-MicroPython/wiki Github Wiki Chinese]
 
 
==Scratch 支持与开发==
 
 
*[https://github.com/BPI-STEAM/BPI-BIT-Scratch Base MicroPyhton Scratch]
 
 
=资料与资源=
 
*[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
 
*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
 
 
==Github 源代码==
 
 
*[https://github.com/webduinoio Webduino github]
 
 
*[https://github.com/BPI-STEAM bpi:bit open soruce github]
 
 
==参考链接==
 
 
 
*[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.espressif.com/products/hardware/esp32/resources Espressif ESP32 资源列表]
 
*[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 九轴传感器规格书]
 
*[https://github.com/BPI-STEAM/BPI-BIT/tree/master/doc 更多其他文档]
 
*[http://webuino.io 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://www.facebook.com/groups/1618158071553661 Facebook group ]
 
* webduino 官方QQ技术交流群 : 751187356
 
*[https://maker.pro/[[Maker Pro]]]
 

Revision as of 18:29, 28 November 2019