- 硬體平台:E3110官方開發板(SD107_E3_REF_176_DEMO_A01_SCH);
- 軟體環境:IAR Embedded Workbench for ARM 8.50.6;
- 軟體平台:E3 MCAL PTG3.0、E3 SSDK PTG3.0;
- 軟體工具:23.1201;
- MCAL 配置工具:tresos Studio 26.2。
圖1 E3110 官方開發板
二、晶片差異
E3110 與 E3106 晶片外設資源統計如下表,僅 Internal Memory 空間不同,其他資源及參數指標均無差異。
晶片引腳差異統計,E3110 包含 AP 域 、 SAFETY 域,E3106 僅包含 SAFRTY 域; SD107_E3_REF_176_DEMO_A01_SCH 開發板可以同時兼容 E3110、E3106兩款主晶片。
如下圖分別截取 E3110 TRM 及 E3106 TRM MomeryMap 章節,從表格中可以分析中外設寄存器地址不兼容。
綜上所述,由於 E3110、E3106 在 AP_IO、SAFETY_IO 引腳號做調整,外設寄存器地址不兼容,軟體更改涉及到,在MCAL 開發環境需要對 taishan 文件夾進行替換,參見下文三章節 2.1 小節,在 SSDK 開發環境需要變更晶片型號,參考三章節 1.2 小節。
三、軟體替換方案
1 E3 SSDK PTG3.0
1.1 SDConfigTool 引腳工程替換
使用 SDConfigTool 設置的引腳配置工程進行型號替換時,建議使用替換型號重建工程重配引腳(不可直接在 config.prj 文件右擊打開,修改工程晶片型號,否則重新加載工程提示校驗不通過)
1.2 晶片型號更改
方法一:直接修改 .custom_argvars 文件在 IAR 工程關閉的情況下,打開 .custom_argvars 文件中的 PART_ID 項直接進行修改,重新打開 IAR 工程進行編譯即可。
方式二:在 IDE 中修改 PART_ID
在 IAR 工程環境中,點擊 Tools -> Configue Custom Argument Variables ,選擇 Workspace 標籤下的 PART_ID 變量,點擊 Edit Variable 按鈕修改變量值,修改完成後,需要關閉工程然後重新打開。
操作完上述修改後,可通過 IAR 工程環境驗證修改結果,點擊 Project -> Option -> C/C++ Compiler -> Preprocessor -> device/$port$/include,是否已經更改為替換的晶片型號,具體操作如下圖。
2 E3 MCAL PTG3.0
2.1 SOC 內核更改
由於 E3110、E3106 寄存器地址不同,在替換晶片時,涉及到 taishan 文件夾源碼及頭文件替換,如下圖,當主晶片為 E3106 時,使用 taishan_l 文件夾,當主晶片為 E3110 時,使用 taishan 文件夾,文件夾路徑為Semidrive\E3\E3\-
-Semidrive_AutoSAR_MCAL_package_v3.0.0\MCAL_release\soc。
2.2 CAN 基地址更改
EB 軟體進行 CAN 模塊配置時,如果選用的主晶片為 E3110 使用如下圖左邊 E3110 CAN 模塊基地址,如果選用主晶片為 E3106,使用如下圖右邊 E3106 CAN 模塊基地址。
2.3 DIO EB 配置更改
四、參考文檔
《E3106_E3104_MCU_Technical_Reference_Manual_Rev00.05》
《E3110_MCU_TRM_Rev00.13》
《E3106_E3104_MCU_Datasheet_Rev00.17》
《E3110_MCU_Datasheet_Rev00.17》
《SemiDrive_E3_SSDK_User_Guide_Rev01.04》
《SemiDrive_E3_MCAL_User_Guide_Rev03.00》
《SDToolBox_User_Guide》
若文本統計參數與參考文檔有差異,請以參考文檔為準。
歡迎在博文下方留言評論,我們會及時回復您的問題。
如有更多需求,歡迎聯繫大聯大世平集團 ATU 部門:atu.sh@wpi-group.com 作者:Linna Wang / 王麗娜
更多資訊,請掃碼關注我們!
評論