CDK 調(diào)試窗口配置參考
1、Debug配置
1)Use ICE。使用仿真器,請(qǐng)選擇ICE。
2)Stop at
main。進(jìn)入debug模式后,代碼直接運(yùn)行并停在main()。
3)Soft
Reset。軟復(fù)位內(nèi)容由CPU決定。目前APT所有芯片的軟復(fù)位內(nèi)容都為0xabcd1234。
4)Perform Reset after
Load。進(jìn)入debug模式后,執(zhí)行一次復(fù)位操作。
2、ICE configuration
在Debug界面點(diǎn)擊Settings會(huì)進(jìn)入ICE Configuration。如下圖。
1)ICE
Clock。ICE的時(shí)鐘設(shè)置建議不超過(guò)芯片上電后運(yùn)行的最慢時(shí)鐘的1/4。
2)Enable debug print。參考“如何使用CDK的serialpane"。
3)Reset
After Connect。連接上后進(jìn)行軟復(fù)位操作。
4)Update。查看調(diào)試器和芯片的連接情況。
5)Download to
Flash。進(jìn)入調(diào)試模式前,把代碼download到芯片F(xiàn)lash內(nèi)。
如果您的電腦使用了如360之類的殺毒軟件,除了在安裝過(guò)程中允許CDK的操作之外,安裝之后,必須將整個(gè)CDK安裝目錄加入到殺毒軟件的白名單區(qū)。
在一些工程中,存在一些條件編譯(如下圖)。
當(dāng)多個(gè)文件同時(shí)需要這個(gè)條件編譯的時(shí)候,可以通過(guò)設(shè)置全局條件編譯統(tǒng)一管理。
有時(shí)候build后會(huì)出現(xiàn)下列錯(cuò)誤,提示某些函數(shù)沒(méi)有被定義。但在CDK環(huán)境下,卻可以通過(guò)goto implementation定位到。
出現(xiàn)這個(gè)提示,說(shuō)明不是函數(shù)聲明的問(wèn)題,而是連接器沒(méi)有找到對(duì)應(yīng)函數(shù)的目標(biāo)文件。
這時(shí)候,您需要就檢查
1、link type。確保選中了“start-group"
2、包含這個(gè)函數(shù)的文件加入工程的方式。
如果只是把文件copy到工程目錄,即使reload all project,這個(gè)文件對(duì)工程來(lái)說(shuō)仍然可能是不可見(jiàn)的。您需要通過(guò)工程視圖右鍵“Add an Exsiting File” 或者 “Add Source Folder”。
3、查看相關(guān)函數(shù)是否被宏定義包裹。
如果是,需要對(duì)相應(yīng)的宏進(jìn)行定義。
根據(jù)CDK的提示信息,列舉如下:
1、如果CDK提示如下,說(shuō)明您的的仿真器沒(méi)有和PC連接。
2、如果CDK提示如上,說(shuō)明您的仿真器沒(méi)有和芯片連接。
請(qǐng)檢查:
● 仿真器和芯片的物理連接是否穩(wěn)定。
● 芯片供電是否正常。
● 對(duì)于一些有多組SWD口可以選擇的芯片,請(qǐng)檢查實(shí)際連接的SWD口是否和user option中的設(shè)置一致。
● 芯片的SWD口有沒(méi)有被誤改為非SWD功能。如果您曾經(jīng)連接成功,而后失敗,很可能是這種情況
3、如果CDK提示如上,說(shuō)明您的仿真器處于非正常狀態(tài)。通常可以通過(guò)復(fù)位仿真芯片或是給仿真器重新上電解決。
4、如果CDK提示如上,CDK編譯正常,但不能Debug。說(shuō)明您的仿真器連接是正常的,但殺毒軟件把CDK的仿真bin文件清除了,要恢復(fù)且把殺毒軟件清除選項(xiàng)配置不要清CDK相關(guān)文件才行。
提示找不到flash 算法,如下圖所示。
您需要做兩個(gè)操作。
● Flash Management,將對(duì)應(yīng)芯片的Flash算法加入到CDK的庫(kù)中。
● 點(diǎn)擊CKD菜單欄中的“Flash” -> "Flash Management..." -> "Add" 選擇代碼庫(kù)文件目錄下 “..FLASHDOWNAPT32F102_FLASHDOWN.elf ” 文件。注意:此示例是添加APT32F102的Flash文件,如果是其他系列產(chǎn)品操作流程一樣。
=》
● 選擇工程所用到的Flash 算法。
● 點(diǎn)擊CKD菜單欄中的“Project” -> "Open Active Project Options..."(或者點(diǎn)擊Project View欄中的快捷按鈕),在Project Settings對(duì)話框中點(diǎn)擊“Flash” ->"Add",彈出對(duì)話框選中"apt32f102"點(diǎn)擊“Add”再點(diǎn)“OK”退出,重新編譯即可通過(guò)。
當(dāng)調(diào)試器提示 校驗(yàn)失敗時(shí),
您可以嘗試:
1、重新下載
2、嘗試flash erase
3、檢查是否加載了正確的flash算法文件。
如果上述嘗試都不成功,請(qǐng)更換芯片。
正常情況下,開(kāi)發(fā)板通電后狀態(tài)如下圖。
現(xiàn)將led指示狀態(tài)說(shuō)明如下。
1、藍(lán)燈常亮:仿真芯片空閑。
2、藍(lán)燈閃爍:仿真芯片busy。
3、藍(lán)燈不亮,上方紅燈閃爍,指示錯(cuò)誤。此時(shí),檢查
● 電腦是否同時(shí)連接兩塊開(kāi)發(fā)板。這樣會(huì)有沖突。
● 電腦是否處于開(kāi)機(jī)狀態(tài)。
4、右側(cè)芯片端紅色燈亮:芯片供電正常。
驅(qū)動(dòng)代碼更新后,工程視圖中會(huì)出現(xiàn)紅色的問(wèn)號(hào)。如下圖所示。這是因?yàn)轵?qū)動(dòng)代碼的版本號(hào)更新了。
解決方法:
1、switch SDK,選擇最新版本。
2、Reload All Projects
CDK支持兩種形式的串口通信。可以用來(lái)做為簡(jiǎn)單的調(diào)試輸出和輸入。
形式 | 占用芯片串口資源 | 需要CPU支持 | 輸出 | 輸入 | 非調(diào)試界面使用 | |
1 | Debug(print) | 不占用 | 依賴 (CK801支持,CK802不支持) | 支持 | 不支持 | 不行 |
2 | Uart # | 占用,需要將芯片UART口通過(guò)串口USB轉(zhuǎn)接板連接到PC | 不依賴 | 支持 | 支持 | 可以 |
使用方法如下:
1、Debug(print)
● Enable debug print
● 工程配置Compiler tab下加入Define "DBG_PRINT2PC=0;" 或者去掉這個(gè)define。
● 打開(kāi)view
2、Uart #
● 工程配置 Compilertab下加入Define "DBG_PRINT2PC=1;"
● 打開(kāi)view(同Debugprint)
● 配置串口(COM口,波特率等)