- 아두이노는 원래 ATMEL사의 Atmega MCU를 기반으로 개발되었지만 사용자가 많아지면서 여러 제조사가 아두이노 IDE 개발 환경을 지원하고 있음

- 개발자는 MCU가 달라지더라도 아두이노 IDE를 사용하면 기개발되어 있는 라이브러리를 사용할 수 있어 디바이스 드라이버 개발 및 검증 시간이 대폭 축소

- STM32duino(Blue Pill)는 STM32F103C8T6 32비트 MCU 탑재 되었으며 아두이노 용으로 개발 되었지만 STM32F1 series 를 저렴하게 테스트 할 수 있음

STM32duino 회로도

 

 

 

 

MCU를 공부 하다보면 ISP와 IAP라는 용어가 보이는데, ARM에서 다음과 같이 정의 한다.

 

- ISP(In-System Programming) : In-System Programming means that the device can be programmed in the circuit by using an utility such as the ULINK USB-JTAG Adapter.

; 특정 Utility(JTAG)를 이용하여 프로그램 하는 방식

 

- IAP(In-Application Programming) : In-Application Programming means that the application itself can re-program the on-chip Flash ROM.

; Flash에 저장된 binary가 실행되고 나서(부팅), application 자신이 Flash ROM에 Re-programming 하는 방식

 

ISP(In-System Programming)

1. ST-LINK를 사용하여 펌웨어 다운로드(ST-LINK Utility)

 

IAP(In-Application Programming)

2. USB 포트를 연결하여 펌웨어 다운로드(DFU)

3. 시리얼 포트를 사용하여 펌웨어 다운로드(Flash Loader Demonstrator)

 

이렇게 나뉠 수 있으며 각 방법으로 Firmware를 다운로드 하는 방법을 알아 본다.

 

1. ST-LINK를 사용하여 펌웨어 다운로드(ST-LINK Utility)

 

2. USB 포트를 연결하여 펌웨어 다운로드(DFU)

- 일부 MCU의 경우 DFU F/W가 있어서 BOOT0 = 1이면 System momory mode로 부팅하여 DFU가 가능한 USB 장치로 인식 된다.

 

3. 시리얼 포트를 사용하여 펌웨어 다운로드(Flash Loader Demonstrator)

- JTAG는 가격이 비싸고 추가 하드웨어 연결이 필요하다. 개발 중에는 모니터링 및 디버그가 필요 하지만 양산 또는 현장에서 Firmware 업데이트가 필요할때 추가 장치가 필요하지 않은 이 방법이 좋다.

 

- MCU가 부팅 될때 BOOT1, BOOT0 핀을 설정하여 Boot mode로 진입

- BOOT1 = 0, BOOT0 = 1 : System memory Boot mode로 진입되는데, 출하 부터 system boot loader가 들어있다. 필요에 따라 boot loader를 수정하여 쓰는 경우도 있다.

- 보통 BOOT1 = 0으로 고정해 놓고 BOOT0만 제어

- BOOT1 = 1 은 잘 사용하지 않음

 

- 시리얼 포트를 사용하기 위한 BOOT1, BOOT0 회로 구성

(2) Flash Loder Demonstrator 실행

 

(3) Serial 통신이 가능한 Com port 선택

 

(4) 상태 확인

 

(5) Device 자동 선택

 

(6) Download to device 선택

 

(7) Download할 file 선택

 

(8) Download

 

(9) Download 완료

 

 

임베디드 개발 환경 구축을 위해서는

1. 코드 편집기

2. 컴파일러

3. 디버깅

이 필요한데, 위의 모든 기능을 가지고 있는 개발 환경을 통합개발환경 : IDE(Integrated Development Environment)라고 함

 

STM32CubeIDE는 TrueSTUDIO에 이은 CubeMX와 연동되는 무료 IDE(Eclipse 기반)

- TruSTUDIO는 19년 2월 v9.3.0 이후로 업데이트가 없음

- ST가 밀어주는 무료 IDE를 사용 권장(+ CubeMX와 통합)

 

- 다운로드

https://www.st.com/en/development-tools/stm32cubeide.html

 

STM32CubeIDE - STMicroelectronics

STM32CubeIDE - Integrated Development Environment for STM32, STM32CubeIDE-RPM, STM32CubeIDE-Lnx, STM32CubeIDE-Win, STM32CubeIDE-DEB, STM32CubeIDE-Mac, STMicroelectronics

www.st.com

 

- 설치 후 실행 화면


