STM32F1

STM32F1, STM32CubeMX, BlinkLED

CoyoteUgly 2018. 8. 2. 19:29

STM32F1, STM32CubeMX, BlinkLED 방법입니다.



1. New Project


2. Search MCU

주로 사용하는 MCU를 즐겨찾기에 등록할 수 있습니다.
Start Project 버튼을 누르거나 해당 MCU를 더블클릭하면 됩니다.


3. GPIO Pin 설정

각 Pin들이 사용할 수 있는 function들을 확인할 수 있습니다.

  1. 오른쪽 마우스 클릭으로 해당 팝업이 뜹니다.
  2. 왼쪽 마우스 드래그로 MCU 그림을 상하좌우로 이동할 수 있습니다.
  3. Ctrl + 가운데 휠 기능으로 MCU 그림을 확대, 축소할 수 있습니다.


4.


5. Project > Settings [ Alt + P ]


6. Project Settings > Project

  • Project Name
  • Project Location
  • Toolchain /IDE


7. Project Settings > Code Generator

개인적으로 선호하는 설정이며, 프로젝트 생성 시마다 반복하여 설정해 주어야 합니다.

Default 설정 개념이 있는지는 모르겠습니다.

  • Copy only the necessary library files
  • Generate peripheral initialization as p pair of '.c/.h' filess per peripheral


8. Project > Generate Code [ Ctrl + Shift + G ]


9. Open Project


8. Keil uVison

gpio.c 파일을 열어보면
GPIOC Port의 GPIO_PIN_6, GPIO_PIN_7 을
output low로 초기화하는 것을 볼 수 있습니다.


9. 코드 작성 & Build [ F7 ]

  • HAL_GPIO_WritePin(GPIOC, GPIO_PIN_6|GPIO_PIN_7, GPIO_PIN_SET);
    • High, Low 설정
  • HAL_Delay(1000);
    • ms 단위 delay
  • HAL_GPIO_TogglePin(GPIOC, GPIO_PIN_6|GPIO_PIN_7);
    • gpio value를 toggle


10. Options for Target ...

STMCubeMX 툴은 ST-Link Debugger를 기본적으로 설정하기 때문에
Debugger 변경이 필요한 경우 다음과 같이 진행하면 됩니다.


11. Debugger 선택

보드에 연결된 Debugger를 선택하면 됩니다.


12. Debugger 상태 확인

Debugger 가 정상적으로 연결되어 있는지 확인할 수 있습니다.


13. Download [ F8 ]

14. 보드 동작 확인