개발 환경: LED 하나 켜기까지
STM32CubeIDE, 컴파일러, 디버거를 갖추고 첫 펌웨어를 올립니다. 첫 LED가 켜지면 툴체인 전체가 확인된 것입니다.
필요한 것
| 구성 | 예 |
|---|---|
| IDE | STM32CubeIDE, VS Code + 확장 |
| 컴파일러 | arm-none-eabi-gcc (IDE에 포함) |
| 디버거 | ST-LINK (Nucleo 보드에 내장), J-Link |
| 설정 도구 | STM32CubeMX (핀, 클럭 설정 후 코드 생성) |
| 보드 | Nucleo-F411RE 같은 개발 보드 |
첫 프로젝트 순서
- 보드 이름으로 새 프로젝트 생성
- CubeMX 화면에서 LED 핀(예: PA5)을 GPIO_Output으로 설정
- 코드 생성 후
while(1)안에 토글 코드 추가 - 빌드 → 디버그 실행 → LED 깜빡임 확인
while (1) {
HAL_GPIO_TogglePin(GPIOA, GPIO_PIN_5);
HAL_Delay(500);
}
LED가 안 켜질 때
- 보드 회로도에서 LED가 정말 그 핀에 연결됐는지
- 디버거 연결이 되는지 (ST-LINK 펌웨어 업데이트가 필요할 때가 많음)
- 생성된 코드의
/* USER CODE BEGIN */블록 밖에 코드를 써서 재생성 때 지워지지 않았는지
이 단계가 되면 컴파일러, 링커, 스타트업, 디버거가 모두 정상이라는 뜻입니다.
영상으로 이어 보기회로와 하드웨어 시리즈 8편전자제품 속 회로 소자는 어떻게 동작할까? · 저항 · 커패시터 · 인덕터 완벽 정리PROJECT COURSE레지스터 설정을 실제 보드에서 해 보고 싶다면밸런싱 로봇 하나를 요구사항, 회로와 PCB, 펌웨어, 앱까지 실무 순서대로 만드는 강의입니다. 10파트 165강.강의 살펴보기 →FREE PDF무료 전자책 3권 받기이 주제를 한 권으로 이어서 읽고 싶다면. BLDC 모터 제어, 직렬통신, 센서를 책 분량으로 묶었습니다. 이메일만 남기면 바로 받습니다.무료로 받기 →