작은낙서장2024. 8. 23. 10:48

ST Micro의 Nucleo 보드는 시험개발용으로 혹은 교육용으로 쓰기에 매우 적절합니다. 

보통은 같이 제공되는 STM32 Cube IDE 로 개발을 합니다....... 만.... 

 

세상에는 가끔 이걸 못 쓰는 병신(...) 혹은 피치 못할 사정(보드 급사) 으로 혹은 아두이노 코드를 재활용 해야 하는 경우가 있습니다. .... 네 그게 접니다 (...) 

그런데 Arduion IDE로 Nucleo-32 보드에 프로그램을 올릴 수 있다고는 하는데 한글로 된 자세한 설명은 드물어서 

몇시간 무지성 검색을 한 끝에 성공했으니 기록을 남깁니다. 

 

1. 시작 전에 STM32 Cube Programmer 프로그램 (ST Micro 공홈에서 받습니다. ) - 미리 설치합시다. 

그리고 시스템 속성 - 환경변수 에서 Path 에 Cube 프로그래머 위치를 등록합니다. 

 

2.  Nucleo 보드 (저는 STM32F303K8 Nucleo-32 보드를 써습니다.) 및 USB 케이블이 정상적으로 연결 되는지 확인합니다. 

3. 아두이노 IDE를 실행합니다.  파일 - 기본설정에 들어가서..

4. 추가 보드 관리자 옆 빈칸 옆에 있는 녹색 버튼을 누릅니다. 

여기에 다음 한 줄을 입력합니다. 

https://github.com/stm32duino/BoardManagerFiles/raw/main/package_stmicroelectronics_index.json

5. 확인을 누르고 첫 화면으로 나와서 보드매니저를 누릅니다. 검색창에 nucleo 혹은 STM32 를 치면 맨 위에 보드 패키지가 나옵니다. 설치해주면 됩니다. 

6. 이제 보드 세팅을 해야 합니다. 도구를 눌러서 다음과 같이 세팅합시다. 

보드 종류는 Nucleo-32, 포트는 처음에 인식된 포트로, 보드 파트넘버가 맞는니 확인하고, 

제일 중요한 업로드 방법을 SWD 로 해야 에러가 안 납니다. USB는 없으니 None 이고, UART는 저는 필요가 없어서 껐지만 보통은 켭니다. 

 

7. 그리고.. 프로그램을 작성해야 하는데..... 간단히 LED 부터 깜빡여 봅시다. 

파일 - 예제 - 01_베이직 - Blink 를 누르면 아두이노용 blink 예제가 나옵니다. 이걸 그대로 컴파일 - 업로드 해도 에러는 안 나는데 동작 안 합니다... ㅎㅎ.. 

 

8. 일단 보드 유저 매뉴얼을 보면.... UM1956 매뉴얼을 보라고 되어 있습니다. 

https://www.st.com/resource/en/user_manual/dm00231744.pdf

매뉴얼을 보면... 사용자 LED인 LD3는 PB3에 연결되어 있군요... 

그러면 아래의 기존 예제에서, LED_BUILTIN 을 PB3 으로 바꿔 줍시다... 이제 -> 버튼을 눌러 업로드 하면 의도대로 동작합니다. ... 컴파일 시간이 분 단위로 걸릴만치 오래 걸리지만요 (.....) 

9. 하지만 이제 좀 더 멀쩡한 걸 하려면 어떻게 해야 할까요? 

API 문서를 뒤질 차례죠..... 

https://github.com/stm32duino/Arduino_Core_STM32/wiki

 

Home

STM32 core support for Arduino. Contribute to stm32duino/Arduino_Core_STM32 development by creating an account on GitHub.

github.com

API 레퍼런스에 어떻게 쓰라고 친절하게 나와 있습니다. 

혹은 아예 제조사에서 제공하는 예제를 뒤지는 방법도 있지요 

https://github.com/stm32duino/STM32Examples/

 

GitHub - stm32duino/STM32Examples: Arduino library to provide several examples for the Arduino core for STM32 MCUs.

Arduino library to provide several examples for the Arduino core for STM32 MCUs. - stm32duino/STM32Examples

github.com

즐거운 프로그래밍이 되시길 바랍니다. 

 

저는 비록 기존에 쓰던 아두이노 보드가 급사해서 땜빵하느라 이걸 썼는데.....

컴파일 속도가 정말 끔찍하게 느립니다.... 확인된 코드를 재활용하는것만 아니었어도 이짓을 안 하는건데.... 

Posted by Astas
작은낙서장2024. 4. 23. 00:13

1. 뿌리파리는 다이소에서 산 제충국 성분 포함 가드닝용 살충제 따위로는 죽지 않는다 

2. 전자모기향을 피운다고 죽지도 않는다. 

3. 날아다니는 성충은 끈끈이가 답이다. 알리익스프레스에서 묶음으로 사자.

4. 알과 유충을 잡는건 빅카드 희석해서 뿌려라. 

5. 완전히 잡으려면 줄기와 잎에 뿌리는건 기본이고 희석해서 흙 전체에 퍼지도록 해야 싹 때려잡을 수 있다. 

6. 빅카드 냄새를 일부러 맡는 취미가 없다면 환기 잘 되는 곳에다 두고 뿌린 다음 한나절 뒤에 회수하자... 

Posted by Astas