JTAG (Joint Test Action Group)과 SWD (Serial Wire Debug)는 MCU와 통신을 통해 디버깅과 플래시 프로그래밍을 가능하게 해주는 인터페이스이다.
JTAG와 SWD는 서로 다른 프로토콜이며, JTAG는 여러 디바이스에 널리 사용된다는 장점이 있고 SWD는 비교적 간단한 구성을 가지고 있다는 장점이 있다.
VCC와 GND 제외 필수 연결 핀은 다음과 같다.
JTAG (Joint Test Action Group)
- TCK (Test Clock) : 클럭 신호 전송핀. 디버깅 장치와 타겟 장치 사이의 동기화 역할을 한다.
- TMS (Test Mode Select) : 타겟 장치의 상태를 테스트 모드로 선택하는 데 사용되는 핀.
- TDI (Test Data In) : 데이터 전송핀(디버깅 장치→타겟 장치). 프로그래밍 데이터나 디버깅 명령을 전송한다.
- TDO (Test Data Out) : 데이터 전송핀(타겟 장치→디버깅 장치). 디버깅 상태 또는 응답 데이터를 전송한다.
- RESET: 타겟 장치 초기화 핀. 타겟 장치를 리셋하여 디버깅 세션을 초기 상태로 되돌린다.
SWD (Serial Wire Debug)
- SWDIO (Serial Wire Debug I/O) : SWD 인터페이스의 핵심 핀으로, 디버깅 명령, 데이터 및 응답을 전송하는 데 사용된다. 양방향으로 사용된다.
- SWCLK (Serial Wire Clock) : 클럭 신호 전송핀. 디버깅 장치와 MCU 간의 동기화 역할을 한다.
- RESET : MCU를 리셋하는 데 사용된다.
- SWO (Serial Wire Output) : 디버깅 메시지와 로그 출력을 위해 사용된다. 옵셔널 핀이므로 모든 SWD 구현에서 지원되는 것은 아니다.
20-Pin TI Adapter
14-Pin TI Adapter
20-Pin ARM Adapter
'임베디드 개발 > 펌웨어' 카테고리의 다른 글
CAN FD Bus Load Calculator (0) | 2023.06.25 |
---|---|
readelf 명령어와 elf 파일 구조 (0) | 2023.06.25 |
PXI (0) | 2023.06.25 |
UDS (차량용 진단 통신) (0) | 2023.06.09 |
CAN ISO-TP (2) | 2023.05.31 |