본문 바로가기

전자공학/프로그래밍

STM32CubeMX 사용과 MCU선정 방법 파헤치기 1탄

안녕하세요.

Edward입니다.

 

이번에는 STM32CubeMX를 사용하는 방법에서 파헤쳐보도록 하겠습니다.

"이 포스팅의 중요한 Key point는 Tool의 사용방법과 MCU 선정 방법입니다."

MCU 선정을 어떻게 하는지에 대해서 나름 자세하게 언급할 거예요 ^^

STM32CubeMX를 설치하는 방법은 아래 링크를 참고해주세요^^

 : STM32CubeMX 설치하기(링크)

자, 그럼 시작해보겠습니다.

순서대로 나열할 테니 보고 따라 하시면 될 것 같아요.

 

1. STM32CubeMX tool을 실행합니다.

2. 아래 이미지와 같이 New product를 클릭합니다.

STM32Cube 실행하기

 

 

3. 그러면 제품 선택 페이지가 나옵니다. 여기서 제품을 선택할 수 있습니다.

이 페이지를 이용해서 내가 원하는 MCU를 선택해서 사용할 수 있습니다.

만약 아직 MCU가 정해지지 않은 상태에서 고객을 통해 기능 Spec만 받은 상태라면, 이 페이지에서 딱 맞는 기능의 MCU를 찾기에 수월하다는 얘기예요!!

그래서 지금부터 MCU 선정에 대해서 저의 개인적인 피셜에 대해서 순서대로 설명드릴게요.

  • 사용하는 Peripheral은 무엇을 몇 개 사용하는가?
    • Peripheral을 어떤 걸 사용할지, 그리고 몇 개 사용할지에 따라 MCU Package가 달라져요!
    • 꿀팁!! STmicro社에서 Bus interface는 FSMC입니다. 보통 Cortex-M4급 IC에만 있습니다.
  • Package는 Debugging이 편한 LQFP 타입으로 지정합니다.
    • QFN타입들은 Debugging 할 때, 점퍼 날리기도 어렵고, 납땜해서 붙이기도 어려워요. 붙이려면 열풍기 사용해야 합니다..
    • 다만, GPIO 사용 수에 따라서 64핀으로 할지, 100핀으로 할지 정해야 해요 ^^
  • Core는 Arm cortex-M3 이상이면 될 것 같네요. 근데 요새는 M3나 M4나 가격차이가 크게 없어서 M4를 사용해도 괜찮을 것 같아요.
    • 저는 STM32F412RGT6 제품을 사용했습니다. Cortex-M4 제품이에요 ㅎㅎ
  • 그리고 MCU는 1개만 선정하지 말고 여러 개 선정해서 수급이 용이한지 체크해야 합니다.
    • 잘 찾아보면 한국에서 수입을 많이 하는 칩들은 Cost가 굉장히 저렴합니다.
    • 그래서 Cortex-M4 칩이 Cortex-M3칩보다 싼 경우도 많이 있어요.
  • 사실 Clock, Memory를 베스트 하게 적재적소로 사용할 수 있는 Skill이 있다면 가장 베스트겠지만, 저도 그 단계는 아니기 때문에, 넉넉하게 사용하면 될 것 같아요.
    • 저는 넉넉하게 사용하기 위해 Cortex-M4를 사용했습니다 ㅎㅎ

 

 

4. 자, 이제 그러면 아래와 같이 내가 사용하고자 하는 Peripheral를 선택하고 Search를 해보죠!!

저는 여러 개의 Peripheral을 사용할 거예요.

1. SPI 3ea

2. UART (Debug)

3. CAN 2ea

아래 이미지처럼 List의 CAN을 2개 사용할 거라고 기입합니다. (빨간 박스 부분)

또한 SPI도 3개, USART도 1개 사용할 거라고 기입하면 사용할 수 있는 MCU list들이 쭉 나와요! (보라 박스 부분)

보면 Price에 대한 부분도 있고 Package타입과 Flash, RAM, I/O 등의 개수도 간결하게 디스플레이되고 있습니다.

STM32CubeMX MCU 선정

 

5. 이제 저는 STM32F412RGT6 제품을 사용할 거예요.

Package는 LQFP64, Flash 1024KB, RAM 256KB, I/O 50ea Frequency는 100 Mhz입니다.

MCU를 선택했으니 Start Project로 넘어갈게요.

그러면 로딩되는데 시간이 좀 걸려요 ㅎㅎ

로딩이 완료되면 아래와 같이 페이지가 나타나게 됩니다!!

STM32CubeMX 칩 세팅하기

 

다음 시간에 연달아 2탄을 살펴보겠습니다 ^^