查看: 1735|回复: 0

[经验] AURIX三核控制器使用总结

[复制链接]

该用户从未签到

发表于 2021-1-19 19:14:30 | 显示全部楼层 |阅读模式
分享到:
aurix作为infineon全新系列的32位单片机,采用tricore架构,相对价格低廉,打算广泛应用在汽车、工业等领域。目前infineon也在从audo系列逐渐往aurix系列进行转变。
9443f96eb4a0b0985a96e879ef15dc3a.jpg

  infineon支持的编译环境包括Tasking、HiTec和windriver的开发环境。都是基于eclipse开发的。这里主要讲下Tasking和HiTec两个,windriver 的diabc还没用过。
    其中Tasking是支持infineon最早的编译器,一直是altium支持infineon的开发环境,内部文档很详细。相对于嵌入式单片机调试和编写,整个环境相对比较人性化,但是当前只有4.0以上的版本支持aurix,但4.0以上版本不支持试用版,试用版本只有3.5的最高版本,不支持aurix。就算试用也只有15天。一个license好贵.而HiTec是bosch公司近几年主推的,因为是基于GNU的,有广泛的开源支持,而且目前HiTec支持试用版,评估试用版本只需要简单网上激活就行,试用期有1年,而且评估试用版还带试用的UDE(aurix的调试烧写工具)。但是HiTec保留的比较原生的eclipse,所以没有Tasking那样使用便捷,文档也相对较少。
两者的使用基本没太多区别,主要是在一些语句的使用上稍有差异,infineon本来的选用这么多编译器时就考虑了相互移植的问题,所以移植过去还比较方面,我在从tasking的工程代码移植到HiTachi时发现需要注意几点:
1、启动部分:Tasking和Hitec新建工程都为你写好了启动部分代码,其中Tasking在cstart.c当中,其中还包括中断向量表的配置,所以后来你会发现Tasking写中断服务函数相对比较容易,而HiTec需要在初始化的时候将isr函数地址指向对应中断向量表。而HiTec的实际startup部分就相对隐蔽了,在toolchain的gcc库中,crt0.s文件,用汇编实现的。 当然它自带的startup代码实际上是可以被替代的,infineon为了统一编译的代码,在提供的demo代码中有写通用的ifx_cstart0.c代码,通过对应link文件(这里都是.lsl文件)有指定。
2、编译器都默认生成elf文件,如果需要生成hex烧写文件,Tasking直接勾选即可,而HiTec需要在postcompile中加入tricore-objcopy进行文件转换,所有的需要注意查看两者userguide查看指令如何使用。
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /4 下一条



手机版|小黑屋|与非网

GMT+8, 2024-11-23 22:35 , Processed in 0.134051 second(s), 16 queries , MemCache On.

ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

苏公网安备 32059002001037号

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.