- TrueSTUDIO → STM32CubeIDE 변환 중 문제가 생겼는데 프로젝트 파일이 기존과 호환이 되지 않는다.

- 첫 개발이 아니고 Tool change를 하기 위해 STM32CubeIDE를 설치 하였을 경우, workspace 지정시 기존 project가 있는 폴더를 지정하면 TrueSTUDIO로 작성된 project를 그냥 끌고 오는데 그대로 Build 하면 Build가 안되고 아래와 같이 해야 한다.

 

- Project Explorer에서 project 리스트를 다 삭제(디스크에 있는 File은 삭제 하면 안됨)

- File - Import 하여 TruSTUDIO Project 파일을 STM32CubeIDE로 변환

 
- 프로젝트 Import 될때 프로젝트 Properties 까지 자동으로 들어오지 않으니 Properties에 들어가서 설정을 확인해 줘야 함(TrueSTUDIO와 같은 설정인지 ex)FPU, Preprosessor 등)

- 혼자 개발하지 않고 git 등을 이용하여 여럿이 개발 할 경우 개발자 모두가 툴을 변경해야 함

 

- STM32CubeMX

- GENERATE CODE 클릭

 

- ATOLLIC 실행

 

- File - Import...

 

- STM32CubeMX에서 생성한 프로젝트 폴더를 선택 후 Finish

 

- main()에 소스 작성

 

- Hardware 변경 사항이 생기면 STM32CubeMX에서 수정 후 위 내용 반복

 

 

- ST-LINK Utility는 ST-LINK 및 ST-LINK/V2 Hardware Debugger를 위한 Software Tool

- MCU의 메모리 관리(erase, write(program), read(dump)) 외 option byte 관리 등의 작업을 수행

 

1. ST-LINK 설치

https://www.st.com/en/development-tools/stsw-link004.htmlhttps://www.st.com/en/development-tools/stsw-link004.html

 

STSW-LINK004 - STMicroelectronics

STSW-LINK004 - STM32 ST-LINK utility, STSW-LINK004, STMicroelectronics

www.st.com

 

2. ST-LINK 실행

 
 
3. Target - Connect

 

4. Target - Program & Verify ; Download할 file 선택

 

5. Download 완료

 

 

- STM32CubeMX는 STM32 MCU의 Pinout, Peripheral 설정 및 세부 기능 관리, clock tree 설정, Middleware를 포함한 초기 C 코드 프로젝트의 생성과 관리를 지원하는 프로그램

- STM32CubeMX는 Standalone vs Eclipse Plugin 두가지가 있음

- Stadalone은 일반 프로그램 형태이고, Eclipse Plugin은 Eclipse 기반 통합 개발 환경에 Plugin 형태로 사용하는 방식으로 따로 다운로드 할 필요 없이 ATOLLIC에서 Add-on 처럼 설치 가능

 

 

 

 

- ST가 소프트웨어 개발 툴 전문기업 Atollic을 인수

- 상용 통합개발환경(Eclipse 기반 Eclipse 기반 IDE:Integrated Development Environment)인 TrueSTUDIO를 ST제품 고객에게 Open compiler로 제공

 

DOWNLOAD

- Windows 와 Linux version 제공

 

 

 

Arm® Cortex®-M 코어와 EdgeVerse™ 에지 컴퓨팅 플랫폼의 일부를 기반으로 하는 NAT의 혁신적인 장치는 증가하는 성능과 통합으로 업계 판도를 계속 변화시키고 있으며, MCUXpresso 소프트웨어 및 툴과 광범위한 파트너 에코시스템을 포함한 탁월한 지원으로 더욱 보완하고 있습니다.

 

NAT의 새로운 MCX 포트폴리오는 혁신적인 제품 기능, 단순화된 시스템 설계 및 개발자 중심의 경험을 통해 확장성을 제공합니다. 이 포트폴리오는 설계 유연성과 최적의 지원을 위해 포괄적인 주변기기 세트를 통합합니다.

1-1. 제품군

(1) Cortex-M33

- MCX Portfolio

- LPC5500 Series

- i.MX RT600 Series

- i.MX RT500 Series

 

(2) Cortex-M7

- i.MX RT1100 Series

- i.MX RT1000 Series

 

(3) Cortex-M4

- K32 L Series

- Kinetis K Series

- LPC54000 Series

- LPC4300 Series

- LPC4000 Series

 

(4) Cortex-M0/M0+

- K32 L2 Series

- Kinetis L Series

