您好,歡迎進(jìn)入深圳市穎特新科技有限公司官方網(wǎng)站!
3.1 簡介
Nu-Writer 工具能幫助使用者透過 USB ISP模式, 將Image檔案放入儲存體中, 例如:SPI Flash設(shè)備或 NAND Flash設(shè)備.
3.2 驅(qū)動程式安裝
Nu-Writer 必須在電腦中安裝VCOM驅(qū)動程式才能使用Nu-Writer工具. 請依據(jù)下列步驟來安裝VCOM驅(qū)動程式:
1. 將電腦與NUC970系列晶片開發(fā)板透過USB cable連接起來後.在電腦中執(zhí)行WinUSB4NuVCOM.exe 開始安裝驅(qū)動程式. (在Linux BSP的Tools目錄中)
2. 開啟NUC970系列晶片開發(fā)板的電源之後, Windows 會發(fā)現(xiàn)新的設(shè)備, 然後會要求你安裝驅(qū)動程式。
3. 按下 “Next”. 這個畫面告訴你即將要安裝WinUSB4NuVCOM 1.0 驅(qū)動程式. 如下圖:
4. 選擇使用者想要安裝的路徑或使用預(yù)設(shè)的路徑, 確定以後按下“Next”. 如下圖:
5. 按下 “Next”. 如下圖:
6. 按下 “Install”. 如下圖:
7. 按下 “Finish”, 完成VCOM驅(qū)動程式的安裝. 如下圖:
8. 如果VCOM驅(qū)動程式是安裝成功, 可以在”Device Manager”中看到“WinUSB driver (Nuvoton VCOM)”. 如下圖:
3.3 USB ISP 模式設(shè)置
NUC970系列晶片提供jumpers 去選擇開機(jī)的方法. 選擇USB ISP 模式, 則 PA0和PA1 必須設(shè)定為低電平 . 其他開機(jī)設(shè)定可以參考下表:
開啟NUC970系列晶片開發(fā)板的電源並且設(shè)定為USB ISP模式和開啟電腦上的Nu-Writer 工具, 即可開始使用.
注意:如果電腦沒有找到VCOM驅(qū)動程式則Nu-Writer工具無法使用.
3.4 芯片設(shè)置
解開NuWriter-xxxxxxxx.7z(在BSP/Tools目錄下)壓縮包, 執(zhí)行 “nuwriter.exe”, 第一個畫面如下.
選擇目前晶片, 目前支援NUC970系列 (NUC972, NUC976… 等)芯片. 如果選擇NUC970系列芯片, 則必須選擇DDR參數(shù), DDR參數(shù)依據(jù)NUC970系列芯片的PID來選擇. 選擇完成後按下 “Continue”, 即可開始使用Nu-Writer工具.
DDR/SRAM 模式
DDR/SRAM模式可以將Image檔案直接下載到DDR 或 SRAM 記憶體中. 操作步驟如下:
1. 選擇 “DDR/SRAM”模式.
2. 選擇Image檔案.
3. 輸入Image檔案放在DDR/SRAM的位址. 注意:若要傳輸?shù)?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的位址. 注意:若要傳輸?shù)?DDR 中, 位址必須介於0x00~0x1F00000(31MB).
7. 選擇”Download only”或是選擇”Download and run”
8. 按下 “Download.
eMMC 模式
eMMC 模式 可以將Image檔案燒入到eMMC中,並且將Image檔案型態(tài)設(shè)定為Data、Environment、uBoot 、 Pack,四種型態(tài)中的其中一種 。
新增Image檔案
1. 選擇 “eMMC” 模式, 表格只會紀(jì)錄當(dāng)次燒錄的Image檔案,並不會讀取eMMC Flash中Image的資料。
2. 輸入 image檔案資料:
? Image Name
? Image Type
? Image encrypt
? Image execute address
? Image start offset
3. 按下 “Burn”。
4. 等待進(jìn)度表完成後,表格將會顯示這次燒錄完成的Image檔案。在完成以後,如果按下“Verify”即可確認(rèn)燒入資料是否正確。
讀取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)。注意:修改此參數(shù)可能造成Image或FAT32格式損毀。
4. 按下 “OK”。即可完成。
SPI 模式
SPI 模式 可以將Image檔案燒入到SPI Flash中, 並且將Image檔案型態(tài)設(shè)定為Data、Environment、uBoot 、 Pack, 四種型態(tài)中的其中一種 。
3.7.1 新增Image
依照下列步驟即可以完成新增Image檔案:
1. 選擇 “SPI” 模式, 表格只會紀(jì)錄當(dāng)次燒錄的Image檔案,並不會讀取SPI Flash中Image的資料。
2. 輸入 image檔案資料:
? Image Name 選擇要燒錄的 loader 檔案
? Image Type 選擇燒錄 Image的型態(tài)
? Image encrypt 設(shè)置是否需AES加密, 若是, 設(shè)置秘鑰文件
? Image execute address 設(shè)置 loader 執(zhí)行位置, 依編譯設(shè)定而輸入.
? Image start offset 燒錄起始塊位置
3. 按下 “Burn”.
4. 等待進(jìn)度表完成. 在完成以後如果按下“Verify”即可確認(rèn)燒入資料是否正確.
3.7.2 讀取Image
依照下列步驟即可以完成讀取Image:
1. 選擇 “SPI” 模式。
2. 按下 “Read”。
3. 選擇要儲存檔案的位置。
4. 輸入讀回來的blocks,Block 大小是依據(jù)SPI FLASH規(guī)格所決定。
? Start : Block 起始位置
? Length : Block 長度
5. 按下 “OK”, 即可完成Image讀取。
3.7.3 移除 Image
依照下列步驟即可以完成移除Image檔案:
1. 選擇 “SPI” 模式。
2. 按下 “Erase all”,即可完成移除Image。
NAND 模式
NAND模式 可以將Image檔案燒入到NAND Flash中, 並且將Image檔案型態(tài)設(shè)定為Data、Environment、uBoot 、 FS、Pack, 五種型態(tài)中的其中一種 . FS型態(tài)目前支援YAFFS2與UBIFS兩種檔案系統(tǒng)格式。這兩種格式都可以選擇FS型態(tài),將做好的Image存放到NAND Flash對應(yīng)的位址。讓使用者可以透過uBoot或Linux來讀取檔案系統(tǒng)。YAFFS2與UBIFS的Image檔的製作可以參考3.8.4章節(jié)
3.8.1 新增Image
依照下列步驟即可以完成新增Image檔案:
1. 選擇 “NAND” 模式, 表格只會紀(jì)錄當(dāng)次燒錄的Image檔案,並不會讀取NAND Flash中Image的資料.
2. 按下 “Add new”. (當(dāng)選擇NAND模式時, 預(yù)設(shè)為“Add new”頁面)
3. 輸入 image檔案資料:
? Image Name 選擇要燒錄的 loader 檔案
? Image Type 選擇燒錄 Image的型態(tài)
? Image encrypt 設(shè)置是否需AES加密, 若是, 設(shè)置秘鑰文件
? Image execute address 設(shè)置 loader 執(zhí)行位置, 依編譯設(shè)定輸入.
? Image start offset 燒錄起始塊位置
4. 按下 “Burn”.
5. 等待進(jìn)度表完成. 在完成以後如果按下“Verify”即可確認(rèn)燒入資料是否正確
讀取Image
依照下列步驟即可以完成讀取Image:
1. 選擇 “NAND” 模式。
2. 按下 “Read”。
3. 選擇要儲存檔案的位置。
4. 輸入讀回來的blocks,Block 大小是依據(jù)NAND FLASH規(guī)格所決定。
? 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區(qū)塊中)和UBIFS,這兩種File System都可以使用DATA型態(tài)燒入到 NAND flash中,依據(jù)下列步驟即可完成製作File System Image。
1. YAFFS2製作In-band tags Image命令如下:(yaffs2的tag儲存在DATA區(qū)塊中)
--inband-tags:yaffs2的tag儲存在DATA區(qū)塊。
-p:設(shè)定NAND Flash頁的大小(Page Size)。
即可將rootfs資料夾壓縮成rootfs_yaffs2.img,再透過NuWriter放到相對應(yīng)NAND Flash的位址。輸入下列命令即可將YAFFS2 inband-tags 檔案系統(tǒng)掛在flash資料夾中:
YAFFS2的指令可以在yaffs2utils套件中找到。YAFFS2文件系統(tǒng)設(shè)置可以參考5.3.4章節(jié)。
UBIFS製作Image命令如下:
mkfs.ubifs 使用的參數(shù)說明如下: -F :設(shè)定檔案系統(tǒng)未使用的空間優(yōu)先mount. -x: 壓縮的格式,"lzo", "favor_lzo", "zlib" 或 "none" (預(yù)設(shè):"lzo") -m:最小的I/O操作的大小,也就是NAND Flash一個頁的大小。 -e:邏輯擦除塊的大小(logical erase block size)。因?yàn)閷?shí)體擦除塊(PEB)為128KiB,所以邏輯擦除塊設(shè)定為124KiB=126976。 -c:最大的擦除塊的號碼(maximum logical erase block count)。
-o:輸出檔案。
ubinize使用的參數(shù)說明名如下:
-o:輸出檔案。 -m:最小輸入/輸出的大小,也就是NAND Flash一個頁的大小。 -p:實(shí)體擦除塊大小,128KiB=131072。
-O:VID檔頭位移位置。
-s:使用最小輸入/輸出的大小,存放UBI檔頭。
ubinize.cfg
即可將rootfs資料夾壓縮成ubi.img,再透過NuWriter放到相對應(yīng)NAND Flash的位址。
輸入下列命令即可將UBIFS檔案系統(tǒng)掛在flash資料夾中:
需要參考/sys/class/misc/ubi_ctrl/dev內(nèi)容,假設(shè)內(nèi)容為 10:56,則設(shè)定如下:
UBIFS相關(guān)指令可以在mtd-utils套件中找到。UBIFS文件系統(tǒng)設(shè)置可以參考5.3.4章節(jié)。
3.9 MTP 模式
MTP模式可以將你選擇的鑰匙檔案燒入到NUC970系列晶片的 MTP中, 藉由此鑰匙來保護(hù)NUC970系列晶片使用到存儲體(eMMC, NAND, SPI FLASH)中的程式碼.
3.9.1 新增key檔案
1. 進(jìn)入資料夾key_cfg如下圖.
2. 建立文字檔和輸入密碼, 密碼格式如下, 第一行一定是 256. 之後連續(xù) 8 行大端模式密鑰.
3. 重新開啟Nu-Writer工具, 並選擇 “MTP” 模式.
4. 選擇剛剛建立的文字檔.
5. 選擇燒入的方式
? 開機(jī)模式選擇: eMMC, NAND, 或 SPIFLASH
? 保護(hù)模式選擇: SHA 或 AES
? 啟動模式選擇: Enable 或 Disable
? 上鎖模式選擇: 如果此模式開啟時,則永久無法修改MTP相關(guān)的設(shè)定,使用此模式時請小心
?
6. 按下 “Burn”. 即可完成燒錄動作.
下一篇:Linux文件與目錄管理
掃碼關(guān)注我們
傳真:0755-82591176
郵箱:vicky@yingtexin.net
地址:深圳市龍華區(qū)民治街道民治大道973萬眾潤豐創(chuàng)業(yè)園A棟2樓A08