최신 인서킷 디버거를 통해 시제품 제작 및 코드 업데이트 가속화

작성자: Kenton Williston

DigiKey 북미 편집자 제공

임베디드 시스템이 점점 더 복잡해짐에 따라, 개발자들은 제품의 출시를 앞당겨야 한다는 압박에 직면해 있습니다. 이러한 상황에서 인서킷 디버거(ICD)는 버그를 빠르게 식별하고 수정하는 데 중요한 역할을 합니다. 그러나 기존 디버거는 부피가 크고 유연성이 떨어지며 사용이 어렵기 때문에, 현재의 개발 요구 사항에는 적합하지 않습니다.

그 대안으로, 콤팩트하고, 기능이 확장되었으며, 개발자 친화적인 툴셋을 갖춘 최신 솔루션을 선택할 수 있습니다. 특히, 연구실과 현장에서 신속한 개발과 제품 업데이트를 위한 지원이 필요합니다.

이 기사에서는 ICD의 역할 및 요구 사항에 대해 간략하게 설명합니다. 그런 다음 개발자가 최신 ICD에서 확인해야 할 사항의 예로 Microchip Technology의 솔루션을 소개합니다. 또한 호환 가능한 개발 도구, 시작하기 위한 팁, 생산 환경에서 ICD를 사용하기 위한 빠른 가이드도 포함되어 있습니다.

ICD의 이점 및 당면 과제

ICD는 대상 하드웨어 내에 설치된 프로세서에 연결되는 도구입니다. 이 연결을 통해 시스템 작동 중 프로세서에 실시간으로 액세스할 수 있으므로, 단계별 실행 및 메모리 검사와 같은 작업을 수행할 수 있습니다. 인서킷 프로그래머(ICP)는 이러한 기능을 기반으로 구축되어, 이를 통해 코드 및 데이터가 프로세서 메모리에 기록될 수 있습니다. 이러한 모든 기능들은 임베디드 개발 프로세스에서 매우 중요합니다.

그러나, 기존 디버거는 전문적인 기술 및 개발 환경이 필요하므로 그 활용도가 제한될 수 있습니다. 또한 이러한 디버거는 프로덕션 하드웨어 문제를 해결할 때 제한이 있을 수 있으며, 비용 및 공간 제약으로 인해 프로덕션 하드웨어에서 구현하기에는 어려운 JTAG 연결이 필요한 경우가 많습니다. 거기에 더해, 디버깅에 필요한 특수 소프트웨어와 하드웨어를 현장 환경에 도입하기가 까다로울 수 있습니다.

이러한 제약을 극복할 수 있는 제품이 바로 Microchip Technology의 PG164150 MPLAB PICkit 5 ICD/ICP입니다. 무엇보다도, Bluetooth Low Energy(BLE) 연결 기능으로 스마트폰 앱을 통해 사용할 수 있는 특징이 있습니다. 이를 통해 기술자는 현장에서 코드 이미지를 배포하여 버그 수정 및 소프트웨어 업데이트의 가능성을 크게 확장할 수 있습니다.

MPLAB PICkit 5의 주요 특징

MPLAB PICkit 5는 PIC, dsPIC, AVRSAM(Arm® Cortex®-기반) 장치를 비롯한 거의 모든 Microchip Technology 마이크로 컨트롤러 유닛(MCU) 및 디지털 신호 컨트롤러(DSC)를 지원하는 다목적 디바이스입니다. 그림 1에서 볼 수 있듯이, 도구에 여러 장치 메모리 이미지를 저장할 수 있도록 microSDHC 카드 슬롯이 통합되어 있습니다.

Microchip MPLAB PICkit 5 개요 이미지그림 1: MPLAB PICkit 5의 주요 기능이 강조된 개요입니다. (이미지 출처: Microchip Technology)

MPLAB PICkit 5는 USB Type-C 케이블을 통해 호스트에 연결되며, 이 케이블을 통해 또는 대상에 의해 구동될 수 있습니다. 또한 디버거에는 스마트폰에서 도구에 액세스할 수 있는 BLE 연결 기능도 포함되어 있습니다.

디버거는 대상 측에 다양한 인터페이스를 지원하는 8핀 프로그래밍 커넥터를 갖추고 있습니다. 여기에는 4선 JTAG, 직렬 와이어 디버그(SWD), 이더넷, 하위 호환 2선 JTAG 및 인서킷 직렬 프로그래밍(ICSP)이 포함됩니다. Microchip Technology는 이러한 모든 인터페이스를 지원하는 AC102015 어댑터 기판(그림 2)을 제공합니다.

Microchip Technology AC102015 어댑터 기판 이미지그림 2: AC102015 어댑터 기판은 다양한 인터페이스를 수용합니다. (이미지 출처: Microchip Technology)

