首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

Keil MDK 配置自動生成 .iic 固件文件教程

     編輯:關於C語言

Keil MDK 配置自動生成 .iic 固件文件教程

FX2LP 固件開發中,Keil 編譯默認產生 .hex(燒錄 RAM),需借助 Hex2bix.exe 轉換為 .iic(燒錄 EEPROM,C2 啟動)。本文詳述 Keil 專案配置實現編譯後自動生成 .iic。

準備工作

  1. 定位 Hex2bix.exe:安裝目錄下 CY3684_EZ-USB_FX2LP_DVK\1.1\Bin\Hex2bix.exe。
  2. 複製其完整路徑,例如 C:\Cypress\Bin\Hex2bix.exe。

Keil 專案配置步驟

  1. 右鍵專案 → Options for Target 'Target 1' → Output 標籤。
  2. 勾選 Create HEX File(生成 .hex 是轉換前提)。
  3. 勾選 Run User Programs After Build/Rebuild → #1。
  4. 在 Command 欄填入完整轉換命令:
C:\Cypress\Bin\Hex2bix.exe -i -f 0xC2 -o bulkloop.iic bulkloop.hex
  • -i:輸出 Intel Hex 格式(.iic)。
  • -f 0xC2:指定 C2 啟動模式(從外部 EEPROM 啟動,讀取 VID/PID 等)。
  • -o bulkloop.iic:輸出文件名(可自定義,如 myfw.iic)。
  • bulkloop.hex:輸入文件(Keil 產生的 HEX)。
  1. 點擊 OK 保存。

驗證

按 F7 (Build) 或 Ctrl+F7 (Rebuild),輸出窗口顯示:

Run User Program #1: C:\Cypress\Bin\Hex2bix.exe -i -f 0xC2 -o bulkloop.iic bulkloop.hex
Output file: bulkloop.iic
Success!

專案目錄下出現 bulkloop.iic,大小通常比 .hex 小(僅含 EEPROM 需要的數據段)。

常見問題

現象原因解決
提示 "Hex2bix.exe not found"路徑錯誤或含空格未加引號用完整絕對路徑,路徑含空格用雙引號包裹
生成 .iic 但大小為 0未勾選 Create HEX File,無 .hex 輸入Output 標籤勾選 Create HEX File
燒錄後設備仍為 No EEPROM-f 參數錯誤(需 0xC2)、EEPROM 型號不匹配確認 -f 0xC2,檢查原理圖 EEPROM 型號 (24LC00/01/02)
想修改輸出 .iic 文件名直接改 -o 後參數如 -o my_firmware.iic,重新 Build 即可

原理補充

  • .hex 含完整代碼段、數據段、向量表等,用於 RAM 燒錄(斷電丟失)。
  • .iic 僅含 EEPROM 需要的啟動配置、描述符、代碼段壓縮數據,掉電保持。
  • Hex2bix 內部解析 .hex 記錄,按 FX2LP EEPROM 映射格式重組。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved