BMduino-UNO Development Board BM53A367A

1,190.00

The BMduino-UNO BM53A367A is a development board for the Holtek 32-bit MCU HT32F52367. It is specifically designed to be pin-compatible with the Arduino UNO R3 development board, and can support both the Arduino IDE and Keil IDE, making it easier for beginners to learn programming.

HSN Code: 9030.90.90.00-8

6 left in stock
EMI starting from 0.00/month - View Plans
SKU: BM53A367A Category:

Description

DESCRIPTION

The BM53A367A uses the HT32F52367 as its main MCU, which is a 3.3V series Cortex®-M0+ core that supports various power supply methods and has additional commonly used communication interfaces such as I2C, SPI, UART, and USB.

Pin-compatible with Arduino UNO R3

The BMduino-UNO BM53A367A is pin-compatible with the Arduino UNO R3, but operates at a voltage level of 3.3V (while Arduino UNO R3 operates at 5V).
In addition to the standard Arduino UNO R3 pinout, the BM53A367A provides two additional connectors, BMCOM1 and BMCOM2, which can be individually set to operate at either 3.3V or 5V using jumpers.
The board comes with a voltage level shift circuit, so that you can directly connect to BMCOM when using a 5V voltage module, without worrying about voltage conversion.

Programming

The BM53A367A comes with an e-Link32 Lite circuit, which can be used for debugging and programming.
Therefore, the BM53A367A does not need to use TX and RX pins when uploading a sketch (Arduino UNO R3 needs to use them), and does not need the ICSP function.
The 6-pin ICSP connector on the Arduino UNO R3 is designed to be additional SPI/UART interface on the BM53A367A, and its voltage level can also be set to 3.3V or 5V with a jumper, and no additional voltage level shift circuit is required when connecting to a 5V module.

Development environment

In addition to working in the Arduino IDE, the BM53A367A can also work in the Keil IDE development environment, and its usage is the same as that of the ESK32-30510 HT32F52367 starter kit.

What is BMCOM?

BMCOM is an ecosystem consisting of I2C/UART modules, which includes sensors, actuators, displays, and wireless modules, that can accelerate the process of prototype design.
There are two types of BMCOM connectors: BMCOM1 is a 2.54mm pitch, 5-pin header, while BMCOM2 is a 1mm pitch, 5-pin JST connector.

PRODUCT FEATURES
  1. MCU: HT32F52367 (64-pin LQFP package)
    – Cortex®-M0+, 60MHz
    – Flash memory: 256KB
    – SRAM: 32KB
  2. 31 of digital I/O pins (17 of the pins can be used as PWM outputs)
  3. 7 of analog input, A/D converter resolution: 12-bit
  4. 14 of external interrupt
  5. EEPROM: 4KB
  6. Communication interface: UART, SPI, I2C, USB
  7. Power selection: USB interface x 2, DC interface, external Vin
    – e-Link32 Lite USB: type-C USB interface
    – Native USB: type-C USB interface, support BC 1.2 and QC 2.0 fast charging (default: boosting to 12V)
    – DC Jack: DC 5V to 24V, barrel jack to connect to external power, such as adapter
    – External Vin (Vin pin): DC 5V to 24V
  8. Debugger: e-Link32 Lite (ICE), debugging via on-board e-Link32 Lite circuit programming
  9. Programming
    – ICP (In-Circuit Programing), programming via on-board e-Link32 Lite circuit
    – IAP (In Application Programming), programming via COM port (the same as Arduino UNO R3)
  10. Development environment: support Arduino IDE and Keil IDE
  11. Connector:
    – BMCOM1: 2.54mm pitch, support 3V or 5V power
    – BMCOM2: 1.0mm pitch, support 3V or 5V power
    – SPI1: 2.54mm pitch, support 3V or 5V power
  12. Pin-compatible with Arduino UNO R3
  13. Dimension: 54 x 94 x 14 mm
  14. Net weight: 28.5g
  15. Product includes: 1. BM53A367A x 1 | 2. Jumper x 1