디버거는 저전압 프로그램 모드 엔트리에서 1.2V ~ 5.0V, 고전압 프로그램 모드 엔트리에서 1.8V ~ 5.0V의 목표 공급 전압을 지원합니다. 또한 대상 장치에 150mA를 직접 공급할 수도 있습니다.

추가 기능으로는 가상 통신 포트(VCOM), 여러 하드웨어 및 소프트웨어 중단점, 타이밍 작업을 위한 스톱워치, 소스 코드 파일을 직접 디버깅하는 기능이 있습니다. 디버거는 실시간 운영 체제(RTOS)를 실행하는 300MHz ATSAME70N2 MCU로 구동되므로, 장치 간 전환 시 펌웨어 다운로드 지연이 발생하지 않습니다. 또한 이 온보드 인텔리전스를 통해 디버거가 새로운 대상 장치와 기능을 지원할 수 있습니다.

MPLAB PICkit 4 및 MPLAB PICkit 3과 비교한 주요 개선 사항

MPLAB PICkit 계열은 지속적으로 발전하여, 매번 유연성, 속도 및 장치 호환성을 개선해 왔습니다. 표 1은 이전 버전과 비교하여 MPLAB PICkit 5의 주요 업그레이드 사항을 요약한 것입니다.

기능 MPLAB PICkit 3 MPLAB PICkit 4 MPLAB PICkit 5
지원되는 장치 PIC PIC, dsPIC 모든 Microchip 아키텍처
유선 연결 USB 미니 마이크로 USB USB Type-C
무선 연결 불가능 불가능 Bluetooth Low Energy(BLE)
원격 프로그래밍 불가능 불가능 Programmer-To-Go(PTG)
현장 프로그래밍 불가능 제한적 여러 프로그램 이미지
폼 팩터 콤팩트형 제한적 여러 프로그램 이미지
속도 중간 고속 빠름

표 1: MPLAB PICkit 5는 이전 버전에 비해 많은 이점을 제공합니다. (표 출처: Kenton Williston)

MPLAB PICkit 5가 지원하는 개발 환경

MPLAB PICkit 5는 다음과 같은 개발 환경을 지원합니다.

스마트폰 앱(그림 3)은 특히 주목할 만한데, 사용자가 간단한 프로세스를 통해 대상 하드웨어를 원격으로 프로그래밍할 수 있습니다.

  • 코드는 MPLAB X를 사용하여 개발되며, 코드, 데이터 및 구성 정보를 캡슐화하는 .ptg hex 파일로 컴파일됩니다.
  • hex 파일은 MPLAB PICkit 5에 삽입된 microSDHC 카드에 다운로드됩니다.
  • microSDHC 카드는 여러 개의 hex 파일을 수용할 수 있으므로 사용자가 대상 장치를 유연하게 프로그래밍할 수 있습니다.
  • MPLAB PICkit 5는 대상 하드웨어에 플러그인됩니다.
  • 사용자는 스마트폰 앱을 사용하여 메모리 카드에 저장된 프로그램 이미지를 선택하여 대상을 프로그래밍합니다.

Microchip Technology MPLAB PTG 스마트폰 앱 이미지(확대하려면 클릭)그림 3: MPLAB PTG 스마트폰 앱은 간단한 인터페이스를 제공합니다. (이미지 출처: Microchip Technology)

MPLAB PTG는 추가 장비를 설치하기 어려운 원격 또는 모바일 환경에서 특히 유용합니다. 컴퓨터 없이 현장에서 직접 장치를 프로그래밍할 수 있어, MPLAB PICkit 5를 독립형 프로그래밍 도구로 효과적으로 전환할 수 있습니다.

개발자는 현장에서 펌웨어를 빠르게 업데이트하여 개발 주기를 단축하고 출시 시간을 단축할 수 있습니다. 그 후 기술자가 MPLAB PTG를 사용하여 다른 현장 장치를 업데이트할 수 있으므로, 제품 업그레이드를 신속하게 배포할 수 있습니다. 이 도구는 장치 기능을 복원하기 위해 신속하게 재프로그래밍해야 하는 긴급 상황에서도 유용합니다.

MPLAB PICkit 5 시작하기

MPLAB X IDE와 함께 MPLAB PICkit 5를 사용하는 것은 모든 임베디드 개발자에게 익숙한 프로세스일 것입니다. 기본적인 단계는 다음과 같습니다.

  • 설치: 최신 버전의 MPLAB X IDE를 설치해야 합니다. MPLAB PICkit 5는 일반적으로 추가 드라이버 없이 지원되지만, 개발자가 최신 정보를 확인하려면 Microchip Technology 웹 사이트에서 확인해야 합니다.
  • 프로젝트 설정: 새 프로젝트를 생성할 때 프로그래밍 및 디버깅을 위한 하드웨어 도구로 PICkit 5를 선택할 수 있습니다. 이 선택은 프로젝트 속성 내 '하드웨어 도구' 카테고리에서 이루어집니다.
  • 프로그래밍: 프로젝트가 구성되고 코드가 준비되면, '장치 만들기 및 프로그래밍' 버튼을 활성화하여 MCU를 프로그래밍할 수 있습니다.

