C-SPY for AVR 에서 중단점

기술노트 88367

아키텍처:

AVR

컴포넌트:

debugger

업데이트:

2021-07-15 오후 7:31

소개

C-SPY에는 각각 다르게 동작하는 다른 형식의 중단점이 있습니다.

본 기술 노트는 IAR Embedded Workbench for AVR에 적용됩니다.

중단점을 어떻게 설정하는가?

중단점은 C-SPY에서 코드 실행을 컨트롤하기 위해 사용됩니다.

임시 중단점

C 또는 어셈블러 코드를 입력할 때 많은 임시 중단점이 설정됩니다(가능한 모든 분기에 대해):

  • "연속적인" 코드에 대해서는 오직 하나의 중단점만 설정할 수 있습니다. C-SPY는 실행되다가 그 다음 구문에서 중단됩니다.
  • if 구문은 두 개의 중단점이 필요한 두 가지 가능한 분기를 만듭니다.
  • 함수 호출은 하나의 중단점을 필요로 합니다. "step-over" 혹은 "step in"을 사용하는지에 따라 배치가 달라집니다.
  • 보통 Switch 구문은 여러개의 중단점을 필요로 합니다.

고정 중단점

고정 중단점(Fixed breakpoints)은 사용자가 설정하거나 C-SPY가 특정 고정 위치, CLIB getchar / putchar / exit, DLIB 디버그브레이크(프로젝트 설정에 따라 Options > Linker > Output > Format: With runtime control modules).

하드웨어에서 디버깅할 때 중단점의 변형이 있습니까?

하드웨어 디버깅을 사용할 때(즉, 시뮬레이터를 사용하지 않음) 두 가지 중단점 변형이 있습니다. 하드웨어 중단점 및 소프트웨어 중단점.

하드웨어 중단점

프로그램 카운터(PC)가 특정 주소와 일치한다면 칩(chip)은 중단합니다.

소프트웨어 중단점

프로그램에서 "break" 명령이 설정됩니다.
하드웨어 중단점 수는 제한되어 있습니다. 소프트웨어 중단점은 코드 메모리 크기에 의해서만 제한되지만 플래시 메모리를 마모시킬 수 있기 때문에 더 비싸다.

XMEGA 디바이스에서 중단점을 어떻게 사용합니까?

Atmel XMEGA 장치에서는 일반적으로 사용 가능한 하드웨어 중단점이 거의 없습니다. 주로 "임시 중단점"으로 사용된다. 하드웨어 중단점이 모두 사용되면 소프트웨어 중단점이 사용됩니다.

 

모든 제품 이름은 해당 소유자의 상표 또는 등록 상표입니다.

죄송하지만, 당사 사이트에서는 Internet Explorer를 지원하지 않습니다.보다 편안한 사이트를 위해 Chrome, Edge, Firefox 등과 같은 최신 브라우저를 사용해 주시길 부탁드립니다.