TI TMS320 입문 연재 입니다.
1. CCS, C2000Ware, sprc191 (sprc097) 설치, compile == https://bahk33.tistory.com/205
2. XDS100, XDS200 로 CCS Debug 하기 == 본글 https://bahk33.tistory.com/207
3. UniFlash 로 ( CCS 없이 ) FW Download 하기- == https://bahk33.tistory.com/208
4. C2000Ware Sample code 를 다른곳으로 가져 가기 == https://bahk33.tistory.com/209
5. CCS v20 Project 만들기 == https://bahk33.tistory.com/210
6. CCS, 다른 ( 옛날 ) Compiler (CGT) 버전 설치 == https://bahk33.tistory.com/206
7. TMS320 F28069 CCS SCI(UART) source == https://bahk33.tistory.com/211
8. TMS320 F28069 CCS PWM source == https://bahk33.tistory.com/212
==========================================
( 최초 만들기: 250311 , 마지막 바꾸기 : 250326 )
본글 목차
0. 들머리
1a. XDS100 설치, 설정
2b. XDS200 설치, 설정
2. 확인 사항
3. Debug 시작
4. 혹시 디버그가 안되면
5. XDS 200 pin
6. 디버그 할때 나는 에러
7. Graph 보기
8. Download (Flash ) 하기
================================
0. 들머리
본 글은
CCS, C2000Ware, sprc191 (sprc097) 설치, compile == https://bahk33.tistory.com/205
에 이어서 하는 다음글 입니다. 즉 먼저 이전 글을 보고 오셔요.
Debug 장치 XDS100, XDS200 를 이용하여 디버그 하는 것을 합니다.
1a. XDS100 설치, 설정
1) XDS100 USB 장치 설치
> CCS 를 설치 한뒤 그냥 XDS100 을 연결 해주셔요. 그러면 일반 적으로는 장치관리자 "TI Debug Probes" 부분에 나타 납니다.
> 연결 된것이 XDS100v3 이군요
2) 프로젝트를 가져 옵니다.
> File > Import Project
> 적당 한거 가져 오셔요 , 여기서는 "gpio_toggle" 을 사용 합니다.
3) 디버그 설정이 안되어 있음을 미리 확인 해 봅니다.
4) CCS에서 Debug 장치로 XDS100v3 을 설정 합니다.
> CCS 에서 > Project 폴더를 선택 하시고 > Project > Properties
> 나오는 팝업창 에서
> General > Connection > "Manage ~ " 를 Check 하시고 > "TI XDS100v3 USB Debug Probe" 를 선택 > [Save and Close]
5) 디버그 설정이 되어 있음을 확인 해 봅니다. 이게 아직도 "No Configuration" 이면 디버그 안될 수 있습니다.
이제 "2. 확인 사항" 으로 가셔요.
1b. XDS200 설치, 설정
1) XDS200 USB 장치 설치
> 일반 적으로는 CCS 를 설치 한뒤 그냥 연결 하면 장치관리자 "포트(Port, COM)" 부분에 나타 납니다.
> CMD 창을 띄움 니다.
> CCS 설치 디렉토리 E:\_t\_d\_ti\ccs2002\ccs\ccs_base\common\uscif\xds2xx 에 가셔서
> "xds2xx_conf get xds2xxu 0" 명령을 치면 정보가 나옵니다
>만약 나오지 않으면, https://software-dl.ti.com/ccs/esd/documents/xdsdebugprobes/emu_xds200.html 를 참고 합니다.
2) 프로젝트를 가져 옵니다.
> File > Import Project
> 적당 한거 가져 오셔요 , 여기서는 "gpio_toggle" 을 사용 합니다.
3) 디버그 설정이 안되어 있음을 미리 확인 해 봅니다.
4) CCS에서 Debug 장치로 XDS200 을 설정 합니다.
> CCS 에서 > Project 폴더를 선택 하시고 > Project > Properties
> 나오는 팝업창 에서
> General > Connection > "Manage ~ " 를 Check 하시고 > "TI XDS2xx USB Debug Probe" 를 선택 > [Save and Close]
5) 디버그 설정이 되어 있음을 확인 해 봅니다. 이게 아직도 "No Configuration" 이면 디버그 안될 수 있습니다
2. 확인 사항
> 곧바로 디버그 하실 분은 "4. Debug 시작" 으로 가셔요, 낭중에 필요 하면 볼 부분 입니다
1) ".ccxml" 파일 확인
> 위에서 XDS100 이든 XDS200 이든 디버그 장치를 선택 하시고, [Save and Close] 를 하셨다면,
디렉토리 "\targetConfigs" 아래 "TMS320F28069.ccxml" 라는 파일이 생깁니다.
> TI 에서 제공 하는 보드가 아닐 경우 이 파일을 수정 해야 할 수도 있읍니다.
> 세부 사항은 "https://software-dl.ti.com/ccs/esd/documents/ccs_custom_target_config.html" 을 보셔요
4) launch.json
> 사실 이 파일은 없어도 디버그가 되는거 같은데, 디버그가 안 되는 경우 이 파일을 만들면 거의 되는 거 같네요.
> 디렉토리 ".theia" 를 만드시고, 그 아래 "launch.json" 이란 파일을 만드셔요.
이게 원래 자동으로 만들어 지는 것 같은데, 만들어 지다 안만들어지다, 하네요... 이거 안만들어지면, 디버그가 안될때도 있네요
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
"version": "0.2.0",
"configurations": [
{
"name": "Example_2806xGpioToggle",
"type": "ccs-debug",
"request": "launch",
"projectInfo": {
"name": "Example_2806xGpioToggle",
"resourceId": "/Example_2806xGpioToggle"
},
"debuggerSettings": {
"targetConfigs/TMS320F28069.ccxml": {
"Texas Instruments XDS2xx USB Debug Probe/C28xx": {
"data": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\" ?>\n<PropertyValues/>\n"
}
}
}
}
]
}
3. Debug 시작
1) 맞는 컨피그래이션을 선택 합니다.
> 여기서 맞는 configuration 이 나타 나지 않으면, 아래 "5. 혹시 디버그 안되면" 으로 다녀 오셔요.
2) CCS 에서 > "run" > "Start Debugging" 하면 디버그가 시작 합니다.
아니면, 왼쪽 디버그 아이콘 눌러도 시작 합니다.
> 디버그가 시작 되면 main() 의 맨 처음으로 갑니다. 왼쪽 debug 에서 icon 들을 눌러 진행 하시면 됩니다.
4. 혹시 디버그가 안되면,
1) CCS 종료 하시고,
2) "C:\Users\b\AppData\Local\Texas Instruments\CCS\ccs2002\0\theia\workspaces" 에 가셔서 ( 여기서 'b' 는 사용자 이름) 작업 기록 피일인 "Untitled-957.theia-workspace" 와 같은 파일 지우시고
3) CCS 다시 실행
> 작업 폴더가 인포트 안되어 있으면 인포트 합니다
> File > Import Project > [ Sorce Folder ] 선택
4) Debug 장치 설정 확인 및 연결 확인
> [ Import 된 작업 폴더] 에서 [마우스 오른쪽 버튼] > Properties
> 디버그 장치 연결 확인 하시고 > [Save and Close]
> 그럼 [Source_Folder]/.theia/ launch.json 파일이 자동으로 만들어 져야 합니다.
5) launch.json 파일 확인
> [Run] > [ Open Configurations] 하면, launch.json 파일이 나타 납니다.
{
"version": "0.2.0",
"configurations": [
{
"name": "Example_2806xEPwmBlanking",
"type": "ccs-debug",
"request": "launch",
"projectInfo": {
"name": "Example_2806xEPwmBlanking",
"resourceId": "/Example_2806xEPwmBlanking"
},
"debuggerSettings": {
"targetConfigs/TMS320F28069.ccxml": {
"Texas Instruments XDS2xx USB Debug Probe/C28xx": {
"data": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\" ?>\n<PropertyValues/>\n"
}
}
}
}
]
}
> 정상적인 launch.json 파일 보기
> 정상 적으로 나타 나면, 파일 위치가 "C:\Users\[사용자]\workspace_ccstheia\.theia 와 같을 것 입니다.
> 이 파일을 소스 디렉토리에 저장 해 주셔요
> File > Save As 하여 [Source_Folder]/.theia/launch.json 로 저장 합니다.
> 현재 소스 디렉토리에 ".theia" 라는 디렉토리가 없으면 만들어 주시고,
> 이렇게 [Source_Folder]/.theia/launch.json 를 만들어 놓으시면 다음에 디버그 할때 문제 생기지 않읍니다.
> 하지만, 지금 파일 [Source_Folder]/.theia/launch.json 파일이 없든, 아니면 있어도 내용이 아래와 같이 어설프게 되어 있으면,.
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
"version": "0.2.0",
"configurations": [
]
}
> 그럼 [ Import 된 작업 폴더] 에서 [마우스 오른쪽 버튼] > Properties 을 다시 하시고,
> 나타난 properties 팝업 창에서 [Debug] > Core > [Save and Close] 를 그냥 하시면 만들어 질지도 모릅니다.
사실, 자동으로 만들어 주는데, 안만들어 지는게 버그 입니다.
6) Configuration 을 다시 확인 해 보셔요.
> 아마도 안나타 나던 cfg 가 나타 날 거 입니다.
> 맞는 Cfg 가 없다면 , 먼저 Debug 장치 XDS100, XDS200 을 다시 선택 하시고 [save and close] ,하신 다음,
"Add Configuration" 하여
> 맞는 장치를 선택 하여 주셔요.
> 맞는 장치가 안보이면, 위에 있듯이 "~\gpio_toggle\.theia\launch.json" 을 만들어 주셔요
> 맞는 장치가 나타 나면, 선택 하시고, 다시 디버그 시도 해 보셔요
뱀다리 : 아마도 뭐가 벌레가 있는거 같군요.. CCS20.0.2 를 쓰고 있는데.
5. XDS 200 pin
TAG connector | TI 14-Pin1 | Compact TI 20-Pin (cTI)2 | ARM 20-Pin Cortex Debug + ETM3 | ARM 10-Pin3 | ARM 20-Pin1 | ARM 14-Pin1 (OBSOLETE) | TI 20-Pin1 (OBSOLETE) |
Pin number | |||||||
1 | TMS | SWDIO / TMS | VTRef | VTRef | VTRef | VTRef | VTRef |
2 | nTRST | nTRST | SWDIO / TMS | SWDIO / TMS | VSupply | GND | VSupply |
3 | TDI | TDI | GND | GND | nTRST | nTRST | nTRST |
4 | TDIS | TDIS | SWDCLK / TCK | SWDCLK / TCK | GND | GND | TDIS |
5 | VTRef | VTRef | GND | GND | TDI | TDI | TDI |
6 | KEY | KEY | SWO / TDO / EXTa / TRACECTL | SWO / TDO | GND | GND | KEY |
7 | TDO | SWO / TDO | KEY | KEY | SWDIO / TMS | TMS | TMS |
8 | GND | GND | NC / EXTb / TDI | NC / TDI | GND | GND | GND |
9 | RTCK | RTCK | GNDDetect | GNDDetect | SWDCLK / TCK | TCK | TCK |
10 | GND | GND | nRESET | nRESET | GND | GND | GND |
11 | TCK | SWCLK / TCK | GND / TgtPwr+Cap | RTCK | TDO | RTCK | |
12 | GND | GND | TRACECLK | GND | SRST | GND | |
13 | EMU0 | EMU0 | GND / TgtPwr+Cap | SWO / TDO | VTRef | TDO | |
14 | EMU1 | EMU1 | TRACEDATA[0] | GND | GND | GND | |
15 | nRESET | GND | nRESET | nRESET | |||
16 | GND | TRACEDATA[1] | GND | GND | |||
17 | EMU2 | GND | NC / DBGRQ | NC | |||
18 | EMU3 | TRACEDATA[2] | GND | GND | |||
19 | EMU4 | GND | NC / DBGACK | NC | |||
20 | GND | TRACEDATA[3] | GND | GND |
> XDS 별 차이
> 자세한것은 https://software-dl.ti.com/ccs/esd/documents/xdsdebugprobes/emu_jtag_connectors.html 를 보셔요
6. 디버그 할때 나는 에러
1) "C28xx: AutoRun: Target not run as breakpoint could not be set: Error enabling this function: This task cannot be accomplished with the existing AET resources"
> Break point 를 줄여 주면 해결 될 수 도 있읍니다. 없애든 1개 만 하든
7. Graph 보기
> 디버그 할때 변수 값을 Graph 로 볼수 있읍니다.
1) View > Graph
2) 나오는 "New Graph" 창에서, 보고자 하는 변수 이름을 콤마"," 로 구분하여 써 줍니다.
3) 그라프 창이 위쪽에 생기는데, 디버그 할때 보기 편하게 아래쪽에 땡겨 놓읍니다.
4) 그라프 창은 여러개 만들수 있읍니다.
8. Download (Flash ) 하기
> 디버그는 일반적으로 PC 에 있는 FW 파일을 TMS320 RAM 영역에 Write 하고 실행 합니다.
> Flash 에 다운 로드 하시려면 다음과 같이 합니다.
> Run > Flash Project
===========================
다음 글은
3. UniFlash 로 ( CCS 없이 ) FW Download 하기- == https://bahk33.tistory.com/208
입니다.
============================
수고 하셨읍니다.
도움이 되셨으면, 댓글 부탁합니다. 댓글 하나에 힘이 됩니다.
고맙읍니다.
'개발 > embed' 카테고리의 다른 글
C2000Ware Sample code 를 다른곳으로 가져 가기 (0) | 2025.03.13 |
---|---|
UniFlash 로 (CCS 없이) FW Download 하기(Driver 설치) : TI TMS320 입문 (0) | 2025.03.12 |
CCS v20: 다른 ( 옛날 ) Compiler (CGT) 버전 설치 : TI TMS320 입문 (0) | 2025.03.11 |
CCS v20, C2000Ware, sprc191 (sprc097) Portable 설치, compile: TI TMS320 입문 (0) | 2025.03.07 |
NuMicroICP (다운로드 SW) 설치 및 Nuvoton Download (0) | 2025.02.20 |