zoukankan      html  css  js  c++  java
  • NUC972学习历程之NUWRITER使用说明以及烧录模式的说明

    3.1 簡介
    Nu-Writer 工具能幫助使用者透過 USB ISP模式, 將Image檔案放入儲存體中, 例如:SPI Flash設備或 NAND Flash設備.
    3.2 驅動程式安裝
    Nu-Writer 必須在電腦中安裝VCOM驅動程式才能使用Nu-Writer工具. 請依據下列步驟來安裝VCOM驅動程式:
    1. 將電腦與NUC970系列晶片開發板透過USB cable連接起來後.在電腦中執行WinUSB4NuVCOM.exe 開始安裝驅動程式. (在Linux BSP的Tools目錄中)
    2. 開啟NUC970系列晶片開發板的電源之後, Windows 會發現新的設備, 然後會要求你安裝驅動程式.

    3. 按下 “Next”. 這個畫面告訴你即將要安裝WinUSB4NuVCOM 1.0 驅動程式. 如下圖:

    4. 選擇使用者想要安裝的路徑或使用預設的路徑, 確定以後按下“Next”. 如下圖:

    5. 按下 “Next”. 如下圖:

    6. 按下 “Install”. 如下圖:

     

    7. 按下 “Finish”, 完成VCOM驅動程式的安裝. 如下圖:

    8. 如果VCOM驅動程式是安裝成功, 可以在”Device Manager”中看到“WinUSB driver (Nuvoton VCOM)”. 如下圖:

    3.3 USB ISP 模式設置
    NUC970系列晶片提供jumpers 去選擇開機的方法. 選擇USB ISP 模式, 則 PA0和PA1 必須設定為低電平 . 其他開機設定可以參考下表:

    開啟NUC970系列晶片開發板的電源並且設定為USB ISP模式和開啟電腦上的Nu-Writer 工具, 即可開始使用.
    注意:如果電腦沒有找到VCOM驅動程式則Nu-Writer工具無法使用.

    3.4 芯片設置
    解開NuWriter-xxxxxxxx.7z(在BSP/Tools目錄下)壓縮包, 執行 “nuwriter.exe”, 第一個畫面如下.
    選擇目前晶片, 目前支援NUC970系列 (NUC972, NUC976… 等)芯片. 如果選擇NUC970系列芯片, 則必須選擇DDR參數, DDR參數依據NUC970系列芯片的PID來選擇. 選擇完成後按下 “Continue”, 即可開始使用Nu-Writer工具.

    DDR/SRAM 模式
    DDR/SRAM模式可以將Image檔案直接下載到DDR 或 SRAM 記憶體中. 操作步驟如下:
    1. 選擇 “DDR/SRAM”模式.
    2. 選擇Image檔案.
    3. 輸入Image檔案放在DDR/SRAM的位址. 注意:若要傳輸到 DDR 中, 位址必須介於0x00~0x1F00000(31MB).
    4. 選擇”Download only”或是選擇”Download and run”
    5. 按下 “Download.

    DDR/SRAM模式可以將Image檔案和Divice Tree檔案(*.dtb)一起直接下載到DDR 或 SRAM 記憶體中. 操作步驟如下:
    1. 選擇 “DDR/SRAM”模式.
    2. DTB 檔案打開.
    3. 選擇 DTB檔案
    4. 輸入Image檔案放在DDR/SRAM的位址. 注意:不要被Image 檔案覆蓋.
    5. 選擇Image檔案.
    6. 輸入Image檔案放在DDR/SRAM的位址. 注意:若要傳輸到 DDR 中, 位址必須介於0x00~0x1F00000(31MB).
    7. 選擇”Download only”或是選擇”Download and run”
    8. 按下 “Download.

    eMMC 模式
    eMMC 模式 可以將Image檔案燒入到eMMC中,並且將Image檔案型態設定為Data、Environment、uBoot 、 Pack,四種型態中的其中一種 。

    新增Image檔案
    1. 選擇 “eMMC” 模式, 表格只會紀錄當次燒錄的Image檔案,並不會讀取eMMC Flash中Image的資料。
    2. 輸入 image檔案資料:
     Image Name
     Image Type
     Image encrypt
     Image execute address
     Image start offset
    3. 按下 “Burn”。
    4. 等待進度表完成後,表格將會顯示這次燒錄完成的Image檔案。在完成以後,如果按下“Verify”即可確認燒入資料是否正確。

    讀取eMMC
    依照下列步驟即可以完成新增Image檔案:
    1. 選擇 “eMMC” 模式。
    2. 按下 “Read”。
    3. 輸入儲存的檔案。
    4. 輸入讀回來的sectors(1 sector is 512 bytes) 。
     Start : Sector 起始位置
     Length : Sector 長度

    5. 按下 “OK”。即可完成。

    格式化 (FAT32)
    依照下列步驟即可以完成eMMC格式化:
    1. 選擇 “eMMC” 模式。
    2. 按下 “Format”。
    3. 輸入保留空間(單位為512bytes)。注意:修改此參數可能造成Image或FAT32格式損毀。
    4. 按下 “OK”。即可完成。

    SPI 模式
    SPI 模式 可以將Image檔案燒入到SPI Flash中, 並且將Image檔案型態設定為Data、Environment、uBoot 、 Pack, 四種型態中的其中一種 。
    3.7.1 新增Image
    依照下列步驟即可以完成新增Image檔案:
    1. 選擇 “SPI” 模式, 表格只會紀錄當次燒錄的Image檔案,並不會讀取SPI Flash中Image的資料。
    2. 輸入 image檔案資料:
     Image Name 選擇要燒錄的 loader 檔案
     Image Type 選擇燒錄 Image的型態
     Image encrypt 設置是否需AES加密, 若是, 設置秘鑰文件
     Image execute address 設置 loader 執行位置, 依編譯設定而輸入.
     Image start offset 燒錄起始塊位置

    3. 按下 “Burn”.
    4. 等待進度表完成. 在完成以後如果按下“Verify”即可確認燒入資料是否正確.

    3.7.2 讀取Image
    依照下列步驟即可以完成讀取Image:
    1. 選擇 “SPI” 模式。
    2. 按下 “Read”。
    3. 選擇要儲存檔案的位置。
    4. 輸入讀回來的blocks,Block 大小是依據SPI FLASH規格所決定。
     Start : Block 起始位置
     Length : Block 長度
    5. 按下 “OK”, 即可完成Image讀取。

    3.7.3 移除 Image
    依照下列步驟即可以完成移除Image檔案:
    1. 選擇 “SPI” 模式。
    2. 按下 “Erase all”,即可完成移除Image。

    NAND 模式
    NAND模式 可以將Image檔案燒入到NAND Flash中, 並且將Image檔案型態設定為Data、Environment、uBoot 、 FS、Pack, 五種型態中的其中一種 . FS型態目前支援YAFFS2與UBIFS兩種檔案系統格式。這兩種格式都可以選擇FS型態,將做好的Image存放到NAND Flash對應的位址。讓使用者可以透過uBoot或Linux來讀取檔案系統。YAFFS2與UBIFS的Image檔的製作可以參考3.8.4章節
    3.8.1 新增Image
    依照下列步驟即可以完成新增Image檔案:
    1. 選擇 “NAND” 模式, 表格只會紀錄當次燒錄的Image檔案,並不會讀取NAND Flash中Image的資料.
    2. 按下 “Add new”. (當選擇NAND模式時, 預設為“Add new”頁面)
    3. 輸入 image檔案資料:
     Image Name 選擇要燒錄的 loader 檔案
     Image Type 選擇燒錄 Image的型態
     Image encrypt 設置是否需AES加密, 若是, 設置秘鑰文件
     Image execute address 設置 loader 執行位置, 依編譯設定輸入.
     Image start offset 燒錄起始塊位置
    4. 按下 “Burn”.
    5. 等待進度表完成. 在完成以後如果按下“Verify”即可確認燒入資料是否正確

    讀取Image
    依照下列步驟即可以完成讀取Image:
    1. 選擇 “NAND” 模式。
    2. 按下 “Read”。
    3. 選擇要儲存檔案的位置。
    4. 輸入讀回來的blocks,Block 大小是依據NAND FLASH規格所決定。
     Start : Block 起始位置
     Length : Block 長度
    5. 按下 “OK”, 即可完成Image讀取。

    移除 Image
    依照下列步驟即可以完成移除Image檔案:
    1. 選擇 “NAND” 模式。

    2. 按下 “Erase all”,即可完成移除Image。
    3.8.4 製作File System Image
    這裡說明如何製作YAFFS2(yaffs2的tag儲存在DATA區塊中)和UBIFS,這兩種File System都可以使用DATA型態燒入到 NAND flash中,依據下列步驟即可完成製作File System Image。
    1. YAFFS2製作In-band tags Image命令如下:(yaffs2的tag儲存在DATA區塊中)

    --inband-tags:yaffs2的tag儲存在DATA區塊。
    -p:設定NAND Flash頁的大小(Page Size)。
    即可將rootfs資料夾壓縮成rootfs_yaffs2.img,再透過NuWriter放到相對應NAND Flash的位址。輸入下列命令即可將YAFFS2 inband-tags 檔案系統掛在flash資料夾中:

    YAFFS2的指令可以在yaffs2utils套件中找到。YAFFS2文件系統設置可以參考5.3.4章節。

    UBIFS製作Image命令如下:

    mkfs.ubifs 使用的參數說明如下: -F :設定檔案系統未使用的空間優先mount. -x: 壓縮的格式,"lzo", "favor_lzo", "zlib" 或 "none" (預設:"lzo") -m:最小的I/O操作的大小,也就是NAND Flash一個頁的大小。 -e:邏輯擦除塊的大小(logical erase block size)。因為實體擦除塊(PEB)為128KiB,所以邏輯擦除塊設定為124KiB=126976。 -c:最大的擦除塊的號碼(maximum logical erase block count)。
    -o:輸出檔案。
    ubinize使用的參數說明名如下:
    -o:輸出檔案。 -m:最小輸入/輸出的大小,也就是NAND Flash一個頁的大小。 -p:實體擦除塊大小,128KiB=131072。
    -O:VID檔頭位移位置。
    -s:使用最小輸入/輸出的大小,存放UBI檔頭。
    ubinize.cfg

    即可將rootfs資料夾壓縮成ubi.img,再透過NuWriter放到相對應NAND Flash的位址。
    輸入下列命令即可將UBIFS檔案系統掛在flash資料夾中:
    需要參考/sys/class/misc/ubi_ctrl/dev內容,假設內容為 10:56,則設定如下:

    UBIFS相關指令可以在mtd-utils套件中找到。UBIFS文件系統設置可以參考5.3.4章節。
    3.9 MTP 模式
    MTP模式可以將你選擇的鑰匙檔案燒入到NUC970系列晶片的 MTP中, 藉由此鑰匙來保護NUC970系列晶片使用到存儲體(eMMC, NAND, SPI FLASH)中的程式碼.
    3.9.1 新增key檔案
    1. 進入資料夾key_cfg如下圖.

    2. 建立文字檔和輸入密碼, 密碼格式如下, 第一行一定是 256. 之後連續 8 行大端模式密鑰.

    3. 重新開啟Nu-Writer工具, 並選擇 “MTP” 模式.
    4. 選擇剛剛建立的文字檔.
    5. 選擇燒入的方式
     開機模式選擇: eMMC, NAND, 或 SPIFLASH
     保護模式選擇: SHA 或 AES
     啟動模式選擇: Enable 或 Disable
     上鎖模式選擇: 如果此模式開啟時,則永久無法修改MTP相關的設定,使用此模式時請小心

    6. 按下 “Burn”. 即可完成燒錄動作.

  • 相关阅读:
    事件的解除与绑定
    JavaScript 继承
    left 和 margin-left
    表格 DOM 操作
    基于继承的拖拽
    碰撞运动
    弹性运动
    完美运动框架
    JS 操作 Cookie
    DIV拖拽
  • 原文地址:https://www.cnblogs.com/zhugeanran/p/8455945.html
Copyright © 2011-2022 走看看