0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

FreeRTOS在英飞凌TriCore TC33x系列上的移植和使用

嵌入式程序员 来源:嵌入式程序猿 2023-10-30 09:59 次阅读

摘要

本篇文档主要用来介绍FreeRTOS英飞凌TriCore TC33x系列上的移植和使用

FreeRTOS介绍

FreeRTOS自从被AWS收购后,不断的发展壮大,使用的人群非常庞大,FreeRTOS 是市场领先的面向微控制器和小型微处理器的实时操作系统(RTOS),与世界领先的芯片公司合作开发, FreeRTOS 通过 MIT 开源许可免费分发,包括一个内核和一组不断丰富的 IoT 库,适用于所有行业领域。FreeRTOS 的构建突出可靠性和易用性。

TC3xx介绍

TC3xxx系列是英飞凌推出的基于Tricore架构的32微控制器,性能高超,广泛应用于汽车电子行业对安全要求比较高的部件,如转向,刹车,等高安全等级的地方。具体的性能参数可以参考官方的数据手册,这里不在赘述。

动手移植

移植前需要自己下载准备FreeRTOS软件源码包,这个是开源的,无论是在官网还是Githhub都可以下载到,除此之外还需要安装开发环境IDE,这里我们使用免费的AURIX Development Studio V1.9.

新建工程

ADS下新建一个工程

fc8f8012-7567-11ee-939d-92fbcf53809c.png

选择芯片

fca064d6-7567-11ee-939d-92fbcf53809c.png

fcaa9e7e-7567-11ee-939d-92fbcf53809c.png

添加文件夹

完后成在工作空间下建成一个基础工程,在工程目录架构下新建两个文件夹OS和AppSw,一个用来存放RTOS源码包,一个用来存放我们的应用,建好后,加载如工程,如下图所示

fcaeaf0a-7567-11ee-939d-92fbcf53809c.png

修改配置

首先修改FreeRTOSConfig.h文件对系统进行相关配置和裁剪,因为我们使用的芯片是300M,所以将CPU时钟频率修改为300000000Hz,心跳为1ms,设置堆栈大小,根据实际调整,选用STM0作为系统的心跳定时器,也可以选用其他定时器。

fcb27b80-7567-11ee-939d-92fbcf53809c.png

fcb639fa-7567-11ee-939d-92fbcf53809c.png

修改移植

对port文件夹下的移植文件进行修改,这里如果是参考官方的文档,修改很少,推荐大家使用,文末我会放上移植好的工程供大家参考。

fccdf892-7567-11ee-939d-92fbcf53809c.png

fce7d0b4-7567-11ee-939d-92fbcf53809c.png

建立应用

修改OsTasks.c文件

fcfe5ab4-7567-11ee-939d-92fbcf53809c.png

创建任务

fd02d422-7567-11ee-939d-92fbcf53809c.png

完成任务实现函数,就可以调用使用了,这里我们建立了两个任务,任务1是每200ms闪烁LED1,任务2是每500ms闪烁LED2.

fd0c1000-7567-11ee-939d-92fbcf53809c.png

验证

对任务进行初始化,并开启调度器,如果编译没有错误就可以将代码下载到板子上进行验证,文中工程使用的硬件是AURIX TCxx4 lite Kit V1版本的硬件。可以看到两个LED按照设计的预期执行闪烁,证明正常运行,后期可基于这个工程添加更多功能。

fd17451a-7567-11ee-939d-92fbcf53809c.png

总结

之前很早给大家介绍过在ARM平台下移植freeRTOS, 今天这个移植是基于Tricore平台架构,可以看到只要掌握移植的关键步骤,再加上参考一些资料,还是很容易移植成功,随文附录工程,供大家参考

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 微控制器
    +关注

    关注

    48

    文章

    7487

    浏览量

    151033
  • 英飞凌
    +关注

    关注

    66

    文章

    2150

    浏览量

    138402
  • 移植
    +关注

    关注

    1

    文章

    377

    浏览量

    28108
  • FreeRTOS
    +关注

    关注

    12

    文章

    483

    浏览量

    61997
  • TriCore
    +关注

    关注

    0

    文章

    15

    浏览量

    11737

原文标题:TC3xx介绍

