Arduino는 전자 공학으로 시작했을 때 많은 애호가 (저를 포함)와 엔지니어를위한 첫 번째 보드였습니다. 그러나 우리가 더 많은 것을 구축하고 깊이 파고 들면 곧 Arduino가 산업 준비가되지 않았고, 엄청나게 느린 클럭을 가진 8 비트 CPU가 프로젝트에 충분한 주스를 제공하지 않는다는 것을 곧 알게 될 것입니다. 하지만 32 비트 CPU 및 ARM Cortex M3 아키텍처로 Arduino를 쉽게 능가 할 수 있는 새로운 STM32F103C8T6 STM32 개발 보드 (Blue Pill) 가 현재 시장에 출시되기를 바랍니다. 여기에 또 다른 허니팟은 STM32 보드를 프로그래밍 하기 위해 동일한 이전 Arduino IDE를 사용할 수 있다는 것 입니다. 이 튜토리얼 에서 STM32를 시작 하겠습니다. 이 보드에 대한 약간의 기본 사항을 알고 Arduino IDE를 사용하여 온보드 LED 를 깜박 입니다.
이 튜토리얼에 사용 된 STM32 Blue 알약 보드 외에도 STM32 Nucleo 개발 보드 와 같은 다른 인기있는 STM32 보드가 많이 있습니다. 관심이 있으시면 STM32 Nucleo 64 보드에 대한 리뷰를 확인하고 STM32 CubeMX 및 True studio를 사용하여 보드를 사용하고 프로그래밍하는 방법을 배우고 싶다면 STM32 Nucelo64 시작에 대한 자습서를 확인하십시오.
필요한 재료
- STM32 – (BluePill) 개발 보드 (STM32F103C8T6)
- FTDI 프로그래머
- 브레드 보드
- 전선 연결
- 인터넷이 연결된 노트북
STM32 (Blue Pill) 보드 소개
Blue Pill이라고도 하는 STM32 보드 는 ARM Cortex M3 마이크로 컨트롤러 용 개발 보드입니다. Arduino Nano와 매우 비슷해 보이지만 상당히 강력한 기능을 제공합니다. 개발 보드는 아래와 같습니다.
이 보드는 공식 Arduino 보드에 비해 매우 저렴하며 하드웨어도 오픈 소스 입니다. 그 위에있는 마이크로 컨트롤러 는 STMicroelectronics 의 STM32F103C8T6 입니다. 마이크로 컨트롤러와 는 별도로 보드에는 2 개의 크리스털 발진기 (하나는 8MHz 크리스털이고 다른 하나는 32KHz 크리스털로 내부 RTC (실시간 클록)를 구동하는 데 사용할 수 있음)가 있습니다. 이로 인해 MCU는 딥 슬립 모드에서 작동 할 수 있으므로 배터리로 작동하는 애플리케이션에 이상적입니다.
MCU는 3.3V에서 작동하기 때문에 보드 에는 MCU에 전원을 공급 하기위한 5V ~ 3.3V 전압 조정기 IC도 있습니다. MCU가 3.3V에서 작동하더라도 대부분의 GPIO 핀은 5V를 허용합니다. MCU의 핀은 깔끔하게 빼내어 헤더 핀으로 표시됩니다. 또한 2 개의 온보드 LED가 있는데, 하나 (빨간색)는 전원 표시에 사용되고 다른 하나 (녹색)는 GPIO 핀 PC13에 연결됩니다. 또한 프로그래밍 모드와 작동 모드간에 MCU 부팅 모드를 전환하는 데 사용할 수있는 두 개의 헤더 핀 이 있습니다.이 튜토리얼의 뒷부분에서 이에 대해 자세히 알아 봅니다.
이제이 보드가 왜 "파란 알약"이라고 불리는 지 궁금해하는 사람은 거의 없을 것입니다. 진지하게 잘 모르겠습니다. 보드가 파란색이고 프로젝트에 성능을 향상시킬 수 있기 때문일 수 있습니다. 이것은 단지 가정 일 뿐이며 백업 할 소스가 없습니다.
STM32F103C8T6 사양
ARM 코어 텍스 M3 STM32F103C8 마이크로 컨트롤러는 블루 알약 보드에 사용됩니다. "Blue Pill"이라는 이름과 달리 마이크로 컨트롤러 이름 STM32F103C8T6은 그 뒤에 의미가 있습니다.
- STM»은 제조업체 이름 STMicroelectronics를 나타냅니다.
- 32»32 비트 ARM 아키텍처를 나타냅니다.
- F103»아키텍처 ARM Cortex M3
- C»48 핀
- 8»64KB 플래시 메모리
- T»패키지 유형은 LQFP입니다.
- 6»작동 온도 -40 ° C ~ + 85 ° C
이제이 마이크로 컨트롤러의 사양을 살펴 보겠습니다.
아키텍처: 32 비트 ARM Cortex M3
작동 전압: 2.7V ~ 3.6V
CPU 주파수: 72MHz
GPIO 핀 수: 37
PWM 핀 수: 12
아날로그 입력 핀: 10 (12 비트)
USART 주변기기: 3
I2C 주변기기: 2
SPI 주변기기: 2
2.0 주변 장치: 1
타이머: 3 (16 비트), 1 (PWM)
플래시 메모리: 64KB
램: 20kB
알고 싶다면