NuWriter是一款专业的nuc970烧录工具,通过软件和USB的链接,就可进行芯片的烧录了,各种参数可自定义,具有烧录速度快,操作简单的特点,小编还为大家提供了详细的NuWriter使用教程,需要的朋友赶快下载吧!

安装说明
NuWriter 必须在电脑中安装VCOM驱动程序才能使用NuWriter工具。请依据下列步骤来安装WinUSB4NuVCOM驱动程序:
将电脑与NUC970系列芯片透过USB cable连接起来后。 在电脑中执行WinUSB4NuVCOM.exe开始安装驱动程序。开启NUC970系列芯片的电源之后,Windows会发现新的设备,然后会要求你安装驱动程序。
NuWriter安装教程
驱动程式安装
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”. 即可完成烧录动作.