- LPC800 Series

- LPC51U68

- LPC1100 Series

- LPC1200 Series

 

(5) Cortex-M3

- LPC1800 Series

- LPC1700 Series

- LPC1500 Series

- LPC1300 Series

 

(6) Legacy Arm7 / Arm9

- LPC3000 Series

- LPC2000 Series

 

'ST > MCU' 카테고리의 다른 글

리눅스 기반 임베디드 플랫폼 선택을 위한 SoC/MPU 비교표  (0) 2025.05.14
ST Stellar(스텔라) 32-bit automotive MCU  (1) 2025.04.24
MCU(3) - Infineon  (0) 2025.03.17
MCU(2) - TI  (0) 2025.03.17
MCU(1) - ST  (0) 2025.03.17

 

Infineon 마이크로컨트롤러 포트폴리오는 기존의 8비트 및 16비트 마이크로컨트롤러와 함께 강력한 성능과 향후 검증된 보안 솔루션을 제공하는 최첨단 32비트 마이크로컨트롤러를 포함하는 포괄적인 제품 범위를 제공합니다. 32비트 MCU 제품 포트폴리오에는 Arm® Cortex®-M 기술을 기반으로 하는 XMC™, TRAVELO™ T2G, PSoC™, Auto PSoC™, FM™ 및 MOTIX™ Embedded Power(System-on-Chip)와 TriCore™ 기술을 사용하는 AURIX™가 포함됩니다. Infineon의 광범위한 마이크로컨트롤러 포트폴리오는 자동차, 산업 및 소비자 시장을 위한 다양한 애플리케이션을 위한 확장 가능한 고성능 솔루션을 제공합니다.

 

- Cypress Semiconductor 인수 : PSoC® 6 MCU

 

https://www.infineon.com/cms/en/product/microcontroller/

 

Microcontroller - Infineon Technologies

32-bit microcontrollers for applications where performance, connectivity, safety, and security are needed.

www.infineon.com

 

 

1-1. 제품군

(1) 32-bit AURIX™ TriCore™ Microcontroller

- AURIX™ TriCore™는 RISC 프로세서 코어, 마이크로 컨트롤러 및 DSP의 요소를 하나의 MCU로 통합

 

https://www.infineon.com/cms/en/product/microcontroller/32-bit-tricore-microcontroller/

 

32-bit AURIX™ TriCore™ Microcontroller - Infineon Technologies

Explore the 32-bit AURIX™ TriCore™ MCUs with embedded safety and security features for a range of automotive and industrial applications.

www.infineon.com

 

(2) 32-bit PSoC™ Arm® Cortex® Microcontroller

- PSoC™ Microcontroller는 ARM® Cortex®-M 프로세서, 고성능 프로그래밍 가능 아날로그 블록, PLD 기반 프로그래밍 가능 디지털 블록, 프로그래밍 가능 상호 연결 및 라우팅, CapSense™를 기반으로 하는 세계 유일의 프로그래밍 가능 임베디드 시스템 온 칩(PSoC) 솔루션

- CY*로 시작하는 부품은 Cypress 인수로 인한 제품군

 

https://www.infineon.com/cms/en/product/microcontroller/32-bit-psoc-arm-cortex-microcontroller/

 

32-bit PSOC™ Arm® Cortex® Microcontroller - Infineon Technologies

Infineon’s PSOC™ microcontrollers offer low-power Cortex®-M0 and -M0+ cores and routing with CAPSENSE™ capacitive sensing.

www.infineon.com

 

(3) 32-bit TRAVEO™ T2G Arm® Cortex® Microcontroller

- Infineon TRAVO™ T2G 마이크로컨트롤러는 Arm® Cortex®-M4(싱글 코어)/M7(싱글 코어/듀얼 코어) 코어를 기반으로 하며, 전기, 차체 컨트롤 모듈, 게이트웨이 및 정보와 같은 광범위한 자동차 애플리케이션에 맞게 조정된 고성능, 향상된 인간-기계 인터페이스, 높은 보안 및 고급 네트워킹 프로토콜을 제공

 

https://www.infineon.com/cms/en/product/microcontroller/32-bit-traveo-t2g-arm-cortex-microcontroller/

 

32-bit TRAVEO™ T2G Arm® Cortex® Microcontroller - Infineon Technologies

The TRAVEO™ T2G family of 32-bit Arm® based MCUs supports in-car networks and high-performance functions optimized for a minimal memory footprint.

www.infineon.com

 

