性色精品高清在线观看_黄色在线播放_人和牛交videos欧美_女同性爽爽爽在线观看_精品国模无码视频一二三区_丝袜足交福利网址视频_亚洲图片小说视频_蜜臀av无码日日_护士撩起裙子让我桶的动态图_国产精品videos三级

產(chǎn)品概述

  • 如何查看寄存器值

    在調(diào)試的過程中,時常需要查看寄存器值,以確認(rèn)配置是否正常寫入或者手動修改某些位。

    支持的交互方式列舉如下。

     無論是哪種交互方式,都要注意
    • 內(nèi)容只有在debug暫停時會更新
    • 寄存器對應(yīng)位的讀寫屬性,如只寫位通常只能讀到 "0“

    1、通過svc文件。將芯片對應(yīng)的svc文件加入到工程(部分驅(qū)動庫已經(jīng)包含在chip目錄下)。

    ● 打開Peripherals Pane的視圖

    ● 進(jìn)入調(diào)試界面,選擇要查看的外設(shè)。toggle點擊可以取消查看。

    ● 調(diào)試界面可以看到對應(yīng)外設(shè)的寄存器內(nèi)容


    2、通過Frame Pane中的Memory tab。如果您手中暫時沒有svc文件,也可以通過查看memory區(qū)內(nèi)容獲得寄存器狀態(tài)。

    ● 確保Frame Pane處于打開狀態(tài)。

    ● 對照芯片使用手冊,查詢外設(shè)基地址。

    ● 定位Memory地址。如下圖。寄存器地址為基址+Offset值。

  • 如何在CDK環(huán)境下加入math庫

    如果代碼要用math庫中的函數(shù),需要做

    1、文件中 #include

    2、修改link tab的內(nèi)容。將連接類型改成whole-archive,并在link flags中增加 -lm,如下圖所示:


  • CDK怎么恢復(fù)默認(rèn)窗口顯示配置

    如果不小心關(guān)閉了一些顯示窗口,比如調(diào)試時的匯編窗口、Frame Info窗口、Debugger窗口……,找不到恢復(fù)地方可以使用一鍵恢復(fù)默認(rèn)顯示。

    1.點擊菜單欄中的“Windows”,再點擊“Reset View to Defaults”

  • 如何把變量或函數(shù)放到指定位置

    如何實現(xiàn)變量的絕對定位


    CDK編譯環(huán)境使用了GNU C Complier,簡稱GCC。GCC使用ld腳本對代碼對象進(jìn)行鏈接,將多個輸入文件整合成一個輸出文件。

    在一些特殊的場合,我們需要對代碼中的一些內(nèi)容實現(xiàn)精確的定位。

    這里我們分兩個方面來介紹,分別是變量的絕對定位和函數(shù)(代碼段)的絕對定位。

  • 變量的絕對定位

    假設(shè)要實現(xiàn)將wData[] 放到程序存儲區(qū) 0x9000的位置。需要做以下兩個操作

    1. 首先在代碼文件中,將變量歸入某個section,這個例子里是FlashData段。

    __attribute__((section(".FlashData"))) const uint32_t wData[] = {0x1, 0x2}; //在這種絕對定位的情況下,關(guān)鍵字 const 不是必須的。

    < /FONT >

    < P >   2.  其次,要對ld文件進(jìn)行修改。

    增加以下內(nèi)容,將FlashData段起始地址定位在0x9000。

    .FlashData 0x9000:
    {
    . = ALIGN(0x4) ;
    *(.FlashData)
    *(.FlashData.*)
    } > ROM

    再重新編譯,就可以在map文件上看到:

  • 函數(shù)加載到RAM區(qū)

    有時候,會希望有一些代碼可以快速取址并運行。其中一個實現(xiàn)的方法是把函數(shù)定位到RAM區(qū)。

    假設(shè)要實現(xiàn)將function() 放到RAM。需要做以下兩個操作:

    1. 首先在代碼文件中,將函數(shù)歸入某個section,這個例子里是codeinram段。

    __attribute__((section(".codeinram"))) void function1(void);

    2.  其次,要對ld文件進(jìn)行修改。

  • 庫程序編譯報錯

    1、如果拿到的庫程序第一次編譯報錯,錯誤提示如下:



    這是因為庫發(fā)布時帶了一些編譯選項,點擊CDK“清除”快捷按鈕清除一下工程,再重新編譯即可。

  • 基本連接方法

    1、芯片放在燒錄器上燒寫時需關(guān)注芯片放置的位置,有沒有放反等等。

    2、芯片在板燒寫時,需要注意

    ● 燒寫需要用到的5個信號(VDD,VSS,SWD,SWCLK,RST)有沒有都連到燒寫器上

    ● VDD和VSS之間的電容有沒有超過100uF,超過的話可能需要在燒錄器這邊的VDD和VSS之間并個小電容(如500ohm)來對板子上的大電容進(jìn)行放電

    ● SWD,SWCLK和RST線的路徑上有沒有串電阻或并電容,這些都會影響燒寫時序。電路設(shè)計時要盡量避免這樣的電路。  如果應(yīng)用上不得不有這些阻容,電容<101pF,電阻<1Kohm

  • 錯誤提示

    1、 可能的原因是沒有選擇正確的下載文件,或者下載文件的長度為0。

  • CDK可以燒錄,燒錄器燒錄失敗

    當(dāng)遇到CDK環(huán)境下可以燒錄代碼,但是拿到燒錄器上反而提示燒錄失敗的現(xiàn)象時,請檢查:

    ihex文件的大小是不是超過了芯片的最大DROM size?

    如果超過了,再檢查ld文件,是不是出現(xiàn)了段定義錯誤?如下面ROM段的LENGTH。


    MEMORY

    {

    ROM(RX)   : ORIGIN = 0x00000000,  LENGTH = 64K

    RAM(RWX)  : ORIGIN = 0x20000000,  LENGTH = 4K

    }