CDK 調試窗口配置參考
1、Debug配置
1)Use ICE。使用仿真器,請選擇ICE。
2)Stop at
main。進入debug模式后,代碼直接運行并停在main()。
3)Soft
Reset。軟復位內容由CPU決定。目前APT所有芯片的軟復位內容都為0xabcd1234。
4)Perform Reset after
Load。進入debug模(mo)式(shi)后,執行一(yi)次復位操(cao)作。
2、ICE configuration
在(zai)Debug界面點擊Settings會進入ICE Configuration。如(ru)下圖。
1)ICE
Clock。ICE的時鐘設置建議不超過芯片上電后運行的最(zui)慢時(shi)鐘的1/4。
2)Enable debug print。參考“如何使用CDK的serialpane"。
3)Reset
After Connect。連接上后進行軟復位操作。
4)Update。查看調試器和芯片的連接情況。
5)Download to
Flash。進入調(diao)試模(mo)式前(qian),把(ba)代碼download到芯片Flash內。
如(ru)果您(nin)的(de)電腦使用了如(ru)360之類的(de)殺毒(du)軟件,除了在(zai)安(an)(an)裝(zhuang)過程中允許CDK的(de)操作之外,安(an)(an)裝(zhuang)之后,必須將整個CDK安(an)(an)裝(zhuang)目錄加(jia)入到殺毒(du)軟件的(de)白名單區。
在一些(xie)(xie)工程(cheng)中,存在一些(xie)(xie)條件編譯(yi)(如(ru)下圖)。
當多個文件同時(shi)(shi)需要這個條(tiao)件編譯的時(shi)(shi)候,可(ke)以通過設置全局條(tiao)件編譯統一(yi)管理(li)。
有(you)時候build后會出現(xian)下列錯誤(wu),提示某些函數(shu)沒(mei)有(you)被定義。但(dan)在CDK環境下,卻可以通過goto implementation定位到(dao)。
出現(xian)這個提示(shi),說明不(bu)是函(han)數聲明的(de)問題,而是連接器沒有找到(dao)對應函(han)數的(de)目標文(wen)件。
這時候,您需(xu)要就(jiu)檢查
1、link type。確保選中(zhong)了“start-group"
2、包含這個函數(shu)的文(wen)件加(jia)入工程的方(fang)式。
如果(guo)只是把文件copy到工程目錄(lu),即使(shi)reload all project,這個文件對工程來說(shuo)仍然可能是不可見的。您(nin)需要通過工程視圖右鍵“Add an Exsiting File” 或者 “Add Source Folder”。
3、查看相關函(han)數(shu)是否被(bei)宏定義包裹。
如果(guo)是,需要(yao)對(dui)相應的宏進行定(ding)義。
根據CDK的提示信息(xi),列舉如(ru)下:
1、如果CDK提示如下,說明您的(de)的(de)仿真(zhen)器沒有和PC連接。
2、如果CDK提示如上,說明您的仿真器沒有和芯片連接。
請檢查:
● 仿真(zhen)器和芯(xin)片的物理(li)連(lian)接是否(fou)穩定(ding)。
● 芯片供電是否(fou)正(zheng)常。
● 對于一些有多組SWD口可以(yi)選擇的芯片,請檢查實際連接的SWD口是否(fou)和user option中的設置一致。
● 芯片的SWD口有(you)沒有(you)被誤改(gai)為(wei)非SWD功能(neng)。如(ru)果(guo)您曾經連接(jie)成功,而后(hou)失敗,很(hen)可能(neng)是這種情況
3、如果(guo)CDK提示如上,說明您的仿真(zhen)器(qi)處于非正常狀態。通(tong)(tong)常可(ke)以(yi)通(tong)(tong)過(guo)復位仿真(zhen)芯片或是給仿真(zhen)器(qi)重新上電解決。
4、如果(guo)CDK提(ti)示如上,CDK編(bian)譯正常,但不能Debug。說(shuo)明(ming)您的(de)(de)仿真(zhen)(zhen)器(qi)連(lian)接是正常的(de)(de),但殺毒軟(ruan)件(jian)(jian)把CDK的(de)(de)仿真(zhen)(zhen)bin文(wen)件(jian)(jian)清(qing)除了,要恢復且把殺毒軟(ruan)件(jian)(jian)清(qing)除選項配(pei)置(zhi)不要清(qing)CDK相關文(wen)件(jian)(jian)才行。
提(ti)示(shi)找不(bu)到(dao)flash 算(suan)法,如下圖所示(shi)。
您(nin)需要做兩個(ge)操(cao)作。
● Flash Management,將對(dui)應芯片的(de)Flash算法加入到CDK的(de)庫中。
● 點擊(ji)CKD菜單欄中的“Flash” -> "Flash Management..." -> "Add" 選擇代碼(ma)庫文(wen)件目(mu)錄下 “..FLASHDOWNAPT32F102_FLASHDOWN.elf ” 文(wen)件。注(zhu)意:此(ci)示例(li)是(shi)添加APT32F102的Flash文(wen)件,如(ru)果(guo)是(shi)其他系列產品操作流程一樣。
=》
● 選擇(ze)工程所用到的Flash 算法(fa)。
● 點(dian)(dian)擊(ji)(ji)CKD菜單欄中的“Project” -> "Open Active Project Options..."(或者點(dian)(dian)擊(ji)(ji)Project View欄中的快捷(jie)按鈕),在Project Settings對話框中點(dian)(dian)擊(ji)(ji)“Flash” ->"Add",彈出對話框選中"apt32f102"點(dian)(dian)擊(ji)(ji)“Add”再點(dian)(dian)“OK”退出,重(zhong)新編(bian)譯即可通過(guo)。
當調試器提示(shi) 校驗失敗時,
您可(ke)以(yi)嘗試:
1、重新(xin)下(xia)載
2、嘗試(shi)flash erase
3、檢查是否加載了正確的(de)flash算法文件。
如果上(shang)述(shu)嘗試都不成功,請更換芯(xin)片。
正常(chang)情況下,開(kai)發板通電后狀態如(ru)下圖(tu)。
現(xian)將led指示狀態(tai)說明如下(xia)。
1、藍燈常亮(liang):仿真芯(xin)片(pian)空閑。
2、藍燈閃爍:仿真芯(xin)片busy。
3、藍(lan)燈不亮,上方紅燈閃爍,指示錯誤。此(ci)時,檢查
● 電腦(nao)是否(fou)同時連接兩(liang)塊開(kai)發板。這樣會(hui)有(you)沖突。
● 電腦(nao)是否處于開(kai)機狀態。
4、右(you)側(ce)芯(xin)片端紅色燈亮(liang):芯(xin)片供電(dian)正常。
驅(qu)動代(dai)碼更新(xin)(xin)后,工程視圖中會出現紅色的問(wen)號。如下圖所示。這是因為驅(qu)動代(dai)碼的版本號更新(xin)(xin)了。
解(jie)決方法:
1、switch SDK,選擇最新版本(ben)。
2、Reload All Projects
CDK支持(chi)兩種形(xing)式的(de)串口通信。可以用來做為簡單的(de)調試輸出和輸入。
形式 | 占用芯片串口資源 | 需要CPU支持 | 輸出 | 輸入 | 非調試界面使用 | |
1 | Debug(print) | 不占用 | 依賴 (CK801支持,CK802不支持) | 支持 | 不支持 | 不行 |
2 | Uart # | 占用,需要將芯片UART口通過串口USB轉接板連接到PC | 不依賴 | 支持 | 支持 | 可以 |
使用方法如下:
1、Debug(print)
● Enable debug print
● 工程配置Compiler tab下(xia)加入(ru)Define "DBG_PRINT2PC=0;" 或者去掉這個(ge)define。
● 打開(kai)view
2、Uart #
● 工(gong)程配(pei)置 Compilertab下加入Define "DBG_PRINT2PC=1;"
● 打開view(同Debugprint)
● 配置(zhi)串(chuan)口(kou)(COM口(kou),波特率等)