Difference between revisions of "Microduino-Module CoreSTM32"

From Microduino Wiki
Jump to: navigation, search
(Created page with "{{Language|Microduino-CoreSTM32}} {| style="width: 800px;" |- | 400px|thumb|right|Microduino-Core '''Microduino-CoreSTM32''' is one of ...")
 
 
(31 intermediate revisions by 5 users not shown)
Line 3: Line 3:
 
|-
 
|-
 
|
 
|
[[file:Microduino-core -rect.jpg|400px|thumb|right|Microduino-Core]]
+
[[file:Microduino- CoreSTM32 -rect.jpg|400px|thumb|right|Microduino- CoreSTM32]]
 
+
Microduino-CoreSTM32 is one of the core modules of Microduino, adopting ARM development board of STM32F103CBT6 chip. '''[[Microduino-CoreSTM32]]''' is a open-source software, compatible with [http://leaflabs.com/docs/hardware/maple-mini.html Maple Mini], and it can be used together with Microduino extension modules and other electronic components, modules, and sensors to make many funny interactive works.  
'''[[Microduino-CoreSTM32]]''' is one of core modules of Microduino series, '''[[Microduino-CoreSTM32]]''' is an open source hardware and [http://leaflabs.com/docs/hardware/maple-mini.html Maple Mini] compatible. It is an 32-bit ARM Cortex-M3 development board, based on STMicroelectronics' STM32F103CBT6 chip.
 
 
 
  
 
==Features==
 
==Features==
* Small, Stackable, Strong
+
* Small, cheap, stackable, and open;
* Open source hardware, using the same development environment as Arduino IDE
+
* Open source hardware circuit design and programming development environment similar to Arduino.
* Using the U-Shape 27-pin interface (UPin-27), the standard interface of Microduino series
+
* Microduino-CoreSTM32 can be downloaded with [http://static.leaflabs.com/pub/leaflabs/maple-bootloader/maple_mini_boot.bin bootloader] through Microduino-USBTTL;
 
+
*With an uniform Microduino interface standard and rich peripheral modules, it can be easily connected with other Microduino modules and sensors.
Microduino modules and sensors can be easily stacked and extended through it
+
*2.54mm-spacing female connector interface,which makes it easy to integrate to the pegboard. 
* Delivered ready to plug in.
 
* 2.54mm (0.1 inch) pin pitch, compatible to bread board and hole board
 
 
 
 
|-
 
|-
 
|
 
|
==Specifications==
 
* Microcontroller: STM32F103CBT6
 
* Speed: 72MHz
 
* Operating Voltage: 5V
 
* Core Voltage: 3.3V
 
* Flash: 128KB
 
* SRAM:  20KB
 
* Digital I/O Pins: 14 (of which 6 provide PWM output with D3,D5,D6,D9,D10 and D11)
 
* Analog Input Pins: 8 (2 more comparing to Arduino Uno)
 
* DC Current per I/O Pin: 40 mA
 
* DC Current:  50 mA
 
* Serial: 0 (RX) and 1 (TX). Used to receive (RX) and transmit (TX) TTL serial data.
 
* External Interrupts: 2 and 3. These pins can be configured to trigger an interrupt on a low value, a rising or falling edge, or a change in value. See the attachInterrupt() function for details.
 
* PWM: 3, 5, 6, 9, 10, and 11. Provide 8-bit PWM output with the analogWrite() function.
 
* SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). These pins support SPI communication using the SPI
 
  
library.
+
==Specification==
* TWI: A4 or SDA pin and A5 or SCL pin. Support TWI communication using the Wire library.
+
===Electrical Specification===
* AREF. Reference voltage for the analog inputs. Used with analogReference().
+
*Microcontroller: STM32F103CBT6
* Flash Memory 32 KB (ATmega328P) of which 0.5 KB used by bootloader
+
*Frequency: 72MHz
* SRAM 2 KB (ATmega328P)
+
*Operation voltage: 5V
* EEPROM 1 KB (ATmega328P)
+
*Core voltage: 3.3V
* Clock Speed 16MHz(5V) / 8Mhz(3.3V)
+
*Flash: 128KB
 +
*SRAM: 20KB
  
 +
===Pin Specification ===
 +
*Digital I/O pin:
 +
0,1,2,3,4,5,6,7,8,9,10,11,12,13,14(A0),15(A1),16(A2),17(A3),18(SDA),19(SCL),20(A6),21(A7)
 +
*Analog input pin:
 +
A0(ADC12_IN0), A1(ADC12_IN1), A2(ADC12_IN2), A3(ADC12_IN3), 10(ADC12_IN4), 13(ADC12_IN5), 12(ADC12_IN6), 11(ADC12_IN7), A6(ADC12_IN8), A7(ADC12_IN9)
 +
*Serial port:
 +
**Serial RX0 and TX1, used for receiving(RX) and sending(TX) TTL serial data.
 +
**Serial1 D2(RX3)and D3(TX3), used for receiving(RX) and sending(TX) TTL serial data. 
 +
*Hardware PWM: 0, 1, 4, 11, 12, 14(A0), 15(A1), 16(A2), 17(A3), 18(SDA), 19(SCL), 20(A6), 21(A7)
 +
*SPI: D10(SPI1_NSS), D11(SPI1_MOSI), D12(SPI1_MISO), D13(SPI1_SCK);
 +
*IIC: 18(SDA), 19(SCL);
 +
*Each I/O port has interruption function. 
  
|-
+
:[[file:Microduino-Core STM-PinoutBig.png|800px|thumb|center|Microduino-Core STM-Pinout]]
|
+
:[[file:Microduino-Core STM-Pinout1Big.png|800px|thumb|center|Microduino-Core STM-Pinout]]
 +
:[[file:Microduino-Core STM-Pinout2Big.png|800px|thumb|center|Microduino-Core STM-Pinout]]
  
 
==Documents==
 
==Documents==
* '''[[Microduino-Core]]''' Eagle source file 【'''[[media:Microduino-Core.zip|download]]'''】
+
*Main components used in Microduino- CoreSTM32
* '''[[Microduino-Core]]''' main chips and devices
+
** MCU: '''[[media: STM32F103CBT6.pdf| STM32F103CBT6]]'''
** MCU: '''[[media:ATmega168PA328P.pdf|ATmega168PA/328P]]'''
+
**Schematic diagram: [[media:Microduino-CoreSTM32.zip| Microduino-CoreSTM32]]'''
|-
 
|
 
  
 
==Development==
 
==Development==
* Microduino Arduino IDE Configuration
+
===Set up the Microduino-CoreSTM32 development environment(1)===
** 1. Install Arduino IDE: Microduino use the same IDE as Arduino, please download Arduino IDE from 【'''[http://arduino.cc/en/Main/Software Arduino IDE official]'''】 and install it in your disk. (if you already have it, just skip this step). Please check Arduino IDE details from 【'''[http://arduino.cc/en/Reference/HomePage Reference]'''】 and 【'''[http://arduino.cc/en/Tutorial/HomePage Workshop]'''】.  
+
* Use the Maple IDE development environment: Microduino use the similar development environment with the Arduino IDE, so you can use the Maple IDE, Flash or Processing and so on. Combining with other Microduino modules, you can make many interesting interactive works..
** 2. Patch Microduino package: Please download Microduino package for Arduino IDE from 【'''[[media:Microduino-hardware.zip|download]]'''】, and unzip is to {Your Arduino Install Driectory}/hardware directory.
+
*Configure the Maple IDE, please refer to '''[[Microduino-CoreSTM32 Maple Drive Install]]'''
** Microduino Arduino IDE Reference workshop: 【'''[[Arduino IDE Microduino Configuration]]'''】.
+
*TO download programs to Microduino-CoreSTM32, just use the USB interface of Microduino-CoreSTM32, without [[Microduino-USBTTL]], which is only used when programming bootLoader. There is bootloader, by default, so you don't have to program it.
** 3. Programming: To upload program to Microduino-Core/Core+ through Arduino IDE, designers are recommended to use '''[[Microduino-FT232R]]''' module.
 
** 4. Enjoy your Microduino journey!
 
  
* Burn Microduino BootLoader
+
===Program for Microduino-CoreSTM32===
** Bootloader burning is necessary if designers want to update Microduino-Core/Core+ firmware by themselves, designers can leaverage Arduino Uno or another burned Microduino-Core/Core+ to make a new one.
+
 
** Microduino bootloader workshop: 【'''[[Burn Bootloader to Microduino-Core/Core+ with an Arduino]]'''】.
+
*Make sure installed the Microduino-CoreSTM32 derive
** Bootloader is specified for different Microduino-Core/Core+ configurations, correct one must be selected during burning.
+
*Prepared hardware:Microduino-CoreSTM32, USB cable
** Initial bootloader is designed for ATmegaX8 series optiboot, which occupies only 512 bytes flash.
+
*Prepared software:Maple IDE
|-
+
'''[[The beginning of Micoduino-CoreSTM32]]'''
|
+
 
 +
===Set Microduino-CoreSTM32 Development Environment(2)===
 +
*Use Keil uVision development environment: To develop Microduino-CoreSTM3, software keil can also be used. This environment can not only use C language, but also assembly language to program. And it has accessible integration environment, and powerful software simulation debugging tolls. Keil provides a complete development plan, including C compiler, microassembler, exoskeleton, library manager, and a powerful simulation debugger, which are combined together by an integration development environment(μVision.
 +
*To configure Keil uVision development environment, please refer to '''[[Configuration of Microduino-CoreSTM32 Keil development environment]]'''
 +
*To download programs to Microduino-CoreSTM32, you can directly use the USB interface of Microduino-CoreSTM32. And to execute online breakpoint debugging, another module Microduino-CoreSTMDEBUGE is needed, namely stlink.And you can stack the two modules and connect them through the USB interface of Microduino-CoreSTMDEBUGE to the computer to download programs.  
 +
 
 +
===Program Microduino-CoreSTM32(2)===
 +
 
 +
*Please make sure that you have installed STLINK driver.
 +
*Required hardware: Microduino-CoreSTM32, Microduino-CoreSTMDEBUGE, and a USB cable.  
 +
*Requires software: Keil uVision5
 +
'''[[STM32 Keil development environment experiment]]'''
 +
 
 +
===Burn the Microduino- CoreSTM32  BootLoader===
  
==Applications==
+
*If you got a Microduino-CoreSTM32 board without the bootloader, you have to use the Microduino-CoreUSB to burn the bootloader firstly, please refers to '''[[Use the Microduino-USBTTL to burn bootloader for Microduino- CoreSTM32]]'''.
* room-Microduino
 
* obdii-Microduino
 
* pilot-Microduino
 
* green-Microduino
 
* music-Microduino
 
|-
 
|
 
  
==Buy==
+
==Applicaion==
* Buy '''[http://www.microduino.cc/Modules/Microdoino%20Core%20Modules/Microdoino-Core Microduino-Core]'''
+
[[Microduino CoreSTM32 Tutorial]]
  
|-
 
|
 
 
==History==
 
==History==
*2012/12/16: Published Microduino-Core patch for Arduino IDE
 
*2012/11/18: Optimized the first formal release, finalized Miroduino-Core configuration
 
*2012/11/06: Beta version.
 
  
|-
+
==Picture==
|
 
==Pictures==
 
:[[file:Microduino-Core-t.JPG|thumb|600px|center|Microduino-core Front]]
 
<br style="clear: left"/>
 
:[[file:Microduino-Core-b.JPG|thumb|600px|center|Microduino-core Back]]
 
<br style="clear: left"/>
 
:[[file:Microduino-Core-3d.jpg|thumb|600px|center|Microduino-core 3D model]]
 
<br style="clear: left"/>
 
:[[file:Microduino-Core-Upin27.jpg|thumb|600px|center|Microduino-core Upin27 model]]
 
<br style="clear: left"/>
 
 
|}
 
|}

Latest revision as of 03:50, 4 August 2017

Language: English  • 中文
Microduino- CoreSTM32

Microduino-CoreSTM32 is one of the core modules of Microduino, adopting ARM development board of STM32F103CBT6 chip. Microduino-CoreSTM32 is a open-source software, compatible with Maple Mini, and it can be used together with Microduino extension modules and other electronic components, modules, and sensors to make many funny interactive works.

Features

  • Small, cheap, stackable, and open;
  • Open source hardware circuit design and programming development environment similar to Arduino.
  • Microduino-CoreSTM32 can be downloaded with bootloader through Microduino-USBTTL;
  • With an uniform Microduino interface standard and rich peripheral modules, it can be easily connected with other Microduino modules and sensors.
  • 2.54mm-spacing female connector interface,which makes it easy to integrate to the pegboard.

Specification

Electrical Specification

  • Microcontroller: STM32F103CBT6
  • Frequency: 72MHz
  • Operation voltage: 5V
  • Core voltage: 3.3V
  • Flash: 128KB
  • SRAM: 20KB

Pin Specification

  • Digital I/O pin:

0,1,2,3,4,5,6,7,8,9,10,11,12,13,14(A0),15(A1),16(A2),17(A3),18(SDA),19(SCL),20(A6),21(A7)

  • Analog input pin:

A0(ADC12_IN0), A1(ADC12_IN1), A2(ADC12_IN2), A3(ADC12_IN3), 10(ADC12_IN4), 13(ADC12_IN5), 12(ADC12_IN6), 11(ADC12_IN7), A6(ADC12_IN8), A7(ADC12_IN9)

  • Serial port:
    • Serial RX0 and TX1, used for receiving(RX) and sending(TX) TTL serial data.
    • Serial1 D2(RX3)and D3(TX3), used for receiving(RX) and sending(TX) TTL serial data.
  • Hardware PWM: 0, 1, 4, 11, 12, 14(A0), 15(A1), 16(A2), 17(A3), 18(SDA), 19(SCL), 20(A6), 21(A7)
  • SPI: D10(SPI1_NSS), D11(SPI1_MOSI), D12(SPI1_MISO), D13(SPI1_SCK);
  • IIC: 18(SDA), 19(SCL);
  • Each I/O port has interruption function.
Microduino-Core STM-Pinout
Microduino-Core STM-Pinout
Microduino-Core STM-Pinout

Documents

Development

Set up the Microduino-CoreSTM32 development environment(1)

  • Use the Maple IDE development environment: Microduino use the similar development environment with the Arduino IDE, so you can use the Maple IDE, Flash or Processing and so on. Combining with other Microduino modules, you can make many interesting interactive works..
  • Configure the Maple IDE, please refer to Microduino-CoreSTM32 Maple Drive Install
  • TO download programs to Microduino-CoreSTM32, just use the USB interface of Microduino-CoreSTM32, without Microduino-USBTTL, which is only used when programming bootLoader. There is bootloader, by default, so you don't have to program it.

Program for Microduino-CoreSTM32

  • Make sure installed the Microduino-CoreSTM32 derive
  • Prepared hardware:Microduino-CoreSTM32, USB cable
  • Prepared software:Maple IDE

The beginning of Micoduino-CoreSTM32

Set Microduino-CoreSTM32 Development Environment(2)

  • Use Keil uVision development environment: To develop Microduino-CoreSTM3, software keil can also be used. This environment can not only use C language, but also assembly language to program. And it has accessible integration environment, and powerful software simulation debugging tolls. Keil provides a complete development plan, including C compiler, microassembler, exoskeleton, library manager, and a powerful simulation debugger, which are combined together by an integration development environment(μVision.
  • To configure Keil uVision development environment, please refer to Configuration of Microduino-CoreSTM32 Keil development environment
  • To download programs to Microduino-CoreSTM32, you can directly use the USB interface of Microduino-CoreSTM32. And to execute online breakpoint debugging, another module Microduino-CoreSTMDEBUGE is needed, namely stlink.And you can stack the two modules and connect them through the USB interface of Microduino-CoreSTMDEBUGE to the computer to download programs.

Program Microduino-CoreSTM32(2)

  • Please make sure that you have installed STLINK driver.
  • Required hardware: Microduino-CoreSTM32, Microduino-CoreSTMDEBUGE, and a USB cable.
  • Requires software: Keil uVision5

STM32 Keil development environment experiment

Burn the Microduino- CoreSTM32 BootLoader

Applicaion

Microduino CoreSTM32 Tutorial

History

Picture