MPLAB IPE는 생산 환경의 기술자에게 보다 간편한 프로세스를 제공합니다. 이 도구를 사용하는 주요 단계는 다음과 같습니다.

  • 구성: 사용 가능한 도구에서 MPLAB PICkit 5를 선택해야 합니다. 그런 다음 대상 장치(MCU 모델)와 프로그래밍을 위한 hex 파일을 선택해야 합니다.
  • 프로그래밍: 장치와 hex 파일을 선택한 상태에서 '프로그램' 버튼을 눌러 MCU를 프로그래밍할 수 있습니다. 필요한 경우, MPLAB IPE가 대상 장치를 지우고 프로그래밍한 다음, 프로그래밍을 확인합니다.

이 모든 환경에서, 사용자가 기술적인 난관에 부딪힐 가능성이 높습니다. 이러한 어려움은 다음과 같이 해결할 수 있는 간단한 문제로 인해 발생하는 경우가 많습니다.

  • 연결 상태가 올바른지 확인: 개발자는 호스트 및 대상 장치에 대한 연결을 확인해야 합니다. ICSP 인터페이스를 사용하는 경우, 커넥터의 방향에 유의해야 합니다.
  • 전원 설정 확인: 전원 설정을 확인해야 합니다. 일부 장치는 MPLAB PICkit 5에서 직접 전원을 공급받을 수 있지만, 외부 전원이 필요한 장치도 있을 수 있습니다.
  • 펌웨어 업데이트: Microchip Technology에서 MPLAB PICkit 5의 펌웨어 업데이트를 주기적으로 배포합니다. 개발자는 최신 버전이 설치되어 있는지 확인해야 합니다.

MPLAB PICkit 5와 호환되는 개발 키트

MPLAB PICkit 5는 학습, 시제품 제작 및 응용 제품 개발을 위해 설계된 다양한 개발 키트와 호환됩니다. 예를 들어, 8핀, 14핀 또는 20핀을 지원하는 DM164137과 같은 Curiosity 로우 핀 카운트(LPC) 개발 기판은 PIC MCU를 실험할 수 있도록 설계되었습니다. 이러한 기판에는 통합 프로그래머와 디버거가 포함되어 있는 경우가 많지만, MPLAB PICkit 5와 같은 외부 툴을 통해 추가 기능을 제공할 수 있습니다. 개발자는 점퍼 옵션을 통해 온보드 프로그래머의 연결을 끊을 수 있는지 확인해야 합니다.

또 다른 예는 PIC16F18855용 DM164140과 같은 Xpress 평가 기판입니다. 이 기판은 특정 PIC MCU를 사용한 빠른 시제품 제작을 위해 설계되었습니다. 프로그래머와 디버거가 내장되어 있지만, 개발자는 프로젝트 간 일관성 또는 이 디버거에 특화된 기능을 위해 MPLAB PICkit 5를 사용할 수 있습니다.

Microchip Technology는 DM320105 PIC32MX XLP 평가 기판과 같이 개발을 빠르게 시작하는 데 필요한 하드웨어 및 소프트웨어를 제공하는 스타터 키트도 제공합니다. MPLAB PICkit 5는 이 키트에 포함된 MCU를 프로그래밍하고 디버깅하여 원활한 환경을 제공하는 데 유용하게 사용될 수 있습니다.

결론

최신 ICD는 개발자가 개발 주기를 가속화하고 현장에서 제품 업데이트를 배포하는 데 도움을 줄 수 있습니다. MPLAB PICkit 5는 이전 디버거보다 더 광범위한 대상 장치, 연결 옵션 및 소프트웨어 도구를 지원하므로, 높은 수준의 유연성과 유용성을 제공합니다. 특히 이 제품이 제공하는 스마트폰 앱은 기존 디버거로는 접근하기 어려운 설정에서 MPLAB PICkit 5를 사용할 수 있도록 지원하므로 더욱 주목할 만합니다.

DigiKey logo

면책 조항: 이 웹 사이트에서 여러 작성자 및/또는 포럼 참가자가 명시한 의견, 생각 및 견해는 DigiKey의 의견, 생각 및 견해 또는 DigiKey의 공식 정책과 관련이 없습니다.

작성자 정보

Image of Kenton Williston

Kenton Williston

Kenton Williston은 2000년에 전기 공학 학사 학위를 받았으며, 프로세서 벤치마크 분석가로 커리어를 시작했습니다. 그 후 EE Times 그룹에서 편집자로 일하면서 전자 산업을 위한 여러 간행물 및 컨퍼런스의 시작과 진행을 도왔습니다.

게시자 정보

DigiKey 북미 편집자