BMduino-UNO BM53A367A 是 Holtek 32-bit MCU HT32F52367 的开发板,特别设计成与 Arduino UNO R3 开发板引脚相容,可支援 Arduino IDE 和 Keil IDE,帮助初学者更容易地学习程序设计。
我们使用cookie来使您的体验更好。 为了遵守新的e-隐私指令,我们需要问您同意设置的cookie。 了解更多。
清明节假期为 4 月 3 日至 4 月 6 日,连假期间不上班,4 月 1 日 下午 15:00 后的订单将于 4 月 7 日处理。
BMduino-UNO BM53A367A 是 Holtek 32-bit MCU HT32F52367 的开发板,特别设计成与 Arduino UNO R3 开发板引脚相容,可支援 Arduino IDE 和 Keil IDE,帮助初学者更容易地学习程序设计。
BM53A367A 采用 3.3V 系列 Cortex®-M0+ 内核的 HT32F52367 为主控 MCU,支援多种供电方式,具备额外的 I2C、SPI、UART、USB 等常用通信接口。
与 Arduino UNO R3 引脚相容
BMduino-UNO BM53A367A 的引脚与 Arduino UNO R3 相容,电压准位为 3.3V (Arduino UNO R3 则为 5V)。
除了标准的 Arduino UNO R3 引脚之外,BM53A367A 另提供 BMCOM1 及 BMCOM2 两个连接器,并贴心地设计用跳帽设定连接器的电压准位为 3.3V 或 5V。
板上自带有电压转换电路,让您在外接使用 5V 电压的模块时,可以直接连接 BMCOM,不须担心电压转换的问题。
烧录方式
BM53A367A 开发板上自带有 e-Link32 Lite 电路,可用来除错及烧录,因此 BM53A367A 烧录程序时不须使用 TX 及 RX 引脚 (Arduino UNO R3 则需使用)。 Arduino UNO R3 上的 6-pin ICSP 连接器,在 BM53A367A 上则不需要有 ICSP 的功能,因此 BM53A367A 将此 6-pin 连接器设计成为另一组 SPI/UART 接口,其电压准位也可用跳帽选择 3.3V 或 5V,外接 5V 的模块时不需额外的电压转换电路。
开发环境
除了在 Arduino IDE 开发环境下工作,BM53A367A 也可工作于 Keil IDE 开发环境,其使用方式与 ESK32-30510,HT32F52367 开发套件相同。
什么是 BMCOM?
BMCOM 是一个由 I2C/UART 模块所组成的生态系统,其中包括传感器、执行器、显示器和无线模块等,可以加速原型设计。
BMCOM 连接器有两种型式:BMCOM1 是 2.54mm 间距的 5 针接头,而 BMCOM2 是 1mm 间距的 5 针 JST 连接器。
开发板 | BMduino-UNO BM53A367A | Arduino UNO R3 |
核心 | 32-bit Cortex M0+,60MHz | 8-bit AVR®,16MHz |
Flash / EEPROM / SRAM | 256KB / 4KB / 32KB | 32KB / 1KB / 2KB |
工作电压 | 3.3V | 5V |
通信接口 | I2C、SPI、UART、USB | I2C、SPI、UART |
连接器 | BMCOM1、BMCOM2 | - |
开发环境 | Arduino、Keil | Arduino |
I/O 驱动电流 | 16mA | 20mA |
网路上有许多开源的 Arduino 程序库,使用程序库可以节省我们开发专案的时间。然而 Arduino 程序库是可以设计为指定在哪一种 MCU 架构上执行,例如:为 avr 架构的 MCU 所写的 Arduino 程序库,BM53A367A 可能就无法使用 (编译过程会失败)。
在 Arduino 程序库目录里的 library.properties 档案内容中,有一行 architecture= 的指令是用来指定在哪一种 MCU 架构上执行,例如:architecture=* 代表该 Arduino 程序库可在每一种 MCU 架构上执行,architecture=avr 代表该程序库仅能在 avr 架构的 MCU 上执行。
然而,我们实际测试的结果是有极少部分例外的,例如:宣告 architecture=avr,但 BM53A367A 执行起来是没有问题的 (例如 LiquidCrystal_I2C.h),或是宣告 architecture=* 但 BM53A367A 编译过程却有 error。
我们建议使用者在选择第三方 Arduino Library 时,可依照以下步骤进行:
在使用 WS2812B 灯条时,最常见的 Arduino 程序库应为 Adafruit NeoPixel。
然而,由于 BMduino-UNO 与 Arduino UNO 使用的 MCU 不同,生成 WS2812B 灯条驱动波形的底层程序码有所差异,因此 BMduino-UNO 开发板无法与 Adafruit NeoPixel 程式库相容。
针对此问题,我们开发了 BMduino_WS2812 程序库 (您可在「文件」页签中下载此档案),以便使用者轻松调用。
BMduino_WS2812 程式库处理了 WS2812B 灯条的底层时序问题,使用时与 Adafruit NeoPixel 程序库类似,需要设定 LED 灯珠数量及输出 LED 数据的引脚。
请参考以下的程序范例:
#include <BMduino_WS2812.h>
#define LED_PIN 6
#define LED_COUNT 10
BMduino_WS2812 myWS2812(LED_COUNT, LED_PIN);
由于 BMduino-UNO 开发板的电压准位为 3.3V,因此使用 BMduino UNO 开发板的 I/O 引脚连接 WS2812B 灯条的 DIN 引脚时,WS2812B 灯条的 VDD 引脚需接至 3.3 V,而非 5V。
或是您也可以将 WS2812B 灯条接上 BMduino-UNO 开发板的 BMCOM 连接器,并使用跳帽将电压设为 5V,如此一来 WS2812B 灯条即可在 5V 电压下运行。
HS Code (仅供参考) | 9030.90.90.00-8 |
---|