基于AURIX iLLD包创建Hightec工程

本文以TC275为例

一.创建新工程
填写工程名字 tc275_demo ,然后点击NEXT;
在这里插入图片描述

二.在下拉菜单栏里面选择单片机类型由于当前创建的是 tc275_demo 所以选择 TC27x单片机类
型,点击 Create empty project ,然后点击 Finish;
在这里插入图片描述

删除h和ld,h和ld没用
在这里插入图片描述三. 导入illd包

① 删除h文件夹和ld文件夹

在这里插入图片描述
删除h文件夹和ld文件夹后
在这里插入图片描述
②在src下建立以下三个文件夹,同时在_MchHal中建一个Tricore文件。
在这里插入图片描述
③将iLLD中的文件移植到对应的目录下。(具体的移动就不多说了,根据上传的demo慢慢移植,注意其中有些文件并不在同一个目录下,需要自己多找找)这是iLLD中包含的所有文件(package),没有demo。

在这里插入图片描述
iLLD中的文件主要移植到4_MchHal中的Tricore文件中(Infra中有一个_Reg也要移动到这里)。其中在工程中应用到什么就移什么,比较常用的有(Asclin不是):
在这里插入图片描述

iLLD中的文件主要移植到1_SrvSw的文件主要来自Service如下(还有一个是在Infra中的Plateform)
在这里插入图片描述
其中0_AppSw中的文件主要来自于Demo。可以自己进行配置,也可以从别处copy。

四. 1_ToolEnv在iLLD没有,主要是用于编译工程中使用的配置。直接从其它例程中copy过来。
工程的最终结果如下所示:
在这里插入图片描述
打开工程,工程栏空白处右键点击选择Properties,点击Refresh
五.将iRAM改成iROM
在这里插入图片描述
右键点击工程选择Properties
在这里插入图片描述
按步骤添加头文件
在这里插入图片描述
选择iROM[Active],最后点击Apply and Close
在这里插入图片描述
更改后
在这里插入图片描述

六.配置编译链接

在这里插入图片描述

七.添加路径
右键点击工程选择Properties,然后按步骤添加路径
在这里插入图片描述建议添加所有头文件。注意包含关系。
在这里插入图片描述
下图根据我自己创建的工程项目所添加后的。(若编译错误,可能头文件未添加,或者包含关系错误,需要自己添加修改即可,如No such file or directory)
在这里插入图片描述
导入编译完成在这里插入图片描述

将持续更新,欢迎关注!

ILLD包和DEMO下载地址:https://download.youkuaiyun.com/download/qq_45528033/12410088

