andescore n8...

98
AndesCore N8 SoC週邊晶片驅動程式開發產學合作報告書

Upload: others

Post on 22-Oct-2020

9 views

Category:

Documents


0 download

TRANSCRIPT

  • AndesCore N8 SoC週邊晶片驅動程式開發產學合作報告書

  • 基本專案建置、編譯與虛擬平台(VEP)執行

  • 主題 • AndeSight(MCU) 概述 • 開啟C/C++ Perspective建置專案 • 編寫程式 • 編譯、組譯、連結 • 執行程式 • 除錯

  • 主題 • AndeSight(MCU) 概述 • 開啟C/C++ Perspective建置專案 • 編寫程式 • 編譯、組譯、連結 • 執行程式 • 除錯

  • AndeSight MCU 使用者介面

    工具鍊(含程式庫、簡易作業系統)

    (除錯、性能量測與即時燒錄)

    透過AICE與工作平台連線

    透過模擬器與虛擬工作平台連線

  • 主題 • AndeSight(MCU) 概述 • 開啟C/C++ Perspective建置專案 • 編寫程式 • 編譯、組譯、連結 • 執行程式

  • 開啟C/C++Perspective • 點擊桌面右上角 的符號出現以下視窗

  • 建置專案 • 選擇程式語言、工作平台、系統晶片

  • 建置專案 • 選擇程式語言、工作平台、系統晶片

  • 建置專案 • 另一種專案建置的方法

  • 建置專案 • 輸入專案名稱、選擇專案型態、及工具鍊

  • 建置專案 • 完成新專案建置

    – 新專案結構如下

  • 主題 • AndeSight(MCU) 概述 • 開啟C/C++ Perspective建置專案 • 編寫程式 • 編譯、組譯、連結 • 執行程式

  • 編輯程式 • 建置程式檔

  • 編輯程式 • 開啟程式編輯器並編輯程式碼

    #include void delay(unsigned int time) { while(time>0) time--; }

    int main(void) { int i; for (i=0; i

  • 主題 • AndeSight(MCU) 概述 • 開啟C/C++ Perspective建置專案 • 編寫程式 • 編譯、組譯、連結 • 執行程式

  • 編譯、組譯、連結 • 開啟編譯流程

  • 編譯、組譯、連結 • 編譯連結流程顯示

    – 產生可執行檔(N8_Hello.adx)

  • 編譯、組譯、連結 • 編譯的錯誤訊息

  • 主題 • AndeSight(MCU) 概述 • 開啟C/C++ Perspective建置專案 • 編寫程式 • 編譯、組譯、連結 • 執行程式

  • 執行程式 • 各式執行方法

  • 執行程式 • 執行結果

  • 複習與實作演練

    • 建置專案顯示自己的姓名、身份証字號等。 • 以不同的工作平台及設定正確的工具鍊執行上面的程式。

    • 請設置編譯器進行最佳化使程式碼變成(1)最小(2)執行最快。

    • 當程式碼無誤時若無法在console中顯示執行結果,可能的原因之一是工作平台的系統呼叫設定有誤請敘述解決方法。

  • 評量檢核 • 是否已建置新專案。 • 是否可完成編譯、組譯、連結成可執行檔。 • 是否可虛擬模擬平台或實體平台執行。

  • 除錯器(Debuger)

  • 主題 • 除錯環境設定 • 除錯開始與中斷點設定 • 重新或停止除錯 • 線上除錯(AICE)

  • 主題 • 除錯環境設定 • 除錯開始與中斷點設定 • 重新或停止除錯 • 線上除錯(AICE)

  • 除錯環境設定 • 開啟除錯設定

    – 可經由執行的選項進行除錯設定 – 可由除錯工具圖示選項進入除錯設定

  • 除錯環境設定 • 新建除錯設定檔

  • 除錯環境設定 • 新建除錯設定檔

  • 除錯環境設定 • 新建除錯設定檔"N8_Hello Debug"

  • 除錯環境設定 • 除錯程式設定

  • 除錯環境設定 • 除錯器與工作平台連線設定

  • 除錯開始與中斷點設定 • 除錯環境設定 • 除錯開始與中斷點設定 • 重新或停止除錯 • 線上除錯(AICE)

  • 除錯開始與中斷點設定 除錯器各式功能

    Terminate and Relaunch

    Resume (F8)

    Suspend

    Terminate (CRTL + F2)

    Step into (F5)

    Step Over (F6)

    Step Return (F7)

    Instruction Stepping Mode

    重新執行 回復繼續執行

    暫停 終止 進入函數執行

    單步執

    行 回上一

    層執行 單步執行

    模式

  • 除錯開始與中斷點設定 中斷點設定

  • 除錯開始與中斷點設定 • 開始除錯程式停留在第一個中斷點

  • 除錯開始與中斷點設定 • 全速執行遇到中斷點停下

  • 除錯開始與中斷點設定 • 單步執行進入副程式

  • 除錯開始與中斷點設定 • 觀察呼叫堆疊關係與記憶體變數

  • 除錯開始與中斷點設定 • 點擊"Step Return"從副程式回到主程式

  • 除錯開始與中斷點設定 • 點擊"Step Return"從副程式回到主程式

  • 除錯開始與中斷點設定 • 除錯環境設定 • 除錯開始與中斷點設定 • 重新或停止除錯 • 線上除錯(AICE)

  • 除錯開始與中斷點設定 • "Terminate and Relaunch"重新執行及”Terminate”終止執行

  • 除錯開始與中斷點設定 • 除錯環境設定 • 除錯開始與中斷點設定 • 重新或停止除錯 • 線上除錯(AICE)

  • 線上除錯(AICE)工具基本工作原理 • 開發主機、AICE與工作平台的工作原理

    Andes 線上模擬器工作環境 (擷取自AndeShape_AICE-MCU_UM041_V1.3.pdf)

  • AICEMCU 基本原理 • AICE-MCUTM燈號意義

    LED顯示方式 意義 Power LED 亮 AICE-MCU™ 電源指示燈(插到PC) ACT LED 閃爍 AICE-MCU™ 與工作平台正在傳輸資料 LINK LED亮 系統錯誤 (超過連線時間). DONE LED 亮 JTAG 已接上準備除錯 DONE LED 閃爍 偵測不到系統核心

  • 回顧與實作演練 • 請將第一個中斷點設於_start,並觀察其位址及使用單步執行的 方式執行至少10個以上指令。

    • 續上題將第二及第三個中斷點分別設於main( )及delay( ),並於第一題中以全速執行的方式執行之。

    • 續上題,紀錄變數cnt所在位址。

  • 評量檢核 • 是否可規劃除錯程序的第一個停止點。 • 是否能設定程式停止點。 • 是否可觀察CPU內部暫存器的內存值。 • 是否可各週邊元件內部內部暫存器的內存值。 • 是否可觀察程式變數及各記憶體內含值。 • 是否可隨時獲悉程式執行點。

  • 硬體工作平台安裝與虛擬模擬平台建置

  • 主題 • AndeShapeTM ADP-WT59F064安裝設定與使用 • AndeShape™ ADP-XC5FF676安裝與使用 • Chip profile 建置設定與安裝

  • 主題 • AndeShapeTM ADP-WT59F064安裝設定與使用 • AndeShape™ ADP-XC5FF676安裝與使用 • Chip profile 建置設定與安裝

  • AndeShapeTM ADP-WT59F0640安裝 • 安裝燒錄程式"ISP_WT59F064.exe“

    – 拷貝至AndeSight 安裝目錄"Andestech\AndeSight201MCU\target\WT59F064“

    • 安裝"targetboard.properties" – 拷貝至AndeSight 安裝目錄

    "Andestech\AndeSight201MCU\target\WT59F064“ • 安裝WT59F064.regs"

    – 拷貝至"Andestech\AndeSight201MCU\SoC“ • 安裝"memory.mem “

    – 拷貝至"Andestech\AndeSight201MCU\MemoryMap“

  • AICE MCU與工作平台連線安裝 • AndeShapeTM ADP-WT59F064 接線方式

  • AICE MCU與工作平台連線安裝 • 透過AICE-MCUTM與AndeShapeTM ADP-

    WT59F064連線完成

  • 主題 • AndeShapeTM ADP-WT59F064安裝設定與使用 • AndeShape™ ADP-XC5FF676安裝與使用 • Chip profile設定

  • AndeShape™ ADP-XC5FF676安裝與使用 • 透過AICE-MCUTM與AndeShapeTM ADP-XC5連線完成

  • 主題 • AndeShapeTM ADP-WT59F064安裝設定與使用 • AndeShape™ ADP-XC5FF676安裝與使用 • Chip profile 建置設定與安裝

  • Chip profile設定 • 無論實體或模擬工作平台皆須安裝到目標平台管理器中(Target Management)

    • 準備開啟Chip Profile Editor

  • Chip profile設定 • 開啟Chip Profile選單

  • Chip profile設定 • 選擇系統提供的工作平台當樣本

  • Chip profile設定 • 選擇工作平目錄存放放位置

  • Chip profile設定 • 在專案瀏覽視窗中出現新建工作平台

  • Chip profile設定 • 新建平台的特性(規格)

  • Chip profile設定 • 模擬平台設定檔ADP-XC5-for-N801-S-16M.vep

  • Chip profile設定 • 模擬平台設定檔ADP-XC5-for-N1033A-

    S.vep.vep(STD V2.0.0)

  • Chip profile設定 • 工作平台位址空間配置檔AGP101-16MB-memory.mem

  • Chip profile設定 • 工作平台週邊輸出入單元暫存器位址空間配置檔

    AG101P-16MB.regs

  • Chip profile設定 • 工作平台修改

  • Target安裝 • 工作平台安裝

    – 工作平台一但修改就必須重新安裝

  • 回顧與實作演練

    • 試以ADP-AG101-4GB-N1033A-S 為範本建置一新的平台到工作平台管理器中。

    • 試以新建虛擬模擬平台執行JPEG專案(位於\Andestech\AndeSight201MCU\demo\ STD_JPEG.tgz)

  • 硬體工作平台安裝

  • 主題 • AndeShapeTM ADP-WT59F064安裝設定與使用 • AndeShape™ ADP-XC5FF676安裝設定與使用

  • 主題 • AndeShapeTM ADP-WT59F064安裝設定與使用 • AndeShape™ ADP-XC5FF676安裝設定與使用

  • AndeShapeTM ADP-WT59F064 • 安裝燒錄程式"ISP_WT59F064.exe“

    – 拷貝至AndeSight 安裝目錄"Andestech\AndeSight201MCU\target\WT59F064“

    • 安裝"targetboard.properties" – 拷貝至AndeSight 安裝目錄

    "Andestech\AndeSight201MCU\target\WT59F064“ • 安裝WT59F064.regs"

    – 拷貝至"Andestech\AndeSight201MCU\SoC“ • 安裝"memory.map “

    – 拷貝至"Andestech\AndeSight201MCU\MemoryMap“

  • 除錯工具基本工作原理 • AICE-MCUTM燈號意義

    LED顯示方式 意義 Power LED 亮 AICE-MCU™ 電源指示燈(插到PC) ACT LED 閃爍 AICE-MCU™ 與工作平台正在傳輸資料 LINK LED亮 系統錯誤 (超過連線時間). DONE LED 亮 JTAG 已接上準備除錯 DONE LED 閃爍 偵測不到系統核心

  • 主題 • 線上模擬器基本工作原理 • AICE MCU與工作平台連線安裝

  • AICE MCU與工作平台連線安裝 • 以AndeShapeTM ADP-XC5FF676(簡稱XC5)為例

    – Step 1. 將AICE-MCUTM透過 USB與開發主機連線,此時主機會供應電源,因此"Power LED"會亮起。(請注意工作平台未完成啟動前AndeSigtTM不宜啟動ICEman)

    – Step 2. 將AICE-MCUTM透過JTAG轉接板與工作平台連線。 – Step 3. 將工作平台接上電源打開電源開關。

  • 主題 • AndeShapeTM ADP-WT59F064安裝設定與使用 • AndeShape™ ADP-XC5FF676安裝設定與使用

  • 主題 • 線上模擬器基本工作原理 • AICE MCU與工作平台連線安裝

  • AICE MCU與工作平台連線安裝 • 以AndeShapeTM ADP-XC5FF676(簡稱XC5)為例

    – Step 4.點擊“Yes”選項完成連線

  • 回顧與實作演練

    • 實作AICE、PC、ADPX-C5連線 • 實際以七段顯示器為例下載至ADPX-C5進行除錯。

  • AndeShape™ ADP-WT59F064

  • 主題 • AndeShape™ ADP-WT59F064微處理器開發平台

    • WT59F064簡介 • WT59F064位址空間配置 • 系統重置

  • 主題 • AndeShape™ ADP-WT59F064微處理器開發平台

    • WT59F064簡介 • WT59F064位址空間配置 • 系統重置

  • AndeShape™ ADP-WT59F064微處理器開發平台

    • 系統核心WT59F064

  • 主題 • AndeShape™ ADP-WT59F064微處理器開發平台

    • WT59F064簡介 • WT59F064位址空間配置

  • WT59F064

  • WT59F064 • 32位元精簡指令集CPU核心-WT59F064

    – 工作頻率可設為36MHz, 24MHz, 12MHz, 6MHz 及1MHz • 記憶體:

    – 64KB快取記憶體容量 memory: 64K bytes (16K * 32) – 8KB隨機記憶體

    • 直接記憶體存取(DMA) 。 • 通訊介面:

    – 2個主/從式I2C介面 (SM bus) ,通訊速度可達400KHz – 2 個主/從式SPI介面,通訊速度可達6MHz – 4 個通訊速度可達1.5MHz 的萬用非同步串列傳輸單元 – 1 消費性電子控制介面 (CEC) (with 16 bytes R/W buffer and auto-

    sending “ACK” bit) – 1個取樣頻率達192KHz主從式I2S介面

  • WT59F064 • 六個16位元計時器 • 八個可調週期的12位元解析度PWM輸出接腳 • 具數位慮波的紅外線接收器 • 電源重置,低電源電壓重置, 與偵測。 • 12個12位元解析度的A/D通道,其中一個固定作為溫度感測器用。

    • Support build in ISP & ICE mode (JTAG mode) • 三態輸出結構,輸入部分可設為提升高態或下拉到低態。 • 看門狗電路(可使用系統時脈或內部128KHz的RC石英振盪器) • 寬廣的工作電壓範圍: 2.0V ~ 3.6V

  • WT59F064

    • WT59F064各式包裝的週邊元件數

    週邊元件 LQFP100

    LQFP64

    LQFP48

    I2C 2 2 2 SPI 2 2 2 UART 4 3 3 CEC 1 1 1 IR 1 1 1 I2S 1 1 1 PWM 8 8 8 TMR Capture/Match 6 5 3

    ADC 12CH 12CH 11CH

    Temperature Sensor 1 1 1

    GPIO 78 47 33

  • 主題 • AndeShape™ ADP-WT59F064微處理器開發平台

    • WT59F064簡介 • WT59F064位址空間配置 • 系統重置

  • WT59F064 • WT59F064微處理器記憶體空間映對圖(Memory Map)

    Index Function Description 0x0000_0000~0x0000_FFFF 64K Flash Memory ILM Bus 0x0001_0000~0x000F_FFFF Reserved 0x0010_0000~0x0010_1FFF 8K SRAM DLM Bus 0x0010_2000~0x001F_5BFF Reserved 0x001F_5C00~0x001F_5FFF PWM0 0x001F_6000~0x001F_63FF PWM1 0x001F_6400~0x001F_67FF Reserved 0x001F_6800~0x001F_6BFF GPIO A-E 0x001F_6C00~0x001F_FFFF Reserved

  • WT59F064 • WT59F064微處理器記憶體空間映對圖(Memory Map)

    Index Function Description 0x0020_0000~0x0020_03FF System Control APB Bus 0x0020_0400~0x0020_07FF Flash Programmer 0x0020_0800~0x0020_0BFF WDT 0x0020_0C00~0x0020_0FFF Wake Up & Interrupt 0x0020_1000~0x0020_13FF RTC 0x0020_1400~0x0020_17FF CEC 0x0020_1800~0x0020_1BFF IR Receiver 0x0020_1C00~0x0020_1FFF Timer0 0x0020_2000~0x0020_23FF Timer1 0x0020_2400~0x0020_27FF Timer2 0x0020_2800~0x0020_2BFF Timer3 0x0020_2C00~0x0020_2FFF Timer4 0x0020_3000~0x0020_33FF Timer5

  • WT59F064 • WT59F064微處理器記憶體空間映對圖(Memory Map)

    Index Function Description 0x0020_3400~0x0020_37FF UART0 APB Bus 0x0020_3800~0x0020_3BFF UART1 0x0020_3C00~0x0020_3FFF UART2 0x0020_4000~0x0020_43FF UART3 0x0020_4400~0x0020_47FF SPI0 0x0020_4800~0x0020_4BFF SPI0_FIFO 0x0020_4C00~0x0020_4FFF SPI1 0x0020_5000~0x0020_53FF SPI1_FIFO 0x0020_5400~0x0020_57FF I2C0 0x0020_5800~0x0020_5BFF I2C1 0x0020_5C00~0x0020_63FF Reserved 0x0020_6400~0x0020_67FF ADC 0x0020_6800~0x0020_6BFF Reserved 0x0020_6C00~0x0020_6FFF I2S 0x0020_7000~0x002F_FFFF Reserved

  • WT59F064 • WT59F064微處理器記憶體空間映對圖(Memory Map)

    Index Function Description 0x0030_0000~0x0030_03FF DMA AHB Bus 0x0030_0400~0x003F_FFFF Reserved 0x0040_0000~0x00FF_FFFF Reserved Reserved

    Space

  • 主題 • AndeShape™ ADP-WT59F064微處理器開發平台

    • WT59F064簡介 • WT59F064位址空間配置 • 系統重置

  • WT59F064系統重置 • WT59F064的系統重置共有三種信號源(每樣重置信號皆持續16.36ms之久) – 硬體重置接腳(RSTB)、 – 看門狗重置、 – 低電源電壓重置(< 1.4),

    AndesCore N8 SoC週邊晶片驅動程式開發產學合作報告書AndesCore N8 SoC週邊晶片驅動程式開發產學合作報告書

    附件5AndeSight MCU V2.01基本專案建置、編譯與虛擬平台基本專案建置、編譯與虛擬平台(VEP)執行主題主題AndeSight MCU主題開啟C/C++Perspective建置專案建置專案建置專案建置專案建置專案主題編輯程式編輯程式主題編譯、組譯、連結編譯、組譯、連結編譯、組譯、連結主題執行程式執行程式複習與實作演練評量檢核

    AndeSight MCU V2.01基本除錯除錯器(Debuger)主題主題除錯環境設定除錯環境設定除錯環境設定除錯環境設定除錯環境設定除錯環境設定除錯開始與中斷點設定除錯開始與中斷點設定除錯開始與中斷點設定除錯開始與中斷點設定除錯開始與中斷點設定除錯開始與中斷點設定除錯開始與中斷點設定除錯開始與中斷點設定除錯開始與中斷點設定除錯開始與中斷點設定除錯開始與中斷點設定除錯開始與中斷點設定線上除錯(AICE)工具基本工作原理AICEMCU 基本原理回顧與實作演練評量檢核

    Andes ADP工作平台安裝硬體工作平台安裝與虛擬模擬平台建置主題主題AndeShapeTM ADP-WT59F0640安裝AICE MCU與工作平台連線安裝AICE MCU與工作平台連線安裝主題AndeShape™ ADP-XC5FF676安裝與使用主題Chip profile設定Chip profile設定Chip profile設定Chip profile設定Chip profile設定Chip profile設定Chip profile設定Chip profile設定Chip profile設定Chip profile設定Chip profile設定Target安裝回顧與實作演練

    AndeSight AICE MCU硬體工作平台安裝主題主題AndeShapeTM ADP-WT59F064除錯工具基本工作原理主題AICE MCU與工作平台連線安裝主題主題AICE MCU與工作平台連線安裝回顧與實作演練

    ADP-WT59F064介紹AndeShape™ ADP-WT59F064主題主題AndeShape™ ADP-WT59F064微處理器開發平台主題WT59F064WT59F064WT59F064WT59F064主題WT59F064WT59F064WT59F064WT59F064主題WT59F064系統重置