OS : WSL2 - Ubuntu 18.04 LTS
MCU : STM32F103CBT6
구매처 : Aliexpress (LINK)

Aliexpress 를 통해 구매한 DAPLink 를 사용해서 IAR 이나 KEIL 등의 컴파일러를 통해 펌웨어 개발 및 디버깅을 위해 구입 했지만, 컴파일러에서 디버거 검출이 되지 않아 메뉴얼을 확인 한 후 RSTn 핀과 GND 를 Short 시켜 부트로더 로 진입 시켜 보았지만, 아래 그림 처럼 메뉴얼에서 보이는 것과 같은 "DAPLINK" 란 디스크 드라이브가 나오지 않고 있음을 확인. (4개 구입 했는데, 4개다 동일 증상)

DAPLink 의 경우 Open Source 라 회로는 비슷하기에 구입한 제품의 펌웨어 버전이 낮아 그런가 싶어 일단은 DAPLink 펌웨어를 최신으로 업데이트 하기로 결정.
1. 필요한 Package 설치 (WSL2 의 Ubunt 18.04 상에서 실행)
$ sudo apt update
$ sudo apt install -y git cmake ninja-build python3 python3-pip srecord
2. 크로스 컴파일러 Tool Chain 폴더 생성
$ sudo mkdir -p /opt/gcc-arm-none-eabi
$ sudo chown -R $USER:$USER /opt/gcc-arm-none-eabi
3. 브라우저에서 "gcc-arm-none-eabi-10.3-2021.10" 검색해서 다운로드 받음
$ cd ~/Downloads
$ tar -xf gcc-arm-none-eabi-*-x86_64-linux.tar.*
$ mv gcc-arm-none-eabi-* /opt/gcc-arm-none-eabi/
$ export PATH=/opt/gcc-arm-none-eabi/gcc-arm-none-eabi-10.3-2021.10/bin:$PATH
$ hash -r
$ which arm-none-eabi-gcc
$ arm-none-eabi-gcc --version
4. .bashrc 에 PATH 반영
$ echo 'export PATH=/opt/gcc-arm-none-eabi/gcc-arm-none-eabi-10.3-2021.10/bin:$PATH' >> ~/.bashrc
$ source ~/.bashrc
$ hash -r
$ which arm-none-eabi-gcc
5. source code 및 virtual environment 설정
$ git clone https://github.com/mbedmicro/DAPLink
$ cd DAPLink
$ pip install virtualenv
$ virtualenv venv
6. virtual environment 활성화
$ source venv/bin/activate
(venv) $ pip install -r requirements.txt
7. Build
(venv) $ make -C projectfiles/make_gcc_arm/stm32f103xb_bl clean
(venv) $ make -C projectfiles/make_gcc_arm/stm32f103xb_bl all
(venv) $ make -C projectfiles/make_gcc_arm/stm32f103xb_if clean
(venv) $ make -C projectfiles/make_gcc_arm/stm32f103xb_if all
8. Writing
아.... 이거 참 난감하게 되었습니다. JFlash 로 다운로드 하려다 보니...DAPLink 에 있는 STM32f103CB Clone 제품으로 보이는데... Erase All 을 하고서 Writing 하려고 하니 반복적으로 Error 가 발생합니다.
위의 첨부 Link 의 제품은 구매하지 마십시오. 추후 칩을 교체 후 다시 후기 작성 하겠습니다.

- 짜가 STM32F103CBT6 사진 (칩을 갈아서 Remarking 한 것 같음 : 대단한 넘 들)
- 보드 4개 중 2개 비교 사진 (MCU도 다르고 저항 값도 마구 다름, 더군 다나 4개 모두 MCU 가 다름)


- 정품과 짜가 비교 사진 (우측의 제품이 정품입니다. 거금 6,500원 주고 구입.)


- 부트로더 다운로드 후 "MAINTENANCE" 디스크 드라이브 보이는 중

- DAPLink 펌웨어를 "MAINTENANCE" 드라이브에 Drag & Drop 후 자동으로 리셋 후 나타나는 "DAPLINK" 드라이브 표시 화면

- DAPLink 펌웨어 다운로드 후 장치 관리자 표시 내용

- 남은 일은 구매한 보드에 맞도록 Target 용 RSTn 핀과 LED 및 기타 I/O 를 수정해서 컴파일 해야 함. (Pinmap 이 Original 과 달라서 계속 부트 로더로 진입함)
|