<think>好的,用户现在的问题是询问如何在HighTec IDE中将iLLD库添加到现有项目中。之前用户问过如何导入官方模板,现在这个问题属于后续的库集成,需要详细回答步骤。 首先,我需要回忆之前回答的内容,确保一致性。之前的指南提到了获取官方代码模板,可能iLLD库的添加也需要从官方资源获取。用户提到“参考站内引用”,但之前的引用是关于开发环境和模板的,可能需要补充iLLD相关的引用来源。 接下来,用户的需求是将iLLD库集成到现有工程iLLD库是英飞凌的低层驱动库,对硬件操作很重要。所以步骤应该括下载库文件、配置工程路径、含头文件和源文件、链接库等。 我需要考虑用户可能的操作步骤:从哪里下载iLLD库?是否需要通过HighTec管理器安装?或者需要手动下载并添加?记得用户之前可能已经安装了AURIX Development Studio,其中可能iLLD库,所以需要检查默认路径。如果用户没有安装,可能需要指导他们从GitHub或英飞凌官网下载。 另外,HighTec工程的结构需要了解,比如项目属性的设置,含路径的添加,源文件的链接方式。可能需要指导用户在IDE中右键项目属性,找到C/C++ Build的路径设置,添加头文件目录,以及链接器配置。 还要注意可能的常见问题,比如路径错误、版本不兼容、宏定义缺失等。例如,iLLD库可能需要特定的编译器选项或预处理器定义,用户如果没有设置可能会导致编译错误。 用户可能遇到的问题还有如何验证库是否正确添加,所以需要给出一个测试步骤,比如调用某个iLLD函数,编译并运行看是否成功。 此外,用户之前的问题涉及TC399芯片,所以需要确保iLLD库的版本与TC39x系列兼容,可能需要指定使用特定版本的iLLD库,或者检查库的文档。 需要分步骤详细说明,可能用代码块展示如何修改工程属性,添加含路径,或者示例代码片段来演示库函数的使用。同时,注意使用中文,保持步骤清晰,避免专业术语过于复杂,但必要的术语需要保留,如“含路径”、“链接器设置”等。 最后,生成的相关问题需要与当前主题相关,比如如何解决编译错误,如何配置多核工程的库,或者如何更新iLLD库版本。确保问题对用户有帮助,可能引导他们进一步学习。</think>### 分步指南:在HighTec工程中集成iLLD库 --- #### 一、获取iLLD库文件 1. **官方来源** - **AURIX Development Studio内置**:安装目录中默认iLLD,路径为: ```plaintext C:\HighTec\toolchains\tricore\vX.X.X\TC39X\iLLD ``` - **GitHub仓库**:从[Infineon/iLLD](https://github.com/Infineon/iLLD)下载最新版本(推荐`iLLD_1_0_1_XX_TC3XX`分支)[^1] 2. **验证兼容性** - 检查iLLD版本是否匹配HighTec编译器版本(例如:iLLD 1.0.1.XX需与HighTec v4.9+配合使用) --- #### 二、添加iLLD工程 1. **手动复制库文件** - 将iLLD文件夹(含`BaseSw`和`Configurations`)复制到工程根目录下 - 推荐结构: ```plaintext YourProject/ ├── src/ └── iLLD/ ├── BaseSw/ └── Configurations/ ``` 2. **IDE配置步骤** ```plaintext 1. 右键工程 > Properties > C/C++ Build > Settings 2. 选择 TriCore Compiler > Preprocessor - 添加头文件路径: ${ProjDirPath}/iLLD/BaseSw/iLLD/TC39B/Tricore 3. 选择 TriCore Linker > Libraries - 添加库搜索路径:${ProjDirPath}/iLLD/BaseSw/iLLD/TC39B/Tricore/Lib - 添加链接库:-lIlld_Tc39B ``` 3. **含必要源文件** - 在工程创建`iLLD_Source`文件夹,添加以下关键模块(右键工程 > New > Folder): ```plaintext iLLD/BaseSw/iLLD/TC39B/Tricore/Scu/Std iLLD/BaseSw/iLLD/TC39B/Tricore/Port/Std iLLD/BaseSw/iLLD/TC39B/Tricore/Stm/Std ``` --- #### 三、代码配置示例 ```c // main.c 中调用iLLD库 #include <IfxStm.h> // iLLD头文件 void initClock(void) { IfxStm_initCompareConfig(&stmConfig); // 使用iLLD函数配置系统时钟 IfxStm_initCompare(IfxStm_getAddress(IfxStm_ResourceId_0), &stmConfig); } ``` --- #### 四、编译验证 1. **预处理器宏定义** - 在工程属性中设置: ```plaintext Properties > C/C++ Build > Settings > TriCore Compiler > Preprocessor 添加宏定义:__DAS__、__TRICORE__、__TASKING__[^2] ``` 2. **常见错误处理** | 错误类型 | 解决方案 | |---------|----------| | "IfxPort.h not found" | 检查头文件路径是否含`/BaseSw/iLLD/TC39B/Tricore` | | "undefined symbol IfxStm_initCompare" | 确认链接库路径和`-lIlld_Tc39B`是否配置正确 | | 内存溢出 | 修改链接脚本(.lsl文件),增加堆栈空间 | --- #### 五、高级配置(多核工程) 1. **核间共享iLLD资源** - 在`Configurations/IfxLld_Cfg.h`中启用共享模式: ```c #define IFXLLD_SHARED_LIBRARIES 1 ``` 2. **资源分配** - 通过`IfxScuWdt_setSafetyEndinit()`函数管理跨核硬件访问权限 --- ### 相关问题 1. 如何验证iLLD库是否成功加载? 2. 使用iLLD时如何解决“TC39B_DFP版本不匹配”错误? 3. 在多核工程中如何避免iLLD资源冲突? [^1]: iLLD库为英飞凌官方提供的底层驱动库,支持TC3xx全系列芯片的外设操作,需与具体芯片型号严格匹配。 [^2]: `__DAS__`宏用于启用调试支持,`__TRICORE__`定义处理器架构,`__TASKING__`适配HighTec编译器特性。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值