Skip to Content
進階功能自己新增 IC 密碼

自己新增 IC 密碼(password.user.txt)

password <ic> 和視窗版的 Enable PASSWORD... 會照一份清單,對 IC 送出一串寫入來解開受保護的 暫存器。程式內附的清單只有幾顆 IC;你手上的 IC 不在清單裡,可以自己加——在程式旁邊 放一個 password.user.txt 就好。

放在哪裡

放在 nexus_tui.exe/nexus_gui.exe 旁邊(和 config.ini 同一層),檔名必須是 password.user.txt。

這個檔是你的,程式更新和 password update 永遠不會改它或刪它。

最小範例

# My test board [MyIC] w FF 55 98 w FF AA 98 pccmd w 20 01 98
  • [MyIC] 開一段,段名就是 password <ic> 要打的名字(不分大小寫)。
  • 每一行 w <位移> <值> <addr8> 是一次寫入,三個欄位都是不帶 0x 的十六進位(0~FF)。 寫入會照檔案裡的順序送出。
  • 行首可以加 pccmd,寫不寫都一樣(方便直接照 datasheet 抄)。
  • # 開頭的整行是註解。

存好之後執行:

password reload password list

password reload 回 password: 3 IC(s) (serial 2) 這類摘要;password list 裡會多出 MyIC 3 writes [user],接著就能 password MyIC。

和內附清單的關係

你的檔案是疊加在內附清單上面的:

  • 段名和內附清單一樣的,以你的為準——可以用來改寫內附的序列,例如自己寫一段 [IT6622]。
  • 段名是新的,就加到清單後面。
  • 你的檔沒寫到的 IC,照用內附的。

被你的檔案改寫或新增的 IC,在 password list 裡會標 [user];從 password update 下載的版本標 [web];內附的沒有標籤。

改完一定要 password reload

程式只在第一次用到密碼功能時讀檔。之後你改了檔案:

  • 開 Enable PASSWORD... 的視窗不會重讀。
  • 執行 password <ic> 也不會重讀。

只有 password reload 會。這是刻意的:改到一半的檔案不該讓原本能用的 IC 跟著不能用。

寫錯了會怎樣

只要有一行不對,整個 password.user.txt 都不採用,內附清單照常可用;Log 會出現一行 WARN,指出是第幾行、為什麼:

password: password.user.txt line 2: addr8 0x99 is odd (8-bit write address must be even)

常見的錯:

寫法Log 的訊息怎麼改
檔案裡有 serial 5'serial' is not allowed in this file刪掉。serial 只屬於內附與下載的清單,你的檔不需要
w FF 55 99addr8 0x99 is odd (8-bit write address must be even)addr8 是 8-bit 寫入位址,最後一位元是讀寫位,一定是偶數。照 datasheet 抄 8-bit 位址,不要自己右移成 7-bit
w FF 55 98 # firstunknown line不支援行尾註解,註解要獨立一行
ww FF 55 98unknown line打錯字不會被略過,會整檔拒絕,避免序列少一筆卻看不出來
w FF 55 0x98unknown line數值不要加 0x
中文註解non-ASCII byte in file整個檔案只能有英數字與符號,註解也一樣
[MyIC] 底下沒有任何 wsection 'MyIC' has no writes每段 1~32 筆寫入
[list]reserved section namelist、reload、update 是指令用字,不能當段名

其他規則:

  • 段名只能用英數字開頭,後面可接英數字、_、.、-,最長 31 字元;同一個檔裡不能重複。
  • addr8 換成 7-bit 後必須在 0x08~0x77,也就是 addr8 在 10~EE 之間。
  • 每段最多 32 筆寫入。

成功不等於解鎖

password MyIC 回的 MyIC: 3/3 writes ACKed 只代表每一筆寫入都收到 ACK——IC 收到了, 不代表它真的解鎖了。要確認,讀一下受保護的暫存器看看。

失敗時會指出第幾筆、哪個位址沒回應,位址同時列出 8-bit 與 7-bit:

MyIC: write 1/3 failed (NACK @0x98(7b:0x4C) off 0xFF)

第一筆就 NACK,多半是 addr8 抄錯,或板子上根本沒有這顆 IC。