(4) 32-bit XMC™ Industrial Microcontroller Arm® Cortex®-M

- 32-bit XMC1000 Industrial Microcontroller Arm® Cortex®-M0

- 32-bit XMC4000 Industrial Microcontroller Arm® Cortex®-M4

- 32-bit XMC7000 Industrial Microcontroller Arm® Cortex®-M7

 

https://www.infineon.com/cms/en/product/microcontroller/32-bit-industrial-microcontroller-based-on-arm-cortex-m/

 

 

1-2. 개발 보드

(1) AURIX™ Microcontroller Boards

 

(2) XMC™ Microcontroller Boards

 

(3) Embedded Power Microcontroller Boards

 

1-3. 개발 환경

(1) AURIX™ Development Studio

AURIX™ 마이크로컨트롤러 제품군을 위한 무료 IDE(Integrated Development Environment)입니다. 이클립스 IDE, C-Compiler, 멀티코어 디버거, 인피니언 로우 레벨 드라이버(iLD)를 포함한 포괄적인 개발 환경으로, 응용 프로그램 코드의 편집, 컴파일, 디버깅을 가능하게 하는 시간 및 코드 크기 제한이 없음

 

(2) DAVE™ IDE

개발에서 생산(E2P)에 이르는 전체 개발 프로세스를 지원하는 DAVE™ 및 보완 도구

 

(3) ModusToolbox™

Modus Toolbox™ 소프트웨어는 PSoC™ Arm® Cortex® Microcontroller, XMC™ 산업용 마이크로컨트롤러, AIROC™ Wi-Fi 장치, AIROC™ Bluetooth® 장치 및 USB-C 전력 공급 마이크로컨트롤러를 비롯한 다양한 Infineon 마이크로컨트롤러 장치를 지원하는 현대적이고 확장 가능한 개발 환경

 

'ST > MCU' 카테고리의 다른 글

리눅스 기반 임베디드 플랫폼 선택을 위한 SoC/MPU 비교표  (0) 2025.05.14
ST Stellar(스텔라) 32-bit automotive MCU  (1) 2025.04.24
MCU(4) - NXP  (0) 2025.03.17
MCU(2) - TI  (0) 2025.03.17
MCU(1) - ST  (0) 2025.03.17

 

1. ARM 기반 32bit MCU

동급 최고의 Arm® 기반 32비트 마이크로컨트롤러(MCU)는 확장 가능한 고성능 및 전력 효율적인 장치 포트폴리오를 제공하여 시스템 요구사항을 충족합니다. 기능 안전, 전력 효율성, 실시간 제어, 고급 네트워킹, 분석 및 보안과 같은 기능을 설계에 접목할 수 있습니다. 개발을 가속화하는 업계 최고의 평가 도구, 참조 설계 및 개발 리소스로 신속하게 시작하십시오.

 

https://www.ti.com/microcontrollers-mcus-processors/arm-based-microcontrollers/overview.html

 

Arm-based microcontrollers | TI.com

Highly integrated, low-cost MCUs for industrial and automotive systems

www.ti.com

 


2. C2000

C2000™ 마이크로컨트롤러는 실시간 제어를 위해 설계되었습니다. NAT은 다양한 애플리케이션에 걸쳐 모든 성능 수준 및 가격대에 대해 짧은 지연 시간의 실시간 제어 기능을 제공합니다. C2000 실시간 MCU를 질화갈륨(GaN) IC 및 탄화규소(SiC) 전원 장치와 페어링하여 전체 기능을 달성할 수 있습니다. 이 페어링을 통해 높은 스위칭 주파수, 높은 전력 밀도 등과 같은 설계 문제를 해결할 수 있습니다.

 

https://www.ti.com/microcontrollers-mcus-processors/c2000-real-time-control-mcus/overview.html

 

C2000 real-time microcontrollers | TI.com

Achieve seamless digital power management and motor control in automotive and industrial applications with our real-time microcontrollers (MCUs)

www.ti.com

 

 


3. MSP430

Ultra-low Power의 16 bit MCU

 

'ST > MCU' 카테고리의 다른 글

리눅스 기반 임베디드 플랫폼 선택을 위한 SoC/MPU 비교표  (0) 2025.05.14
ST Stellar(스텔라) 32-bit automotive MCU  (1) 2025.04.24
MCU(4) - NXP  (0) 2025.03.17
MCU(3) - Infineon  (0) 2025.03.17
MCU(1) - ST  (0) 2025.03.17

+ Recent posts