2016년 3월 30일 수요일

ST-Link V2로 Maple Mini 부트로더 교체하기

Maple Mini 는 원래 Leaf labs라는 캐나다 회사에서 판매했지만 지금은 지원이 중단되었고, 대신 중국에서 저렴한 클론이 많이 나와 있다. Aliexpress에서 개당 $2~3 정도에 구할 수 있다.




아두이노 IDE를 사용해 프로그램이 가능하지만 어떤 이유로 다른 종류의 부트로더를 넣었다가 다시 교체해야 하는 경우는 USB 케이블만으로는 할 수가 없다.

그래서 ST-Link V2를 사용하면 되는데 이 역시 aliexpress 에서 매우 저렴하게 구입이 가능하다.


알리에서 구입하면 저렴한 건 좋은데 문서나 지원이 충분하지 않기 때문에 사용하기 위해 구글신의 도움을 받아야 하는 경우가 많다.

특히 이번에 구입한 ST-Link V2의 커넥터 pin out의 정보가 없어 역시 구글신의 도움을 받았다.

 
10 핀 커넥터의 각 핀의 기능은 위의 사진과 같다. 여기서 4개의 케이블을 maple mini clone에 연결해 주면 된다.


Vcc(+3.3V), GND, SWCLK, SWDIO 를 각각 연결해 주고 stlink-utility 프로그램을 이용하면 부트로더 교체가 가능하다.

stlink-utility $ ./st-flash write ~/Desktop/maple_mini_boot20.bin 0x8000000
2016-03-30T12:17:23 INFO src/stlink-usb.c: -- exit_dfu_mode
2016-03-30T12:17:23 INFO src/stlink-common.c: Loading device parameters....
2016-03-30T12:17:23 INFO src/stlink-common.c: Device connected is: F1 Medium-density device, id 0x20036410
2016-03-30T12:17:23 INFO src/stlink-common.c: SRAM size: 0x5000 bytes (20 KiB), Flash: 0x20000 bytes (128 KiB) in pages of 1024 bytes
2016-03-30T12:17:23 INFO src/stlink-common.c: Attempting to write 7036 (0x1b7c) bytes to stm32 address: 134217728 (0x8000000)
Flash page at addr: 0x08001800 erased
2016-03-30T12:17:23 INFO src/stlink-common.c: Finished erasing 7 pages of 1024 (0x400) bytes
2016-03-30T12:17:23 INFO src/stlink-common.c: Starting Flash write for VL/F0/F3 core id
2016-03-30T12:17:23 INFO src/stlink-common.c: Successfully loaded flash loader in sram
  6/6 pages written
2016-03-30T12:17:23 INFO src/stlink-common.c: Starting verification of write complete
2016-03-30T12:17:23 INFO src/stlink-common.c: Flash written and verified! jolly good!

stlink-utility $

위의 화면은 Mac에서 stlink-utility를 사용해 부트로더를 교체한 예이다.

댓글 없음:

댓글 쓰기