文章出处:【微信号:InterruptISR,微信公众号:嵌入式程序员】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    英飞凌AURIX TC297微控制器简介

    AURIX™是英飞凌全新的微控制器系列。其创新的多核架构基于多达三个独立的32位TriCore CPU,旨在满足最高安全标准,同时显著提高性能。TC29xTX
    发表于 09-19 10:03 1254次阅读
    <b class='flag-5'>英飞凌</b>AURIX <b class='flag-5'>TC</b>297微控制器简介

    英飞凌TC3xx系列安全管理单元的使用

    本篇文档主要用来介绍英飞凌基于AURIX-2G TriCore 1.6.2架构的 TC3xx系列安全管理单元的使用。
    的头像 发表于 12-07 09:29 1988次阅读
    <b class='flag-5'>英飞凌</b><b class='flag-5'>TC</b>3xx<b class='flag-5'>系列</b>安全管理单元的使用

    TC33X将dCache映射到RAM会导致存储总线错误是为什么?如何解决?

    我尝试通过以下(简化的)顺序使用 TC33X 将数据缓存映射到 RAM 区域: CPU_DCON0 = 2 MTU_CLC = 0 MTU_MEMMAP |= 1 软件闪烁且调试器保持连接
    发表于 01-25 06:23

    Tricore TC37xTC36x是否只有Tricore MCU启动时连接了调试器,看门狗定时器才会停止?

    我使用的是 Tricore TC37xTC36x。 据我所知,当连接 OCDS 调试器时,Tricore 会暂停其看门狗定时器。 我想知道的是,
    发表于 05-21 07:29

    使用AURIX studio开发带有FreeRTOS的MCU TC387-QP TriCore,如何实现GPIO ISR功能?

    我正在使用 AURIX studio 开发带有 FreeRTOS 的 MCU TC387-QP TriCore。 谁能指导我们如何实现 GPIO ISR 功能?
    发表于 05-28 06:19

    求uCOS操作系统PIC系列上移植所有文件

    如题:求uCOS操作系统PIC系列上移植所有文件,感谢各位大神回复,小弟刚接触操作系统,求uCOS操作系统PIC系列上
    发表于 06-26 10:53

    如何在V850E2系列移植FreeRTOS

    各位大神,初接触FreeRTOS不久,因为想在V850系列移植,看到FreeRTOS有V850的例程,但是后来仔细查阅后发现例程是V850ES系列
    发表于 06-11 04:35

    如何在Tricore移植μC/OS-III

    本文是《Tricore移植μC/OS-III》系列文章的第一篇,先简单介绍下整个项目。Tricore
    发表于 01-27 08:17

    英飞凌aurix tc27x系列介绍

      全新AURIXTC27x系列英飞凌下一代MCU系列产品的平台,可满足最新的汽车动力总成和安全应用要求。最多可由三个TriCore构成,
    发表于 09-12 18:55 109次下载

    英飞凌TriCore TC1728用户手册详细资料免费下载

    本文档的主要内容详细介绍的是英飞凌TriCore TC1728用户手册详细资料免费下载。
    发表于 11-23 16:49 124次下载
    <b class='flag-5'>英飞凌</b><b class='flag-5'>TriCore</b> <b class='flag-5'>TC</b>1728用户手册详细资料免费下载

    英飞凌Tricore系列单片机开发工具HighTec免费申请方法

    英飞凌Tricore系列单片机开发工具HighTec免费申请方法
    发表于 11-13 15:51 20次下载
    <b class='flag-5'>英飞凌</b><b class='flag-5'>Tricore</b><b class='flag-5'>系列</b>单片机开发工具HighTec免费申请方法

    英飞凌infineon-XMC4500,移植FreeRTOS

    英飞凌infineon-XMC4500,移植FreeRTOS
    发表于 12-03 16:06 14次下载
    <b class='flag-5'>英飞凌</b>infineon-XMC4500,<b class='flag-5'>移植</b><b class='flag-5'>FreeRTOS</b>

    Tricore移植μC/OS-III——0.1总述

    本文是《Tricore移植μC/OS-III》系列文章的第一篇,先简单介绍下整个项目。Tricore
    发表于 12-03 16:21 4次下载
    <b class='flag-5'>在</b><b class='flag-5'>Tricore</b>上<b class='flag-5'>移植</b>μC/OS-III——0.1总述

    Tricore移植μC/OS-III——1.1 AURIX Development Studio的使用

    了iLLD库,内置Tasking compiler和Tasking Debugger,但这两个模块只能用于非商业用途,可供学习和试用。iLLD库是英飞凌TC2XX和TC3XX Tricore
    发表于 12-03 16:36 19次下载
    <b class='flag-5'>在</b><b class='flag-5'>Tricore</b>上<b class='flag-5'>移植</b>μC/OS-III——1.1 AURIX Development Studio的使用

    英飞凌AURIX TC4x微控制器系列中的并行处理单元(PPU)简介

    并行处理单元(PPU)是集成英飞凌AURIX™ TC4x微控制器系列中的协处理器。
    的头像 发表于 05-17 10:52 881次阅读
    <b class='flag-5'>英飞凌</b>AURIX <b class='flag-5'>TC4x</b>微控制器<b class='flag-5'>系列</b>中的并行处理单元(PPU)简介