HARDWARE OVERVIEW
FULL PINOUT
COMPARING WITH ARDUINO UNO R3
Development board BMduino-UNO BM53A367A Arduino UNO R3
Core 32-bit Cortex M0+, 60MHz 8-bit AVR®, 16MHz
Flash / EEPROM / SRAM 256KB / 4KB / 32KB 32KB / 1KB / 2KB
Operating voltage 3.3V 5V
Communication interface I2C, SPI, UART, USB I2C, SPI, UART
Connector BMCOM1, BMCOM2
Development environment Arduino, Keil Arduino
I/O driver current 16mA 20mA
ABOUT THE COMPATIBILITY OF THIRD-PARTY ARDUINO LIBRARY

There are many open-source Arduino libraries on the Internet, and using the libraries can save us time in developing projects.
However, Arduino libraries can be designed to specify which MCU architecture to execute. For example, Arduino libraries written for AVR MCUs may not be available for BM53A367A (the compilation process will fail).

In the content of the library.properties file in the Arduino library directory, there is a line of “architecture=” command to specify which MCU architecture to execute, for example, architecture=* means that the Arduino library can be executed on each MCU architecture, architecture=avr means that the library can only be executed on MCUs with avr architecture.

However, there are very few exceptions in our test results, such as declaring architecture=avr, but BM53A367A runs without problems (e.g. LiquidCrystal_I2C.h), or declaring architecture=* but BM53A367A has errors in the compilation process.

We recommend that users follow these steps when choosing a third-party Arduino Library:

  1. Select the library that declares architecture=*: Popular components or modules usually have multiple open source Arduino libraries to choose from, choose the library that declares architecture=* to use.
  2. If you can’t find a library that declares architecture=*, you can try to use a library that is not architecture=*. If there is only warning but no error during compilation, you can actually test whether it works correctly, such as the above-mentioned LiquidCrystal_I2C.h

If you can’t find a suitable library, you can develop your library, or contact us if we have a ready-made library.

ABOUT WS2812B RGB LED STRIPS LIBRARY

When using WS2812B RGB LED strips, the most commonly used Arduino library is likely Adafruit NeoPixel.
However, the BMduino-UNO board is not compatible with the Adafruit NeoPixel library. This incompatibility arises because the BMduino-UNO and Arduino UNO use different MCUs, leading to differences in the low-level code that generates the driving waveforms for the WS2812B LED strips.

In response to this issue, we have developed the BMduino_WS2812 library to facilitate users (the library can be downloaded in the ‘Document’ label).
The BMduino_WS2812 library handles the low-level timing for WS2812B LED strips, allowing users to focus on designing lighting effects. It’s similar to the Adafruit NeoPixel library, when using BMduino_WS2812, you need to set the number of LEDs and the pin for sending LED data.

Here is a sample code:


#include <BMduino_WS2812.h>
#define LED_PIN 6
#define LED_COUNT 10
BMduino_WS2812 myWS2812(LED_COUNT, LED_PIN);


Since the BMduino-UNO development board operates at a 3.3V logic level, if you connect the BMduino-UNO’s I/O pin to the DIN pin of the WS2812B LED strip, the VDD pin of the WS2812B LED strip should be connected to 3.3V instead of 5V.
Alternatively, you can connect the WS2812B LED strip to the BMCOM connector on the BMduino-UNO development board and set the voltage to 5V using a jumper. With this setup, the WS2812B LED strip can operate at 5V.

Please note that the BMduino_WS2812 library uses the I/O pins to generate precise timing, it will disable the interrupt function.
RESOURCES
  1. Starter kit: ESK32-30510 HT32F52367 starter kit, including user manual, example program, etc.

Document

BMduino_WS2812

BM53A367A-PCB layout

BM53A367A-schematic V1.0

BM53A367A full pinout (1)

BM53A367A-users guide-en V1.20

Reviews

There are no reviews yet.

Be the first to review “BMduino-UNO Development Board BM53A367A”

Your email address will not be published. Required fields are marked *


X
EMI Options